Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > VkKeyScan() & setlocale()


Автор: Zmeevic 20.1.2008, 21:54
Для правильной работы VkKeyScan() с кирилицей
использовал :
setlocale (LC_CTYPE, "Russian_Russia.1251");

теперь нуна опять использовать латиницу:

Ну млин толи лыжи не едут толи я ...

делаю:
Код

//...
setlocale (LC_CTYPE, "English_United States.1252");
//...
int KS1 = VkKeyScan('ф');
int KS2 = VkKeyScan('n');
//...



хоть убей...

для русской <ф> все ОК = 65
для латинской <n> все хреново = -1

т.е. дело не в locale... тогда в чем? ПОЧАМУ C ЛАТИНИЦЕЙ такая беда? 

Откуда этот <Ух, ты...> взялся? 

Автор: 586 20.1.2008, 22:58
Цитата(Zmeevic @  20.1.2008,  21:54 Найти цитируемый пост)
для русской <ф> все ОК = 65
для латинской <n> все хреново = -1

Дело в раскладке клавиатуры. Сменишь раскладку, проблемы будут с русским. Используй VkKeyScanEx.

Автор: Zmeevic 21.1.2008, 15:02
Понял, спасибо!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)