首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > PB >

PB 调用Delphi 编写的DLL,传入结构体时,全是乱码,怎么解决

2012-04-04 
PB 调用Delphi 编写的DLL,传入结构体时,全是乱码,如何解决?问题描述如题,情景很简单,就是PB调用DLL(delphi

PB 调用Delphi 编写的DLL,传入结构体时,全是乱码,如何解决?
问题描述如题,情景很简单,就是PB调用DLL(delphi开发),传入结构体的话,就是乱码,但是Delphi做的Demo调用DLL就没有问题,我在网上查过,说是有可能在PB传入的结构体是局部变量,被回收了。我看了不是局部变量啊。小弟初遇难题,还请大虾们不吝赐教,^_^

[解决办法]
你用的PB几?PB10以上申明dll函数注意后面加上;ansi
[解决办法]
PB10以上的版本,声明API时如果有字符串的参数或者返回值时,需要在函数声明后加ansi

如:
FUNCTION long FindWindowA( ulong Winhandle, string wintitle ) Library "user32" alias for "FindWindowA;Ansi"

在pb10以前的版本,你可以这样声明

FUNCTION long FindWindowA( ulong Winhandle, string wintitle ) Library "user32" alias for "FindWindowA"

[解决办法]
动态库没问题的话就应该是字符集的问题了 代码贴来看看
[解决办法]
pb10 以上,字符集的问题,挺烦人的
[解决办法]
类似的问题,但是如果不加:Ansi还好,加上以后运行就报错,这个……什么意思嘛

热点排行