51Testing软件测试论坛
标题:
DLL文件中返回的string如何接收和处理?
[打印本页]
作者:
kursk
时间:
2008-6-24 16:26
标题:
DLL文件中返回的string如何接收和处理?
我试了一下,int类型可以在ansi C 的环境下使用,但是string 类型不行
比如在dll文件中
extern "C" __declspec(dllexport) LPSTR WINAPI ReturnString()
{
return "hello,world";
}
在ANSI C环境下,scripts如下:
int a;
int b;
char *str;
lr_load_dll("WINDllDemo.dll");
a=returnStr();
fscanf(a,"%s",&str);
检查语法可以通过,我用的该IDE是编译型,在执行 fscanf(a,"%s",&str);时失败
但是我想既然 a=returnStr();可以通过,说明返回的是一个数据,而不是一个字符,我本以为它是一个地址,这样我就可以操作了。
但是实际看看a得到的值是23418172,这个数怎么看都不像是一个地址。
那么DLL中的字符串类型如何返回ANSI C中的代码呢?有没有什么办法呢?
作者:
qiguojie
时间:
2008-6-27 11:13
顶一下。。没环境。。希望能弄清楚
作者:
zibeike
时间:
2008-6-27 11:35
涉及到string的用字符数组或者字符指针代替吧? 而且编写的dll最好是不用MFC等类库的,只用C语言的类库,不知道我说的对否?
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2