Новичок
Покинул форум
Сообщений всего: 44
Дата рег-ции: Сент. 2012
Помог: 0 раз(а)
|
Пользуюсь компилятором Borland 5.5 и пробую себя в WinAPI.
Есть вот такой код:
код (Отобразить)CODE ( htmlphp):
скопировать код в буфер обмена
#include <windows.h> LRESULT CALLBACK HelloWorldWndProc (HWND, UINT, UINT, LONG); int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdParam, int nCmdShow) { HWND hWnd; WNDCLASS WndClass; MSG Msg; char szClassName[] = "Hello World"; //Регистрируем создаваемый класс //Заполняем структуру типа WNDCLASS WndClass.style = CS_HREDRAW | CS_VREDRAW; WndClass.lpfnWndProc = HelloWorldWndProc; WndClass.cbClsExtra = 0; WndClass.cbWndExtra = 0; WndClass.hInstance = hInstance; WndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION); WndClass.hCursor = LoadCursor(NULL, IDC_ARROW); WndClass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH); WndClass.lpszMenuName = NULL; WndClass.lpszClassName = szClassName; if(!RegisterClass(&WndClass)) { MessageBox(NULL, "Cannot register class", "Error", MB_OK); return 0; } hWnd = CreateWindow(szClassName, "Programm No 1", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL); if(!hWnd) { MessageBox(NULL, "Cannot create Window", "Error", MB_OK); return 0; } //Show our window ShowWindow(hWnd, nCmdShow); UpdateWindow(hWnd); //Beginning of messages cycle while (GetMessage(&Msg, NULL, 0, 0)) { TranslateMessage(&Msg); DispatchMessage(&Msg); } return Msg.wParam; } LRESULT CALLBACK HelloWorldWndProc (HWND hWnd, UINT Message, UINT wParam, LONG lParam) { HDC hDC; PAINTSTRUCT PaintStruct; RECT Rect; switch(Message) { case WM_PAINT: hDC = BeginPaint(hWnd, &PaintStruct); GetClientRect(hWnd, &Rect); DrawText(hDC, "Hello World", -1, &Rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER); EndPaint(hWnd, &PaintStruct); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return DefWindowProc(hWnd,Message,wParam,lParam); }
При попытке его скомпилировать выходит ошибка:
Error: Unresolved external '_main' referenced from c:\borland\bcc55\lib\c0x32.obj
Возможно у меня просто неправильно настроен компилятор(Отредактировано автором: 04 Апреля, 2013 - 13:27:48)
|