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)
autoit3转换php,AutoIt3调用动态链接库DLL相关推荐
- Unity调用动态链接库dll和so
[001]Unity调用动态链接库dll和so ApolloAR https://www.jianshu.com/p/f37bb72979a1 一.PC平台 (注:环境 VS2017+Unity20 ...
- VC++6.0如何创建与调用动态链接库(dll)
VC++支持的DLL: DLL的编制与具体的编程语言及编译器无关,动态链接库随处可见,VC++支持三种DLL:非MFC动态库.MFC规则DLL和MFC扩展DLL.DLL导出函数(或变量.类)可供应用程 ...
- Matlab调用动态链接库DLL文件
环境:vs2015.Matlab2020 VS2015中建立工程, 建立工程如下两图所示 在头文件和源文件中分别添加头文件和源文件(代码如下所示) 头文件matdll.h文件 #pragma once ...
- Qt生成调用动态链接库dll
把编译好的包含函数和变量的目标代码存储到文件中,在链接的时候让链接程序自动从文件中查找需要的代码.这个文件就是链接库,又可以分为静态链接库和动态链接库. 1. 静态链接库 链接程序从库中寻找需要的符号 ...
- Windows 下 JNI 调用动态链接库 dll
1. Java调用本地代码常见的两种方案 JNI JNI(Java Native Interface),有过不同语言间通信开发经历的一般都知道,它允许java和其他语言代码(尤其是C/C++)进行交互 ...
- 使用Matlab调用动态链接库dll
1.下载.安装和配置环境变量MinGW-w64 C/C++ 1.1 下载网址 http://tdm-gcc.tdragon.net/download 1.2 默认地址安装 1.3 配置环境变量 新建系 ...
- 【专题】C#调用动态链接库DLL
1.概述 动态链接库(Dynamic Linked Library):将写好的函数存在库中,以供其他程序开发调用,调用方式为"动态的". Windows为应用程序提供了丰富的函数 ...
- Python调用动态链接库DLL文件
目录 方法一.ctypes库方式 方法二.shell方式 方法一.ctypes库方式 使用ctypes库调用.这个方法网上一搜都是. import ctypes obj = ctypes.WinDLL ...
- autoit3转换php,AutoIt3 脚本函数用法中文说明
AutoIt3 脚本函数用法中文说明 系统环境变量类 EnvUpdate ( ) ;更新环境变量 EnvGet ( "变量名称" ) ;取环境变量 ClipGet ( ) ;取剪辑 ...
- 制作和unity调用动态链接库dll文件
首先用vc建立一个dll工程 然后在里面建立一个testunity.h文件.内容如下 1 extern "C" int _declspec(dllexport)testunity( ...
最新文章
- 【数学专题】矩阵乘法
- BZOJ 3576 江南乐
- ssh错误 server not ready for puppeth err=“ssh: handshake failed: ssh: unable to authenticate... 解决方法
- Linux hostname指令
- linux系统文件查找实验报告,Linux 文件查找与打包
- Synchronized总结
- 查询分析器下如何备份数据库
- 硬核干货来啦:Js数组去重,赶快收藏吧
- javascript模式 (3)——工厂模式和装饰模式
- 双活数据中心负载均衡理解
- jeecg-boot 官方文档v2.0快速开始之hello world 前端教程
- 动态修改 DHTML Gantt甘特图皮肤样式
- 女超人、女强人……究竟是谁在以“女”设限?
- 高德地图:点击获取火星坐标(经纬度)
- em算法 图像模糊检测_基于EM算法的眼底OCT图像反卷积去模糊技术
- A-286热加工/锻造
- 佛罗伦萨小镇与雅诗阁中国达成战略合作;日立电梯25年来为中国市场提供93万台电梯 | 美通企业日报...
- kali_linux 的简单美化,Kali_linux 的简单美化
- 用Excel玩转三维地球!
- 刚刚!建行数字人民币钱包正式上线
热门文章
- 长微博android,凑合着用吧:Android版长微博
- 720云VR全景支持入驻高德地图,打造新一代沉浸式文旅消费体验
- pg8168改mac命令_Realtek 8168网卡改MAC地址教程
- 白糖详细 制造工艺、等级划分、国家标准号和注意事项
- 佛说:前世的五百次回眸,才换来今生的一次擦肩而过
- 33暴力破解(MD5撞击)
- package.json scripts 脚本使用指南
- R语言使用pROC包的的plot.roc函数对单变量进行ROC分析并可视化ROC曲线、寻找最佳阈值(threshold、cutoff)、在可视化曲线中添加最佳阈值点
- Servlet生命周期详解
- win7桌面计算机图标去掉,win7桌面图标小箭头怎么去掉?