В следующий раз отправьте код прямо здесь, и хотя бы попытайтесь скомпилировать его!Я получаю 18 ошибок, просто пытаясь скомпилировать ваш файл.Ваш код также очень трудно читать, поэтому я не могу точно сказать, что и где происходит.Вы смешиваете символы с wchars_t, что может привести к повреждению памяти.char Buffer[Length() + 1];
не должен даже компилироваться!Какой компилятор вы используете?Для динамического размещения вы ДОЛЖНЫ использовать указатели и новое ключевое слово, вы не можете использовать индекс массива для динамического размера.
В любом случае, я, возможно, знаю, в чем проблема - вам не хватает TranslateMessage до DispatchMessage.Это приводит к ошибкам в сообщениях, и вы, конечно, не можете получить правильные сообщения.