我已經試過GetKeyboardLayoutName()和GetKeyboardLayout()獲取當前的鍵盤佈局,但他們都給予我的默認佈局和改變佈局不影響輸出!不能讓當前的鍵盤佈局
while(1)
{
Sleep(5);
for(int i = 8; i < 191; i++)
{
if(GetAsyncKeyState(i)&1 ==1)
{
TCHAR szKeyboard[KL_NAMELENGTH];
GetKeyboardLayoutName(szKeyboard);
if(GetAsyncKeyState(i)&1 ==1)
{
TCHAR szKeyboard[KL_NAMELENGTH];
GetKeyboardLayoutName(szKeyboard);
cout << szKeyboard << endl ;
}
}
}
}
它總是給我「00000409」的時候,默認的佈局設置爲英語,而我希望它是「00000429」當我改變佈局,波斯語。
我的第一個問題在這裏,我曾經通過搜索找到我的所有答案。但現在我經過幾個小時的搜索周圍,並沒有得到任何東西瘋狂駕駛...
不知道這將有助於..嘗試GetKeyboardLayoutList看到,如果你想要的佈局至少裝.. http://msdn.microsoft.com/en-us/library /windows/desktop/ms646297(v=vs.85).aspx –
@MohamedNuur:已經試過了,它被加載了。 – EmJiHash
我沒有看到改變鍵盤佈局的代碼。我只能猜測它沒有改變,你沒有檢查它的錯誤代碼。 – Jay