| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Ошибка с импортом функции из DLL |
| Автор: InfMag 16.6.2006, 07:02 | ||||
Вот, пытаюсь научиться работать с DLL. Появилась проблемка. Вот код DLLки:
Вот код самого импорта DLL и использование этой функции:
Вот только когда вызываю: msg('Hello World!'); окошко мессагбокс вылетает, но выводит вместо "Hello World!" --> и0E вобщем какие-то три символа, причем не важно что писать вместо Hello World, они все равно вылетают, после нажатия кнопки OK появляется ошибка Access violation с определенным адресом. Не пойму в чем проблема |
| Автор: DragonFire 16.6.2006, 08:01 |
| У меня была такая проблема, попробуй сделать две вещи, одна из них должна помоч: 1) Самое главное, попробуй заменить тим String на ShortString или String[255] потому что в библиотеку нельзя напрямую передавать динамические массивы. А тим String, на сколько я знаю, таким и является) 2) Укажи полный пусть к библиотеке и проекте своем, вдруг поможет) |
| Автор: Romikgy 16.6.2006, 09:24 | ||
сделай так , и вооще не юзай в dll тип переменых string |
| Автор: skyboy 16.6.2006, 09:50 |
| InfMag, а где подключение модуля ShareMem в Uses - секции? |
| Автор: Демо 16.6.2006, 10:25 | ||
InfMag,
1. Найди одно отличие в описании функции. 2. Поищи по форуму по ключевым словам ShareMem, FastSHareMEm |
| Автор: InfMag 16.6.2006, 13:45 | ||||||
DLL
Вывоз
Не пашет, выдает это окно с глюком вместо текста и потом уже ошибка: "Priveleged instruction" Добавлено @ 13:51 Сорри
Надо было в DLL после функции stdcall дописать |