2008年2月7号晚完成魔兽显血小工具,几个关键地方总结如下
使用键盘钩子来捕获发送给魔兽的键盘消息
再用keybd_event来发送模拟按键
注意要使用LowLevelKeyboardProc,否则无法捕获win键。
KBDLLHOOKSTRUCT的使用需要声明os版本,#define _WIN32_WINNT 0x0400
很奇怪在mfc下无法使用,本来想用内存dll做的。后来改成在全局dll做
LowLevelKeyboardProc里的wParam很重要,他可以判断WM_KEYDOWN,WM_KEYUP
如果不加这个判断,一次按键两个动作(按下,释放)或相应两次键盘钩子。
keybd_event中第三个参数可以声明为
使用键盘钩子来捕获发送给魔兽的键盘消息
再用keybd_event来发送模拟按键
注意要使用LowLevelKeyboardProc,否则无法捕获win键。
KBDLLHOOKSTRUCT的使用需要声明os版本,#define _WIN32_WINNT 0x0400
很奇怪在mfc下无法使用,本来想用内存dll做的。后来改成在全局dll做
LowLevelKeyboardProc里的wParam很重要,他可以判断WM_KEYDOWN,WM_KEYUP
如果不加这个判断,一次按键两个动作(按下,释放)或相应两次键盘钩子。
keybd_event中第三个参数可以声明为
KEYEVENTF_KEYUP | 如果说明,按键被释放,否则,按键被按下 |
也就是说一个按键动作的完整模拟是
keybd_event(vkcode,0,0,0)
keybd_event(vkcode,0,KEYEVENTF_KEYUP,0)
文件的读写我不会太花哨的代码,最经常用freopen,平时ac题目也用它做测试
记住使用完文件后fclose
下载链接
http://ys-i.ys168.com/?mykey.rar_73e2bs7bsht1bs0bs7bt0c0c0cpq5bik5bt1bkt2bs5bu14z97f14z