не могу получить текущую раскладку клавиатуры

я пытался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 ;
            }
        }
    }
}

Ответы на вопрос(2)

Ваш ответ на вопрос