Skocz do zawartości

Błąd w pierwszym programie WinAPI


Luksor

Rekomendowane odpowiedzi

Uczę się WinApi z tego kursu: http://stud.wsi.edu.pl/~sistudem

 

#include <windows.h>

int WINAPI WinMain(HINSTANCE hProgram, HINSTANCE, LPSTR, int swPokaz)
{

WNDCLASS wc;
wc.style	  = 0;
wc.hInstance	  = hProgram;
wc.lpszClassName = "Moja Klasa";
wc.lpfnWndProc	  = DefWindowProc;
wc.hIcon	  = LoadIcon(NULL,IDI_WINLOGO);
wc.hCursor	  = LoadCursor(NULL,IDC_ARROW);
wc.lpszMenuName  = NULL;
wc.cbClsExtra	  = 0;
wc.cbWndExtra	  = 0;
wc.hbrBackground = (HBRUSH) GetStockObject(BLACK_BRUSH);
if(!RegisterClass(&wc)) return 0;

HWND hOkno;
hOkno = CreateWindowEx(WS_EX_TOPMOST,"Moja Klasa","Program 1",
			WS_OVERLAPPEDWINDOW,100,100,200,100,
                       NULL,NULL,hProgram,NULL);

ShowWindow(hOkno,swPokaz);

MSG msg;
while(1) {
 if(!IsWindow(hOkno)) break;
 GetMessage(&msg,NULL,0,0);
 DispatchMessage(&msg);
}

return 0;
}

 

Taki program powinien wyświetlać okienko z czarnym tłem, ale coś nie idzie mi przy kompilacji :/ wy się na pewno lepiej znacie, więc powiedzcie mi o co biega.

 

Oczywiście daję treść błędów:

  [Linker error] undefined reference to `GetStockObject@4'

  ld returned 1 exit status

 

Proszę o pomoc i poprawki kodu.

Odnośnik do komentarza
Udostępnij na innych stronach

Po pierwsze: jakie IDE? (devcpp, code::blocks, visual?)

Odnośnik do komentarza
Udostępnij na innych stronach

opcje projektu -> parametry -> konsolidator

i dopisujesz linijke:

-lgdi32

Odnośnik do komentarza
Udostępnij na innych stronach

opcje projektu -> ogólne -> typ: Win32 GUI

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...