0
我正在使用Windows 7旗艦版64位。這是我偶然發現的一個功能,之前沒有任何問題,但現在我遇到了問題。無論我發送給它的是什麼字符,它只會發送正斜槓擊鍵/。 下面是函數:C++疑難解答發送擊鍵
void GenerateKey(int vk, BOOL bExtended)
{
KEYBDINPUT kb = {0};
INPUT Input = {0};
/* Generate a "key down" */
if (bExtended) { kb.dwFlags = KEYEVENTF_EXTENDEDKEY; }
kb.wVk = vk;
Input.type = INPUT_KEYBOARD;
Input.ki = kb;
SendInput(1, &Input, sizeof(Input));
/* Generate a "key up" */
ZeroMemory(&kb, sizeof(KEYBDINPUT));
ZeroMemory(&Input, sizeof(INPUT));
kb.dwFlags = KEYEVENTF_KEYUP;
if (bExtended) { kb.dwFlags |= KEYEVENTF_EXTENDEDKEY; }
kb.wVk = vk;
Input.type = INPUT_KEYBOARD;
Input.ki = kb;
SendInput(1, &Input, sizeof(Input));
return;
}
這裏是如何,我叫它: GenerateKey( 'X',FALSE);
但是,而不是x我得到一個/。任何人都可以看到發生了什麼問題? 我正在使用Visual Studio 2008.
這是你來自哪裏得到它:http://stackoverflow.com/questions/4427634/need-help-to-generate-keystrokes-into-existing-application-in-linux-environment-你呢? – 2011-03-05 06:24:52
現在它已經在互聯網上流動了一段時間了。我在cpluscplus.com的論壇上找到了我的副本。 – John 2011-03-05 06:32:03
使用小寫'x'肯定是錯的,它會產生一個F9功能鍵按下(虛擬鍵0x78)。雖然沒有解釋得到'/'。 – 2011-03-05 08:13:21