Начал читать книгу по API, автор Щупак. Во второй программе, этой книги создаётся оконное приложение. Набрал как в книге, проверял всё точь в точь, но программа не компилится, выдаёт ошибку: Cannot convert from 'char [8] to 'LPCSTR' Все подробности программы я буду читать в книге,нужн оскомпилить проект,чтоб по нему смотреть.
| Код | #include <windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow) { HWND hMainWnd; char szClassName[] = "MyClass"; MSG msg; WNDCLASSEX wc; wc.cbSize = sizeof(wc); wc.style = CS_HREDRAW | CS_VREDRAW; wc.lpfnWndProc = WndProc; wc.cbClsExtra = 0; wc.cbWndExtra = 0; wc.hInstance = hInstance; wc.hIcon = LoadCursor(NULL, IDI_APPLICATION); wc.hCursor = LoadCursor(NULL,IDC_ARROW); wc.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH); wc.lpszMenuName = NULL; wc.lpszClassName = szClassName; wc.hIconSm = LoadIcon(Nul, IDI_APPLIACTION);
//Регистрируем класс окна if(!RegisterClassEx(&wc)) { MessageBox(NULL,L"Класс не зарегестрирован",L"Ошибка",MB_ICONQUESTION); return 0; } //Создаёи основное окно приложения hMainWnd = CreateWindow( szClassName,"Привет Украина",WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, CW_USEDEFAULT,0, (HWND)NULL, (HMENU)NULL, (HINSTANSE)hInstance,NUL);
if(!hMainWnd) { MessageBox(NULL,L"Не можно создать основное окно",L"Ошибка",MB_OK); return 0; } //Показываем наше окно ShowWindow(hMainWnd, nCmdShow); UpdateWindow(hMainWnd);
//Выполняем цикл обработки сообщений до закрытия программы while(GetMessage(&msg,NULL,0,0)) { TranslateMessage(&msg); DispatchMessage(&msg); return msg.wParam; } //======================================================================================= LRESULT CALLBACK WindProc(HWND hWnd, UINT uMsg, WParam, LPARAM lParam) { HDC hDC; PAINTSTRUCT ps; RECT rect; switch(uMsg) { case WM_PAINT: GetClientRect(hWnd, &rect); DeawText(hDC, "Hello, World!", -1,&rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER); EndPaint(hWnd,&s); break;
case WM_CLOSE: DestroyWindow(hWnd); break;
case WM_DESTROY: PostQuitMessage(0); break;
default: return DefWindowProc(hWnd,uMsg, wParam, lParam); } return 0;
}
}
}
|
|