Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];




Вниз

Как правильно передать параметр функции в 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!!!
дописал и все заработало! Как эт я так даже не знаю, всеравно спасибо, два дня мучался :)))) Спасибо!




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.034 c
6-22267           wHammer               2001-09-28 15:00  2002.01.08  
Было-бы очень удобно...


14-22395          Alien                 2001-11-07 01:15  2002.01.08  
Чем бардак отличается от порядка?


1-22216           Ghost_Old.            2001-12-16 14:43  2002.01.08  
Помогите..кто знает как получить завтрашнюю дату..


14-22360          РУС                   2001-11-07 19:16  2002.01.08  
Internet Explorer


7-22438           Sasha                 2001-08-17 16:14  2002.01.08  
Голос по модему