Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.08;
Скачать: 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 вся ветка

Текущий архив: 2002.01.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.031 c
1-22188
Art
2001-12-14 13:09
2002.01.08
Как считать большой файл???


1-22140
Serg5
2001-12-20 10:17
2002.01.08
Вопрос, есть ли возможность уменьшить шрифт до 4 пикселей, менятся он меняется(программа не ругается), а на экран (Canvas.Font) он всё равно выводится 8 (самым минимальным)


4-22506
gluka
2001-11-06 00:16
2002.01.08
Как запихнуть *.dll-ку в ехе файл?


14-22407
KL
2001-11-03 00:47
2002.01.08
Бета тестинг!!!


14-22337
Alexandr
2001-11-05 13:20
2002.01.08
Print Server DP-101(D-Link) и печать из-под DOS