私は持っている
DWORD dwThreadID = GetCurrentThreadId();
HKL hCurKeyboard = GetKeyboardLayout(dwThreadID);
それはHKLの現在のキーボードを返します私はそれをいくつかの文字と比較する必要があります
char defaultLanguage[64]="0x04090409";
HKLhCurKeyboard
と比較するにはどうすればよいですかdefaultLanguage
または、この値でHKLを作成するにはどうすればよいですか"0x04090409"
char defaultLanguageLayout[64] = "0x04090409";
DWORD dwThreadID = GetCurrentThreadId();
HKL hCurKeyboard = GetKeyboardLayout(dwThreadID);
//->> if(hCurKeyboard!=defaultLanguageLayout)
{
UINT i;
HKL hklCurrent;
UINT uLayouts;
HKL * lpList;
uLayouts = GetKeyboardLayoutList(0, NULL);
lpList = (HKL*) malloc(uLayouts * sizeof(HKL));
uLayouts = GetKeyboardLayoutList(uLayouts, lpList);
for(i=0; i<uLayouts; i++)
{
hklCurrent = *(lpList + i);
//->> if(hklCurrent == defaultLanguageLayout){
ActivateKeyboardLayout(hklCurrent, 0);
}
}
前もって感謝します。