[WinAPI] Początek przygody
Ostatnio zmodyfikowano 2014-03-21 19:54
jmaciejjjj7 Temat założony przez niniejszego użytkownika |
[WinAPI] Początek przygody » 2014-03-19 17:07:01 Witam, Na podstawie kursu napisałem pierwszy program w WinAPI, który miał stworzyć okno, a w razie niepowodzenia wyświetlić komunikat. Mam jednak problem z linijką okno.lpfnWndProc = WndProc; . Jak WNDPROC wpisze wielkimi literami, to mam błąd, że niedozwilone jest użycie tego typu jako wyrażenia, a jak wpisze WndProc (tak było w kursie) to błąd, że niezdeklarowany identyfikator. Pomoc mile widziana :) |
|
Moorfox |
» 2014-03-19 17:16:52 Masz definicje funkcji powyżej tego przypisania ? Czyli
typ WndProc(argumenty); <--- TO
Int WinAPI(Inte...)
typ WndProc(argumenty) { switch()
}
? definicja musi być przed przypisaniem a ciało możesz dać później ponieważ kompilator musi widzieć, że istnieje taka funkcja
czyli robisz zawsze tak:
//Interfejs
int metoda(int a);
int main() { metoda(6); return 0; }
int metoda(int a) { return 2*6 }
Na przykład
EDIT: Po za tym jakbym zrobil do tego int METODA(int a); to METODA i metoda to dwie rozne funkcje wielkosc liter ma znaczenie A tam masz procedure o nazwie WndProc to nie to samo co WNDPROC jesli to jest twoj problem to radze wrocic do podstaw a nie bawic sie WinAPI |
|
jmaciejjjj7 Temat założony przez niniejszego użytkownika |
» 2014-03-20 15:27:27 Dzięki za odpowiedź. Definicji rzeczywiście nie było. Ten błąd wynika raczej z tego, że dopiero zaczynam uczyć się w WinAPI i pierwszej lekcji jeszcze do końca nie doczytałem. Dziecko jak się uczy jeździć na rowerze to zanim się dobrze nauczy to parę razy się wywali. Teraz wyskoczył mi błąd linkera i jak nie uda mi się z nim rozprawić samemu wrzucę log kompilacji. EDIT: 1>------ Kompilacja rozpoczęta: ProjektWinApi nauka, KonfiguracjaDebug Win32 ------ 1> Źródło.cpp 1>c:\users\maciek\documents\visual studio 2013\projects\winapi nauka\winapi nauka\źródło.cpp(23): warning C4800: "HWND": wymuszanie wartości logicznej "true" lub "false" (ostrzeżenie wydajności) 1>Źródło.obj : error LNK2019: unresolved external symbol "long __stdcall WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@@YGJPAUHWND__@@IIJ@Z) referenced in function _WinMain@16 1>C:\Users\Maciek\documents\visual studio 2013\Projects\WinApi nauka\Debug\WinApi nauka.exe : fatal error LNK1120: 1 unresolved externals ========== Kompilacja: 0 zakończono powodzeniem, 1 zakończono niepowodzeniem, 0 zaktualizowano, 0 pominięto ========== |
|
pekfos |
» 2014-03-20 17:23:08 Masz definicję procedury okna..? |
|
jmaciejjjj7 Temat założony przez niniejszego użytkownika |
» 2014-03-20 17:59:22 Okno już jest, tylko zamiast polskiej nazwy coś takiego: |
|
Moorfox |
» 2014-03-21 19:54:12 Jakbyś skopiował source code i wkleiłbyś go tu to może ktoś by ci pomógł. EDIT: Po twoim spostrzeżeniu na temat dziecka i roweru teraz ja odpowiem dziwnym (bardzo dziwnym) spostrzeżeniem: Zanim dziecko będzie mogło nauczyć się jeździć na rowerze, powinno się najpierw nauczyć chodzić. Jeśli WINapi to rower to dla mnie ty nie umiesz chodzić :P. Więc wróć do czystego C++ P.S. Ale to nerdowskie
|
|
« 1 » |