Есть программа-клавиатурный хук, которая пишет в лог все нажатия клавиш.
В программе получаю заголовок активного окна так:
CString szWndText;
GetForegroundWindow()->GetWindowText(szWndText);
Все нормально до тех пор, пока заголовок содержит латинские буквы, как только содержится хоть один русский символ, то на нем строка обрывается.
Пробовал выводить в отладчике:
TRACE(_T("%s\n"), szWndText);
Если содержатся русские буквы, то пишет:
_CrtDbgReport: String too long or IO Error
Так понимаю косяк из-за юникода? Проект юникодный. Из-за чего такое может быть и как пофиксить?