как VK_OEM1 это "o с умляутом".
Возможно на вашей машине.Не по моему, это ';'или ':', в зависимости от состояния клавиши Shift.Это виртуальные коды клавиш.Те, которые представляют печатную клавишу, преобразуются в символ с помощью ToUnicodeEx (), функции, которая принимает раскладку клавиатуры.И, конечно же, у вас есть нетипизирующие клавиши, которые вообще не выдают символов, например VK_F1 или VK_NUMLOCK.Это становится намного сложнее, когда в раскладке клавиатуры есть мертвые клавиши, которые вы используете, чтобы получить диакритический знак поверх символа.Поэтому для этой функции также требуется состояние клавиатуры.
Избегайте этого, как чумы, WM_CHAR - ваш друг.