读书人

走一走看一看请高手帮忙小弟跪求

发布时间: 2012-01-09 21:05:41 作者: rapoo

走一走,看一看,请高手帮忙,小弟跪求c++调用delphi的dll中函数传递字串参数问题。
我要在c++中调用delphi编写的DLL中一个函数,而且要传递一字串参数,但不知为什么delphi中显示传过来的字串参数是乱码的,哪位高手遇到过,指点一下,多谢了。
c++代码如下:
typedef int (* pGetData)( char* P1) ;
pGetData GetData;
HINSTANCE hinst;
hinst=LoadLibrary(TEXT("DllTest.dll")); //加载该dll LPCTSTR strContent);
if(hinst==NULL)

{ MessageBox::Show("Can't load testll.dll");
return;
}
GetData=(pGetData)GetProcAddress(hinst,"TestDll"); //获取导出函数的地址

if(GetData==NULL)
{
MessageBox::Show("Can't get the address of the function");
return;
}
GetData("234"); //运行
FreeLibrary(hinst); //卸载


delphi代码如下:



function TestDll(P1:Pchar):integer; cdecl;

begin
ShowMessage(P1);
Result:=8888;
end;
exports TestDll;
begin
end.



[解决办法]
测试了,中文也没有乱码

[解决办法]
顶。我也没看出问题。

btw:柯南兄delphi也在行啊?
[解决办法]
看代码是没有问题的.
[解决办法]

探讨
to ZengHD 柯南
请问你在调用delphi的DLL吗?我是调用delphi的DLL会乱码,我的代码哪里有问题,请老大指点一下,多谢了。。

读书人网 >.NET

热点推荐