#include<windows.h>
void main()
{
while(1)
{
keybd_event(VK_CONTROL,0,0,0);
keybd_event(79,0,0,0);
keybd_event(79,0, KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0);
keybd_event(VK_CONTROL,0, KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0);
Sleep(2000);
}
}
程序代码如上所示,要实现的就是按下组合键CTRL+O,O的虚拟码为79.程序一运行也会出现:“打开”对话框。可是遇到一个很奇怪的问题:每次一线束程序的运行,CTRL键仍处下按下状态,这是为什么呢?我不是有了“ keybd_event(VK_CONTROL,0, KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0); ”这句弹起了吗?
在线等,求真相。
#include<windows.h>
void main()
{
//int i=0;
while(5)
{
//char str='a';
keybd_event(VK_CONTROL,0,0,0);
Sleep(50);
keybd_event(79,0,0,0);
Sleep(50);
keybd_event(79,0, KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0);
Sleep(50);
keybd_event(VK_CONTROL,0, KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0);
Sleep(2000);
// i++;
// keybd_event(VK_CONTROL,0, KEYEVENTF_EXTENDEDKEY|KEYEVENTF_KEYUP,0);
}
}
每次运行完要再按下CTRL键,其它键才能正常输入。