Обработка WM_CHAR в WH_GETMESSAGE
Через отладчик заметил, что если, допустим, я меняю код символа на 123, то до окна доходит лишь байт, то есть 23.
Окно Юникодное?
Ну да, Юникодовое. Хотя может быть любое. Предполагаю, что предложите WM_UNICHAR, так оно не отлавливается и отладкик на него не реагирует.
Кстати, юникодному окну оно не посылается
Цитата: Phodopus
... а оно уж преобразуется в 2 WM_CHAR-а
не знаю как это сообщение, а мне кажется путаешь с WM_IME_CHAR. Вот оно распадается на два.
ПРОСТО ПЕСЕЦ. Я уже не знаю что делать...:mad:
Сбацал WinAPI программку на VS2005, работает. Могу на почту выслать, ну или интересующий момент выложить, только я не знаю какой тебя заинтересует :))))
Phodopus, я отпаравил тебе в личку адрес моего мыла. А у тебя работает со своим окном или со всеми?
:eek: как это - со всеми??? Пока только со своим :))
послал Alfa исходник, но:
1. Сделал подмену вводимых символов для окна своей программы, а надо для окна чужой программы
2. Она у него не заработала. Уж не догадаюсь почему, но у меня она работает :)
Посему было принято решение наскоряк сбацать консольную (чтоб не весила полмегабайта) программку на Delphi которая отправляет окну с указанным хендлом греческий алфавит.
Как юзать:
Запускаем блокнот, меняем шрифт на юникодный (я юзал Times New Roman), узнаем хэндл окна "edit" у блокнота (чем-нить типа Spy++ или WinDowse).
Запускаем утиль:
Код:
greekto $000109C2
обращаем особое внимание на символ бакса если хендл в 16ричном формате. Рассказываем, может эта у кого заработает :)
Работает. Спасибо. Буду смотреть свою... :)