💰 SetSimMode 设置键鼠模拟方式
🎯功能
设置前台键鼠的模拟方式, 解决部分移动点击无效的问题
win7/win8/win8.1/win10(10240)/win10(10586)/win10(14393)/win10(15063)/win10(16299)/win10(17134)/win10(17763)/win10(18362)/win10(18363)/win10(19041)/win10(19042)/win10(19043)/win10(19045)/win11(22000)/win11(22621)/win11(22631)
不支持所有的预览版本,仅仅支持正式版本.
除了模式3,其他模式同时支持32位系统和64位系统.
📜语法
结果 = dm.SetSimMode(模式)
📥参数
参数 | 数据类型 | 解释 |
---|---|---|
模式 | 整型数 | 设置不同的模拟方式, 取值0 到3 , 详见下表 |
模式
)取值如下模式 值 | 说明 |
---|---|
0 | 正常模式(默认模式) |
1 | 硬件模拟 |
2 | 硬件模拟2(ps2)(仅仅支持标准的3键鼠标,即左键,右键,中键,带滚轮的鼠标,2键和5键等扩展鼠标不支持) |
3 | 硬件模拟3 |
📤返回
整型数
, 1
为成功, 其他值为失败, 详见下面表格
返回值 | 说明 |
---|---|
0 | 插件没注册 |
-1 | 32位系统不支持 |
-2 | 驱动释放失败 |
-3 | 驱动加载失败.可能是权限不够. 参考UAC权限设置. 或者是被安全软件拦截. 如果是WIN10 1607之后的系统,出现这个错误,可参考这里 |
-10 | 设置失败 |
-7 | 系统版本不支持. 可以用winver命令查看系统内部版本号. 驱动只支持正式发布的版本,所有预览版本都不支持. |
1 | 成功 |
💡示例
dm.SetSimMode 1
// 一些其他代码
dm_ret = dm.BindWindow(hwnd,"normal","normal","normal",0)
// 一些其他代码
dm.UnBindWindow
📘备注
除了模式0,其他方式需要加载驱动,所以调用进程必须有管理员权限,参考如何关闭UAC.
加载驱动时,必须让安全软件放行. 否则模拟无效.
硬件模拟1,没有对键鼠的接口类型有任何限制(PS/2 USB接口)都可以模拟,甚至不插任何键鼠设备都可以模拟.
硬件模拟2(ps2),模式下的键盘基本是正常的,但鼠标兼容性很差,建议只适用此模式的键盘. 鼠标可以使用别的模式. 键盘和鼠标不要求必须插入真实的ps2设备.
硬件模拟3, 设置以后,必须手动按下需要模拟的键盘和鼠标,否则会卡住, 直到按下为止. 此后,再次设置不需要重新按下键盘鼠标,直到系统重启. 这个模拟要求被指定的键盘和鼠标不可以中途插拔,会造成模拟失效. 另外, 用模拟3后,最好不要调用MoveTo
或者MoveToE
接口,改为用MoveR
自己实现MoveTo
或者MoveToEx
,否则可能会造成鼠标移动到屏幕左上角的问题.
此接口仅对本对象生效,实际上所有的接口都仅仅对本对象生效,除了DmGuard
是全局的.