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( ...
最新文章
- 太励志!80 后草根创业者自学编程年收入上亿
- No such file or directory: jupyter-1.0.0.dist-info\\METADATA
- C什么k什么_cssci跟c刊有什么区别
- 密码中不能包含全角字符的正则表达式
- 【洛谷P3389】【模板】高斯消元
- mysql导出表_mysql导出表的3种方式
- Python爬虫从入门到放弃(二十)之 Scrapy分布式原理
- 库克:苹果已完全使用可再生能源供电
- LeetCode(38)——报数(JavaScript)
- Atiti attilax主要成果与解决方案与案例rsm版
- okcc呼叫中心外呼系统使用教程
- Android 加载数据等待时 小人奔跑进度动画
- 电脑专业英语1695词
- ICPC2017网络赛(西安)B coin (概率计算)
- H5 Handlebars的简单使用
- ubuntu下制作.c模板
- 前端自动化部署,基于scp2,ssh2
- 有苦有乐的算法 --- 随机快排
- 灵魂三问:什么是接口测试,接口测试怎么玩,接口自动化测试怎么玩?
- 基于Java+MySQL的学生成绩管理系统
热门文章
- spark-streaming 编程(二) word count单词计数统计
- shiro加盐走源码
- 挺进商用车自动驾驶,德赛西威与MAXIEYE联合发布“九逵计划”
- 81章 老子1章到_《道德经》81章全文(建议收藏)
- (实战)决策树例子+画图
- cipher 加密解密
- 如何让计算机显示隐藏的文件夹,隐藏的文件夹如何显示 win7与xp系统显示隐藏文件夹的设置方法...
- 怎么把计算机隐藏文件显示出来,怎么把隐藏的文件夹显示出来
- 【我的新书】一步一步学SpringBoot 2:微服务项目实战
- 初始值设置项里有未知的字段ndo_change_mtu