Lukas: Windows API-Programmierung mit C#.NET (generelles API-Problem?)

Beitrag lesen

Hallo zusammen!

Ich habe eine Frage zum Thema API-Programmierung: Ich wollte etwas zur API-Programmierung unter .NET lernen. Allerdings funktioniert das nicht so, wie ich mir das vorgestellt habe :)

Auf der Seite http://www.pinvoke.net/ werden die meisten (?) Windows API-Befehle aufgezählt und manche haben eine genaue Beschreibung dabei.

Bsp1:

[DllImport("user32.dll", SetLastError = true)]  
static extern void EndTask(IntPtr hWnd);

Bei diesem Beispiel ist das Problem, dass ich keine Ahnung habe, was ich als Übergabeparameter übergeben soll (was ist 'IntPtr hWnd' und was sind gültige Werte dafür?).

Bsp2:

[DllImport("winmm.dll")]  
static extern Int32 mciSendString(String command,  
   StringBuilder buffer, Int32 bufferSize, IntPtr hwndCallback);

Hier gibt es Beispiel-Code. Das bedeutet ich habe für 2 Beispiele gültige Werte für die Übergabeparameter. Aber es gibt doch sicher noch mehr, oder?

Bsp3:

[DllImport("advapi32.dll", SetLastError=true)]  
static extern TODO ShutDown(TODO);

Hier bekomme ich nicht mal gesagt, wie viele (bzw. welche) Parameter ich übergeben muss.

Meine Frage lautet: Wie kann ich herausbekommen, was für Parameter ich an die API-Befehle übergeben muss, damit das ganze funktioniert?

Vielen Dank für hilfreiche Antworten!
Viele Grüße, Lukas