thackit 发表于 2008-11-16 18:44:28

DLLCALL如何调用DLL内的函数?(提供了C++里的调用方法)

test.DLL 内含的函数GetLicenseInfo,他的C++调用方式如下:bool GetLicenseInfo(
char* pName,   
char* pCompanyName,   
char* pCustomData
);
问题:
1.如何用DLLCALL调用这个DLL的 GetLicenseInfo 函数?
2.如何获得该函数的参数 pName、pCompanyName、pCustomData 的值?

用DLL关键词找了论坛,提到相关资料很少,只好再来问了。
我的初步代码如下,不过觉得好像有问题。

$dll = DllOpen("test.dll")
$result = DllCall($dll, "int", "GetLicenseInfo", "int", "pName", "int", "pCompanyName","int", "pCustomData")
DllClose($dll)
MsgBox (0, "", $result)


[ 本帖最后由 thackit 于 2008-11-21 19:17 编辑 ]

sanhen 发表于 2008-11-16 20:03:38

BOOL = "int"

thackit 发表于 2008-11-21 18:35:55

更新了顶楼的问题,请大家再帮忙。

thackit 发表于 2008-11-22 14:01:02

奋不顾身的一顶:face (36):

gamehero 发表于 2009-4-10 10:44:14

你在C++里写DLL时,必须指明哪几个函数将被外部调用,所有将被外部调用的函数,都必须写上关键字
DLL名_API


bool PrjName_API GetLicenseInfo(
char* pName,
char* pCompanyName,
char* pCustomData
);

78391493 发表于 2009-4-10 11:10:16

你在C++里给的是char型指针变量,到AU3里变int了,怎么可能正常……

78391493 发表于 2009-4-10 11:11:18

布尔值可以视为int

nxbigdaddy 发表于 2009-9-15 11:11:35

有高手把这个部分多讲讲吗!?

zhs800 发表于 2009-9-30 12:21:10

我也想听听
页: [1]
查看完整版本: DLLCALL如何调用DLL内的函数?(提供了C++里的调用方法)