autoit3转换php,AutoIt3调用动态链接库DLL

调用:

DllCall("dll","返回值类型","函数名称"[,"类型1",参数1[,"类型n",参数n]])

参数:

dll -> 要使用的 DLL 文件名,例如 "user32.dll",也可使用由DllOpen获得的句柄。

返回值类型 -> 函数的返回值类型。

函数名称 -> 调用DLL文件里面的函数名称, 如: "MessageBox"或者使用序号。

类型 -> [可选参数]参数的数据类型。

参数 -> [可选参数]实参。

type n -> [可选参数] 参数的数据类型。

param n -> [可选参数] 实参。

值类型为:

none -> 没有值(仅用作无返回值函数的返回类型,这点跟C语言类似)。

BYTE -> 8 位(bit)整数。

BOOLEAN -> 无符号 8 位(bit)整数。

short -> 16 位整数。

USHORT -> 无符号16 位整数。

WORD -> 无符号16 位整数。

int -> 32 位整数。

long -> 32 位整数。

BOOL -> 32 位整数。

UINT -> 无符号 32 位整数。

ULONG -> 无符号 32 位整数。

DWORD -> 无符号 32 位整数。

INT64 -> 64 位整数。

UINT64 -> 无符号 64 位整数。

ptr -> 常规指针(void *)。

HWND -> 窗口句柄(指针)。

HANDLE -> 一个句柄(指针)。

float -> 单精度浮点指针数。

double -> 双精度浮点指针数。

INT_PTR, LONG_PTR, LRESULT, LPARAM -> 一个大型整数指针.(目前x86,x64版本AutoIt都可以使用)。

UINT_PTR, ULONG_PTR, DWORD_PTR, WPARAM -> 一个大型无符号整数指针.(目前x86,x64版本AutoIt都可以使用)。

str -> ANSI 字符串(不能超过 65536 个字符)。

wstr -> UNICODE 宽字符串(转换 到/从 ANSI 字符串,部分CALL需要). 不能超过 65536 字符。

* -> 传递一个其它类型(添加一个*到末尾.) 例如 "int*" 传递一个指针到 "int" 类型。

返回值:

成功 -> @error = 0

失败 -> 设置 @error

1 -> 不能使用这个DLL文件。

2 -> 未知"返回值"。

3 -> 未在DLL文件中找到这个"函数"。

4 -> 参数数量错误。

Windows API类型转换为AutoIt类型:

LPCSTR/LPSTR -> str

LPCWSTR/LPWSTR -> wstr

LPVOID -> ptr

LPxyz -> xyz*

HINSTANCE -> handle

HRESULT -> long

LONGLONG/LARGE_INTEGER -> INT64

ULONGLONG/ULARGE_INTEGER -> UINT64

SIZE_T -> ULONG_PTR

代码案例:DllCall("user32.dll", "int", "MessageBox", "hwnd", 0, "str", "这里是要描述的文字", "str", "这里是标题", "int", 0)

DllCall("user32.dll", "int", "MessageBox", "hwnd", 0, "str", "这里是要描述的文字", "str", "这里是标题", "int", 64)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值