C语言达成模拟键盘按键事件
发布时间:2021-11-22 10:45:53 所属栏目:PHP教程 来源:互联网
导读:C语言实现模拟键盘按键事件: #include stdio.h #include windows.h #define KEYDOWN(vk_code) ((GetAsyncKeyState(vk_code) 0x8000) ? 1 : 0) #define KEYUP(vk_code) ((GetAsyncKeyState(vk_code) 0x8000) ? 0 : 1) int main(void) { POINT pt; int i; int d
C语言实现模拟键盘按键事件: #include <stdio.h> #include <windows.h> #define KEYDOWN(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000) ? 1 : 0) #define KEYUP(vk_code) ((GetAsyncKeyState(vk_code) & 0x8000) ? 0 : 1) int main(void) { POINT pt; int i; int delaytime; int keynum; printf("input the delay time(ms):"); scanf("%d",&delaytime); while(1) { switch (KEYDOWN(VK_ESCAPE)) { case 1: { while (!KEYDOWN(VK_RETURN )) { Sleep(10); } break; } case 0: { //VK_NUMLOCK //VK_SPACE keybd_event(VK_NUMLOCK , 0, 0, 0); Sleep(delaytime/2); keybd_event(VK_NUMLOCK, 0, KEYEVENTF_KEYUP, 0); Sleep(delaytime/2); break; } } } return 0; } 主要是用到了keybd_event(VK_NUMLOCK , 0, 0, 0);这个函数。关于函数的解释请到百度了自己搜。 利用switch和while巧妙实现了按ESC键暂停,按Enter键继续。 刚打开软件时需要输入按键事件之间的时间延迟,单位是ms。 ![]() (编辑:云计算网_泰州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |