bool CALLBACK MyWinProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
}
WINAPI WinMain(HINSTANCE hInstance, HINSTANCE, LPSTR lpCmdLine, int nCmdShow)
{
HWND hwndMain;
WNDCLASS wc;
wc.style = CS_HREDRAW|CS_VREDRAW;
wc.lpfnWndProc = (WNDPROC)MyWinProc;
wc.hInstance = hInstance;
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW);
wc.lpszClassName = "MYFIRSTNONVCLAPPLICATION";
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wc.lpszMenuName = NULL;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
if(!RegisterClass(&wc))MessageBox(0, "Class is not registred", "ERROR", MB_ICONERROR | MB_OK), ExitProcess(0);
else MessageBox(0, "Class is registred", "Seccess", MB_OK);
hwndMain = CreateWindow(wc.lpszClassName, "Non VCL Programm",
WS_BORDER|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX,
CW_USEDEFAULT, 0, 300, 350, NULL, NULL, hInstance, NULL);
if(GetLastError() == 1400)MessageBox(0, "Window is not created", "ERROR", 0);
ShowWindow(hwndMain, SW_SHOWNORMAL);
return 0;
}
Окно своими руками.
Захотелось попробовать создать програму под виндовс без использования визуальных фишек и без VCL.
Нашел пару примеров, но при вызове ф-ии CreateWindow вылетает ошибка EAccessViolation at address 00000024.
Я никак не могу понять с чего эта ошибка...
Код:
Window is not created и далее в строке оно все равно показывается? Ну а это будет работать: