Доброе время суток! функция LoadString загружает строку из ресурса в буфер szTextWin, а функция DrawTextA выводит содержимое буфера в окно. Проблема в том, что выводится в окно кракозябла. Отладчик показывает, что LoadString строку из ресурса в буфер копирует нормально.
| Код | LRESULT CALLBACK WndProc(HWND hWnd,UINT uMsg,WPARAM wParam,LPARAM lParam){ HICON hIcon, hIconSm; HDC hDC; PAINTSTRUCT ps; RECT rect; int userReply; TCHAR szTextWin[20]; static HINSTANCE hInst; static HMENU hMenu; // дескриптор главного меню switch(uMsg) { case WM_CREATE: hInst = GetModuleHandle(NULL); LoadString(hInst,IDS_REGTEXT,szTextWin,20); hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_ICO_KEYS)); hIconSm = (HICON)LoadImage(hInst, MAKEINTRESOURCE(IDI_ICO_KEYS), IMAGE_ICON, 16, 16, LR_DEFAULTCOLOR); SetClassLong(hWnd, GCL_HICON, (LONG)hIcon); SetClassLong(hWnd, GCL_HICONSM, (LONG)hIconSm); case WM_PAINT: hDC=BeginPaint(hWnd,&ps); GetClientRect(hWnd,&rect); DrawTextA(hDC,szTextWin,20,&rect,DT_SINGLELINE|DT_CENTER|DT_VCENTER); EndPaint(hWnd,&ps); break; case WM_CLOSE: DestroyWindow(hWnd); break; case WM_DESTROY: PostQuitMessage(0); break; case WM_COMMAND: switch (LOWORD(wParam)) case ID_REGISTERME:
// Вызов диалога DialogBox(hInst, MAKEINTRESOURCE(IDD_DIALOG_MAIN), hWnd, CrDlgProc);
break; default: return DefWindowProc(hWnd,uMsg,wParam,lParam); } return 0; }
|
|