模拟全局按键可以用keybd_event, SendInput来完成,下面是模拟一次CAPS LOCK 按键时两个API函数的实现方法.
keybd_event:
keybd_event(VK_CAPITAL, 0, KEYEVENTF_EXTENDEDKEY | 0, 0); //KEY_DOWN
keybd_event(VK_CAPITAL, 0, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0); // KEY_UP
SendInput:
INPUT input[2];
memset(input, 0, sizeof(input));
input[0].type = INPUT_KEYBOARD;
input[0].ki.wVk = VK_CAPITAL;
input[0].ki.wScan = 0x14; //扫描码可以不指定
input[1].type = INPUT_KEYBOARD;
input[1].ki.wVk = VK_CAPITAL;
input[1].ki.wScan = 0x14;
input[1].ki.dwFlags = KEYEVENTF_KEYUP;
SendInput(2, input, sizeof(INPUT));