Итак, моя оконная процедура в настоящее время перехватывает все сообщения WM_CHAR, она отлично работает с символами ASCII, но когда я пытаюсь что-то вроде:
case 'ф':
MessageBox(NULL, TEXT("Ф detected"), TEXT("key"), MB_OK);
, по какой-то причине происходит сбой.
Чточто-то не так с моим подходом и как мне это исправить?
РЕДАКТИРОВАТЬ : исходный код:
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_CHAR:
switch(wParam)
{
case '3':
MessageBox(NULL, TEXT("'3' was pressed"), TEXT("key detected"), MB_OK);
return 0;
case 'ф':
MessageBox(NULL, TEXT( "ф was pressed"), TEXT("key detected"), MB_OK);
return 0;
default:
return 0;
}
case WM_DESTROY :
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc (hwnd, message, wParam, lParam) ;
}