delphi动态库代码
function aaa(CardCode: PAnsiChar; var RtnStr: PAnsiChar):Integer;stdcall;
var
Rtn: AnsiString;
begin
ShowMessage(String(CardCode)); //正常显示
Rtn := '001|测试|1|200.03|0|';
ShowMessage(String(Rtn)); //正常显示 001|测试|1|200.03|0|
RtnStr := PAnsiChar(Rtn);
ShowMessage(PChar(RtnStr));//不能正常显示
result := 0;
end;pb9调用代码
string ls_ybkh, ls_trn,
int ils_ybkh = space(128)
ls_trn = space(256)ls_ybkh = "001"i = GetPersonInfo(ls_ybkh, ls_trn)MessageBox('a', ls_ybkh + '|' + ls_trn + '|' + string(i))在动态库里就不能显示要回传的字符串
在pb里也是乱码好久不用delphi了,不知道怎么弄好了,请各位帮忙,分不够,开贴另给!!!
function aaa(CardCode: PAnsiChar; var RtnStr: PAnsiChar):Integer;stdcall;
var
Rtn: AnsiString;
begin
ShowMessage(String(CardCode)); //正常显示
Rtn := '001|测试|1|200.03|0|';
ShowMessage(String(Rtn)); //正常显示 001|测试|1|200.03|0|
RtnStr := PAnsiChar(Rtn);
ShowMessage(PChar(RtnStr));//不能正常显示
result := 0;
end;pb9调用代码
string ls_ybkh, ls_trn,
int ils_ybkh = space(128)
ls_trn = space(256)ls_ybkh = "001"i = GetPersonInfo(ls_ybkh, ls_trn)MessageBox('a', ls_ybkh + '|' + ls_trn + '|' + string(i))在动态库里就不能显示要回传的字符串
在pb里也是乱码好久不用delphi了,不知道怎么弄好了,请各位帮忙,分不够,开贴另给!!!
解决方案 »
- 一篇博文,敬请关注一次,谢谢
- 关于TWebBrowser控件的刷新问题
- 散粉,快要 “龙过鸡年” 罗,龙年的朋友,进来拿粉啊!!! 好象快要30了,哈哈
- DBChart如何动态制作?
- 我已经将word转入memorystream,能否进一步将memorystream的内容展示在image上或者保存为bmp图片
- 谢谢卡子的大力帮助,给分喽!
- 走过路过不要错过,进来看看
- 在Delhi中怎样定义"位"的数据类型呢?(无内容)_
- socket通信
- 有了Handle,将要怎样?
- Delphi 如何从lookupcombobox取值后怎样赋值给SQL中的名称然后提取其值赋值给LABEL
- delphi 登录时权限设置
ShowMessage(PChar(RtnStr));//不能正常显示 你都知道不能正常显示了,就不知道:ShowMessage(PAnsiChar(RtnStr)); ???
另外,你的pb中GetPersonInfo(ls_ybkh, ls_trn)的函数原型声明是啥,和DLL中function aaa(CardCode: PAnsiChar; var RtnStr: PAnsiChar):Integer;stdcall;能不能对上,尤其是参数传递方式。