Я работаю над виртуальной клавиатурой для окон. Я знаю, что могу генерировать события клавиатуры, используя (например) keybd_event()
с правильным кодом виртуального ключа, но этот метод абсолютно непрактичен и не позволяет мне выводить (например) китайские или российские символы или, по крайней мере, не легко ,Излучение ввода клавиатуры с использованием сообщения WM_CHAR?
Возможно ли, в окнах, имитировать событие клавиатуры, отправив сообщение WM_CHAR? Это было бы идеально, если бы я мог это сделать, потому что мне просто нужно было бы получить код char из кодированного файла конфигурации UTF-8 или UTF-16 и отправить сообщение.
Если возможно, как я могу это сделать в Windows CE и Windows Mobile? Мне нужно поддерживать как настольные, так и мобильные устройства.
Благодарим за помощь! :)
ли ручная помощь ты? http://msdn.microsoft.com/en-us/library/windows/desktop/ms646304(v=vs.85).aspx * Эта функция была заменена. Вместо этого используйте SendInput. * –
Примечание. Если вы хотите имитировать * клавиатуру *, вы хотите имитировать * keypresses * (и релизы), для чего требуется отправить «коды виртуальных ключей». Каждый * Виртуальный ключ * напрямую соответствует ключу на вашей физической клавиатуре * и НЕ конкретному символу *. Это не то же самое, что имитировать * характер ввода *, который будет иметь дело с 'WM_CHAR'. Коды Virutal Key переводится в сообщения 'WM_CHAR' по окнам (' TranslateMessage') в соответствии с настроенным языком и макетом клавиатуры. – dialer
http://blogs.msdn.com/b/oldnewthing/archive/2005/05/30/423202.aspx – jamesdlin