Re[5]: Точка или запятая? Русский или английский?
От: SergH Россия  
Дата: 16.04.03 11:59
Оценка:
Здравствуйте, BaSergey, Вы писали:

SH>The return value is the input locale identifier for the thread. The low word contains a language identifier for the input language and the high word contains a device handle for the physical layout of the keyboard.


BS>GetKeyboardLayout действительно отслеживает изменения языка. Но GetLocaleInfo с его результатом работать отказывается. Вот, что я делаю для проверки:

BS>
...
BS>


BS>Результат работы GetLocaleChar всегда равен "D". А если ему дать результат чего-нибудь типа GetThreadLocale — все нормально, но результат не тот, что хотелось — постоянно то, что прописано в панели управления. Мне же нужен конкретно тот разделитель, который действует непосредственно сейчас, для текущего языка ввода.


BS>Есть соображения?


Есть. Извини, сам проверить сейчас не могу, но, имхо что бы получить LCID из GetKeyboardLayout нужно делать так:

MAKELCID(LOWORD(GetKeyboardLayout(0)), SORT_DEFAULT);


И вот это уже передавать в первый параметр GetLocaleInfo.
Делай что должно, и будь что будет
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.