Вниз
Скачать: CL | DM;

Как правильно передать параметр функции в DLL-ке.   Найти похожие ветки 

← →
Chak ©   (2001-12-19 10:07) [0]

Передаю одно значение а в функцию приходит совсем другое. Пользуюсь типом PChar. Если кто знает поясните мне, заранее спасибо!


← →
Алексей Петров ©   (2001-12-19 10:19) [1]

Проверь идентичность соглашений о вызовах


← →
Chak ©   (2001-12-19 10:24) [2]

как можна ее проверить, я новичок в Delphi, что именно проверить?


← →
DieHard ©   (2001-12-19 10:28) [3]

Посмотри в хелпе Calling conventions
Чаще всего при объявлении функции в DLL используется директива stdcall


← →
Chak ©   (2001-12-19 10:39) [4]

Так я ее и использую, в обратном направлении передача параметра идет без проблем, что передаю то и получаю, а вот наоборот ну никак!
Если передаю допустм циифру 8 как Integer то в DLL-ке получаю семизначное число, если как PChar - то в итоге получается чтото типа "$ус". Откуда - немогу понять!


← →
Алексей Петров ©   (2001-12-19 10:44) [5]

Тогда похоже, что в dll-ке не используют.
Посмотри, как описано в dll. если не можеш найти описание - попробуй stdcall убрать или заменить на cdecl.


← →
Chak ©   (2001-12-19 13:06) [6]

Нет DLL-ку сам писал, есть точно!


← →
Алексей Петров ©   (2001-12-19 13:34) [7]

Странно, если прототипы полностью совпадают...
Если только в опциях проекта проблема какая - хотя у дельфи соглашения о вызовах по умолчанию не настраиваются :(

Может прототип нарисуешь, что прояснится?


← →
Chak ©   (2001-12-19 14:57) [8]

=> Алексей Петров
Спасибо ВАМ!!! Хотел кусок кода выслать показать что все у меня в порядке, но копировал и смотрю нет stdcall!!!
дописал и все заработало! Как эт я так даже не знаю, всеравно спасибо, два дня мучался :)))) Спасибо!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
3-21933
pov
2001-11-26 12:19
2002.01.08
Подскажите самый простой способ регистрации BDE


1-22178
Анастасия
2001-12-15 21:38
2002.01.08
Нужна информация!


4-22481
Stropal
2001-11-03 10:44
2002.01.08
Работа принтеров напрямую. Посоветуйте


1-22222
Eugene Zelikovsky
2001-12-14 13:58
2002.01.08
CallBack


1-22205
Denis Proshkin
2001-12-15 12:46
2002.01.08
QReport - много данных




   Наверх