Avatar billede Slettet bruger
06. juni 2003 - 23:16 Der er 18 kommentarer og
1 løsning

Forklaringer til Winprog

Jeg er ved at lege lidt med noget winprog og er i den forbindelse lidt i tvivl om noget forståelse.

Er der nogle der kan komme med en let og forståelig forklaring på nedenstående kode.:

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
    LPSTR lpCmdLine, int nCmdShow)
{
    WNDCLASSEX wc;
    HWND hwnd;
    MSG Msg;
Avatar billede arne_v Ekspert
06. juni 2003 - 23:22 #1
hInstance = handler til instansen af programmet (kan bruges i kald af andre funktioner)

hPrevInstance = altil NULL (den er der for 16 bit compabilitet)

lpCmdLine = kommando-linien som startede programmet

nCmdShow = options for hvordan programmet skal vises når det starter
Avatar billede arne_v Ekspert
06. juni 2003 - 23:23 #2
Og WinMain er altså der der svarer til main i en console mode
applikation.
Avatar billede Slettet bruger
06. juni 2003 - 23:26 #3
HINSTANCE hInstance skal det forstås som at hInstance er en instans af HINSTANCE?? Har lige glemt lidt grundlæggende C her.
Avatar billede arne_v Ekspert
06. juni 2003 - 23:29 #4
HINSTANCE er en type
hInstance er navnet på argumentet

HINSTANCE er en pointer til et eller andet og er defineret i windows.h
Avatar billede bertelbrander Novice
06. juni 2003 - 23:30 #5
HINSTANCE hInstance skal forsåes som at hInstance er en variabel af typen HINSTANCE. Det er en unik ID for denne instans af programmet.
Avatar billede Slettet bruger
06. juni 2003 - 23:32 #6
dvs at hver gang der står noget med HINSTANCE efter fulgt af XX så skal det forstås som at XX er argumentet til kaldet af HINSTANCE i windows.h?
Avatar billede Slettet bruger
06. juni 2003 - 23:32 #7
Det samme formoder jeg i så fald gælder for
    WNDCLASSEX wc;
    HWND hwnd;
    MSG Msg;
Avatar billede arne_v Ekspert
06. juni 2003 - 23:34 #8
Ja.

type defineret i windows.h + variabel navn
Avatar billede arne_v Ekspert
06. juni 2003 - 23:35 #9
Det var til 23:32:56 spm.

Til 23:32:19:

Nej.

WinMain kaldes med et argument af typen HINSTANCE og det argument kan
du referere til med navnet hInstance.
Avatar billede Slettet bruger
06. juni 2003 - 23:38 #10
okay.. virker mig en smule forvirrende lige pt.. har du et forslag til en god site hvor man kan lege / læse lidt mere om dette winprog?
Avatar billede arne_v Ekspert
06. juni 2003 - 23:41 #11
Avatar billede arne_v Ekspert
06. juni 2003 - 23:42 #12
Hvis du skal bruge det seriøst så overvej at investere i:
  Programming WIndows / Charles Petzold
Avatar billede Slettet bruger
06. juni 2003 - 23:43 #13
det er den jeg arbejder med allerede :)

Roder med "a simpel window" og "Handling messages" men alt det inde i paranteser driller mig lidt....
Avatar billede Slettet bruger
08. juni 2003 - 17:57 #14
Arne_v gider du kort forklare dette.:

MSG Msg;

Der står jo det samme.... næsten....
Avatar billede arne_v Ekspert
08. juni 2003 - 18:01 #15
MSG er en type (formentlig også erklæret et sted i windows.h).

Msg er et variabel navn.

Pænt at have type og variabelnavn så tæt på hinanden ? Det kan
diskuteres men det er legal C/C++.
Avatar billede Slettet bruger
08. juni 2003 - 18:11 #16
arne_v> håbede faktisk det var en instans. Prøver at rode med den bog du omtalte og det er for at forstå det hele lidt dybere mit som kommer.
Avatar billede arne_v Ekspert
08. juni 2003 - 18:13 #17
Msg er også en instans af MSG.
Avatar billede arne_v Ekspert
08. juni 2003 - 18:14 #18
"instans af" og "variabel af typen" er synonymer.

[jævnfør den anden tråd vi har gang i]
Avatar billede Slettet bruger
08. juni 2003 - 22:47 #19
Tak for hjælpen arne_v
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester