Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно передать параметр функции в DLL-ке. [D6, Win2k]


Chak ©   (2001-12-19 10:07:00) 

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


Chak   (2001-12-19 14:57:00) [1]

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


Алексей Петров   (2001-12-19 13:34:00) [2]

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

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


Chak   (2001-12-19 13:06:00) [3]

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


Алексей Петров   (2001-12-19 10:44:00) [4]

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


Chak   (2001-12-19 10:39:00) [5]

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


DieHard   (2001-12-19 10:28:00) [6]

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


Chak   (2001-12-19 10:24:00) [7]

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


Алексей Петров   (2001-12-19 10:19:00) [8]

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


Наверх

Титульная страница Поиск, карта сайта Написать письмо