Я взглянул на внутреннюю часть библиотеки, и суть проблемы должна лежать в функции InputBuilder.AddCharacter
, где символы переводятся в WM_KEYUP
/ WM_KEYDOWN
сообщения;тем не менее, он, похоже, хорошо работает в соответствии с документацией SendInput
и структуры KEYBDINPUT
.
Я подозреваю, что, будучи wScan
a WORD
Параметр, он не может поддерживать символы Юникода вне BMP, но это не объясняет, почему ваш персонаж (который должен определенно лежать внутри него) не вставлен правильно.
Еще один подозрение заключается в том, чтоцелевое приложение не обрабатывает правильно те «специальные» WM_KEYUP
/ WM_KEYDOWN
(которые имеют wParam VK_PACKET
и переводятся в WM_CHAR
с черной магией);у вас есть такая проблема с каждым приложением?