H := CreateWindowW(...
SendMessage(H, wm_SetText, 0, integer(pchar('Русский текст')));
На моей машине русский текст отображается корректно.
На другой (тоже русская ХР) - нет, отображаются закорючки.
На английской - хз, не могу проверить.
Так вот, у меня вопрос. Преобразование простой строки в юникодовую (а именно оно происходит при отправке сообщения) делается через какую-то виндовую функцию. Как функция определяет, какую кодировку при этом брать? Какие-то настройки системы? Настройки программы?