易语言用WinIO模拟按键
系统结构:子程序1,置按键,等待空缓冲,取扫描码,InstallWinIoDriver,RemoveWinIoDriver,开启winio,关闭winio,读端口,写端口,开始内存映射,解除内存映射,读内存双字数据,写内存双字数据,键码转换,寻找顶级窗口,SetForegroundWindow,
======窗口程序集1
| |
| |------ __启动窗口_创建完毕
| |
| |------ __启动窗口_将被销毁
| |
| |------ 子程序1
| |
| |------ _按钮1_被单击
| |
| |------ _按钮2_被单击
| |
| |
======程序集1
| |
| |------ 置按键
| |
| |------ 等待空缓冲
| |
| |------ 取扫描码
| |
| |
======调用的Dll
| |
| |---[dll]------ InstallWinIoDriver
| |
| |---[dll]------ RemoveWinIoDriver
| |
| |---[dll]------ 开启winio
| |
| |---[dll]------ 关闭winio
| |
| |---[dll]------ 读端口
| |
| |---[dll]------ 写端口
| |
| |---[dll]------ 开始内存映射
| |
| |---[dll]------ 解除内存映射
| |
| |---[dll]------ 读内存双字数据
| |
| |---[dll]------ 写内存双字数据
| |
| |---[dll]------ 键码转换
| |
| |---[dll]------ 寻找顶级窗口
| |
| |---[dll]------ SetForegroundWindow
调用的DLL命令:
.DLL命令 InstallWinIoDriver, 逻辑型, "WinIo.dll", "InstallWinIoDriver", , 安装WinIo驱动(忽略)
.参数 DriverPath, 文本型
.参数 Mode, 短整数型
.DLL命令 RemoveWinIoDriver, 逻辑型, "WinIo.dll", "RemoveWinIoDriver", , 卸载WinIo驱动(忽略)
.DLL命令 开启winio, 逻辑型, "WinIo.dll", "InitializeWinIo", , 初始化WioIO库。调用成功,返回非零值
.DLL命令 关闭winio, 逻辑型, "WinIo.dll", "ShutdownWinIo", , 在内存中关闭清除WinIO库
.DLL命令 读端口, 逻辑型, "WinIo.dll", "GetPortVal", , 从一个输入或输出端口读取一个字节/字/双字数据。调用成功,返回非零值
.参数 PortAddr, 短整数型, , 输入输出端口地址
.参数 PortVal, 整数型, 传址, 指向双字变量的指针,接收从端口得到的数据。
.参数 bSize, 字节型, , 需要读的字节数,可以是1 (BYTE)、2 (WORD)、4 (DWORD)
.DLL命令 写端口, 逻辑型, "WinIo.dll", "SetPortVal", , 将一个字节/字/双字的数据写入输入或输出接口。调用成功,返回非零值
.参数 PortAddr, 短整数型, , 输入输出端口地址
.参数 PortVal, 整数型, , 要写入的数据
.参数 bSize, 字节型, , 需要写入的字节数,可以是1 (BYTE)、2 (WORD)、4 (DWORD)
.DLL命令 开始内存映射, 整数型, "WinIo.dll", "MapPhysToLin", , 将物理内存的一部分映射到一个32位程序的线性地址空间。成功返回一个与物理地址相关的线性地址,错误返回NULL
.参数 PhysAddr, 整数型, , 指向物理地址的指针
.参数 PhysSize, 整数型, , 需要映射的字节数
.参数 PhysMemHandle, 整数型, 传址, 变量指针,如果调用成功,负责接收物理内存句柄。(any)
.DLL命令 解除内存映射, 逻辑型, "WinIo.dll", "UnmapPhysicalMemory", , 解除使用MapPhysToLin映射的一段线性物理内存区域
.参数 PhysMemHandle, 整数型, , 物理内存句柄(any)
.参数 LinAddr, 整数型, , MapPhysToLin函数调用返回的线性地址
.DLL命令 读内存双字数据, 逻辑型, "WinIo.dll", "GetPhysLong", , 从指定的物理地址读取一个双字数据。调用成功,返回非零值。
.参数 PhysAddr, 整数型, , 指向物理地址的指针
.参数 PhysVal, 整数型, 传址, 指向一个双字变量的指针,接收从物理内存中传来的数据。
.DLL命令 写内存双字数据, 逻辑型, "WinIo.dll", "SetPhysLong", , 将一个双字型数据写入指定的物理地址。调用成功,返回非零值。
.参数 PhysAddr, 整数型, , 指向物理地址的指针
.参数 PhysVal, 整数型, , 指定待写入物理内存地址出的双字型数据。
.DLL命令 键码转换, 整数型, , "MapVirtualKeyA", , 返回转换后的代码
.参数 wCode, 整数型, , 代码值
.参数 wMapType, 整数型, , 0--虚拟键码->扫描码;1--扫描码->虚拟键码;2-虚拟键码->ASCII值(未加Shift组合键)。
.DLL命令 寻找顶级窗口, 整数型, "user32.dll", "FindWindowA", , FindWindow,寻找窗口列表中第一个符合指定条件的顶级窗口
.参数 窗口类名, 整数型, , lpClassName,参见相关帮助
.参数 窗口文本, 文本型, , lpWindowName,参见相关帮助
.DLL命令 SetForegroundWindow, 逻辑型
.参数 hwnd, 整数型, , 窗口句柄
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言两个文件内存中通讯源码,子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错...
易语言易模块管理器Include目录源码,CopyTo_CreateProcessDebugInfo,CopyTo_CreateThreadDebugInfo,CopyTo_ExitThreadDebugInfo,CopyTo_ExitProcessDebugInfo,CopyTo_LoadDllDebugInfo,CopyTo_UnloadDllDebugInfo,CopyTo_ExceptionDebugInfo,Copy...
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号...
初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...