-
-
[求助]WinIO模拟鼠标只能成功一次。。。
-
发表于:
2014-11-29 23:10
9214
-
主题可以关闭否,已经换方法了。
话说WinIO的局限还是蛮大的。
而且鼠标键位不同(普通3键PS2和MS的那个5键)写端口的数据包也不一样。
顺带推荐一个稳定方法,MouseClassServiceCallback。
今天下午测试了一下,x64用起来也很方便。
最大优点在于:
1.通用性,不分PS2 USB
2.回调性质,不需要考虑IBF/OBF已满已空之类的问题。
3.论坛有相关主题的资料。
/*************************************************************************/
RT
我在尝试用WINIO做鼠标的模拟
但是存在一个很奇怪的问题, 第一次模拟操作可以执行成功,后面的全部失败。
除非重启机器,否则后面的操作都不能成功(此时模拟键盘依然OK)
已我模拟左键点击为例
//按下
向0x64 写 0xD3
向0x60 写 0x09
向0x64 写 0xD3
向0x60 写 0x00
向0x64 写 0xD3
向0x60 写 0x00
向0x64 写 0xD3
向0x60 写 0x00
//抬起
向0x64 写 0xD3
向0x60 写 0x00
向0x64 写 0xD3
向0x60 写 0x00
向0x64 写 0xD3
向0x60 写 0x00
向0x64 写 0xD3
向0x60 写 0x00
=====================
以上这些是我参考PS2的协议 和已经有的成品来做的。
其中唯一一个不是很确定的地方就是 如何判断可以写入
目前我用的方法是, 取0x64的一个字节 与 0x02 位与 结果为0时候写数据
看资料看了一天了,PS2协议也来回翻了几遍,实在找不出问题,求指导~
Ps:我是x64的系统,这些写端口的操作都是R0做的(避免我描述不清产生歧义)。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课