无锡小周 发表于 2008-10-7 19:30:28

★[求助]qtp调用dll时返回值String类型问题

求助一个问题,请大家帮忙。

我在qtp里面调用一个自己用VC写的dll,dll的名字为Dll1.dll
dll中有两个函数:

int add1(int a,int b)
char *getsql(char *sql_str,char *path)

我在qtp里面写如下语句:

Extern.Declare micString,"getSql","C:\Dll1.dll","",micString,micString
Extern.Declare micInteger,"add1","C:\Dll1.dll","",micInteger,micInteger

return1=Extern.add(1,3)
return2 = Extern.getSql ("snap_tab_v==<db_tfundbook>==300627837==20071219","d:")

执行到return1的时候正确,值也正确。
但是执行到return2,就会报错:变量使用了一个VBScript中不支持的Automation类型:‘Extern.getSql’

getSql 的在C++中的函数原型是:
extern "C" DLL1_API char* getSql (char* send, char* receive)

好像是返回值类型不对,请问如果我要Dll中的函数返回一个string类型,该怎么写呢?

谢谢指教!

[ 本帖最后由 无锡小周 于 2008-10-7 19:32 编辑 ]
页: [1]
查看完整版本: ★[求助]qtp调用dll时返回值String类型问题