AUTOITがDLLを呼び出す

注意:

Autoitによって呼び出されるdllライブラリインターフェイスはCで記述する必要があります。つまり、呼び出される関数はCの構文と定義です。

主に使用する機能

DllCall ( "dll", "return type", "function" [, type1, param1 [, type n, param n]] )
DllStructCreate ( Struct [, Pointer] )//创建C/C++的数据结构变量,供DllCall使用
DllStructSetData ( Struct, Element, value [, index] )//设置变量数值
DllStructGetData ( Struct, Element [, index = Default] )//得到变量数值

実用化

呼び出されるdllのパスがd:/testdll/TestFuns.dllであり、呼び出される関数が次のように宣言されているとします。

float TestFun(char *sFileName, int *x, float *y, int z) //y为数组指针,大小为1024,作为输出参数,x和z是输入参数

1.変数を定義します

Local $sFileName = "d:/test.txt"
Local $tX =DllStructCreat("int")  
Local $tY =DllStructCreat("float[1024]")  
Local $iZ
Local $Dll = "d:/testdll/TestFuns.dll"
Local $fResult[1024]

2.電話する

DllCall($Dll, "float:cdecl", "TestFun", "struct*",  $tX, "struct*", $tY, "int", $iZ)

3.結果を得る

for $i = 1 To 1024
	$fResult[$i-1] = DllStructGetData($tY, 1, $i)
Next

終わり

おすすめ

転載: blog.csdn.net/coinv2014/article/details/107634632