主页
Top.Mail.Ru Yandeks.Metrika
论坛:“主要”;
当前存档: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!!!
дописал и все заработало! Как эт я так даже не знаю, всеравно спасибо, два дня мучался :)))) Спасибо!



Страницы: 1 整个分支

论坛:“主要”;
当前存档:2002.01.08;
下载:[xml.tar.bz2];

楼上









内存:0.83 MB
时间:0.213 c
1-22186
ShnurO.K.
2001-12-15 23:05
2002.01.08
按Alt + Ctrl + Del时如何隐藏程序?


4-22477
艺术
2001-10-31 12:17
2002.01.08
如何查看运行所有程序的所有进程?


6-22284
谵妄
2001-10-08 16:29
2002.01.08
Как послать сообщение сразу на все IP-адреса


14-22393
菲利克斯
2001-11-08 21:54
2002.01.08
怎么办?


14-22366
Vlados
2001-11-05 10:41
2002.01.08
绘制





南非荷兰语 阿尔巴尼亚人 阿拉伯语 亚美尼亚 阿塞拜疆 巴斯克 白俄罗斯 保加利亚语 加泰罗尼亚 简体中文 中国(繁体) 克罗地亚 捷克 丹麦语 荷兰人 英语 爱沙尼亚语 菲律宾人 芬兰 法文
加利亚西语 格鲁吉亚语 德语 希腊语 海地克里奥尔语 希伯来语 印地语 匈牙利 北日耳曼语 印度尼西亚人 爱尔兰语 意大利语 日语 韩语 拉脱维亚 立陶宛 马其顿 马来语 马耳他语 挪威语
波斯语 波兰语 葡萄牙语 罗马尼亚 俄语 塞尔维亚 斯洛伐克 斯洛文尼亚 西班牙语 斯瓦希里 瑞典语 泰国人 土耳其 乌克兰 乌尔都语 越南人 威尔士语 意第绪语 孟加拉 波斯尼亚
宿务 世界语 古吉拉特语 豪萨语 苗族 伊博 爪哇 卡纳达语 高棉 老挝 拉丁语 毛利 马拉 蒙古人 尼泊尔 旁遮普 索马里 泰米尔人 泰卢固语 约鲁巴语
祖鲁
英文 Французский Немецкий Итальянский Португальский 俄文 Испанский