Informationssuche in der MSDN

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Informationssuche in der MSDN

Beitrag von PureLust »

Ich versuche etwas fitter in der Anwendung von API-Funktionen zu werden.
Leider habe ich immer noch große Probleme wenn es darum geht die richtigen Informationen zu finden.

Wenn ich mir z.B. eine Funktion anschaue und dort dann steht:
MSDN hat geschrieben:If the function succeeds, the return value is a handle to a window.
dann weiss ich ja nun, dass ich als Returnwert ein Handle bekomme.

Aber wo bekomme ich nun nähere Informationen über die Struktur auf die das Handle verweist?
An solchen Dingen tue ich mich immer noch extrem schwer. /:->
Gibt's da irgendeine bestimmt Vorgehensweise wie man sowas findet oder gibt es in der MSDN evtl. irgendwo eine Liste mit den Strukturen?
Zuletzt geändert von PureLust am 16.07.2007 20:31, insgesamt 1-mal geändert.
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
DNA
Beiträge: 40
Registriert: 25.02.2006 23:54

Beitrag von DNA »

Ich nutze den ApiViewer, dort stehen immer die Typen, die solch eine Funktion als Rückgabe Wert haben. z.B. steht dann dort:

Code: Alles auswählen

Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Also gibt die Funktion einen Longwert zurück, welches auch der Handle für das gesuchte Fenster ist. Das "ByVal" sollte nicht irritieren, das bedeutet nur, dass ein Wert übergeben wird und nicht ein Zeiger (ByRef).
Den ApiViewer gibt es hier zum download: http://www.activevb.de/rubriken/apiview ... iewer.html
Vielleicht kennt ja jemand auch noch etwas aktuelleres als diesen hier.

Das Beispiel oben mit der Funktion "FindWindow" ist eine Deklaration für VB, doch hat man auch noch die Möglichkeit beim ApiViewer das ganze für Purebasic anzeigen zu lassen:

Code: Alles auswählen

OpenLibrary(0,"user32.dll")
CallFunction(0,"FindWindowA",lpClassName.String, lpWindowName.String)
Jedoch wird dann nicht kenntlich gemacht, wie der Rückgabewert aussieht und ob die zu übergebenden Parameter CallByValue oder CallByReference sein müssen.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

@dna
Ist dir eine Api Funktion bekannt die etwas anderes als
nichts oder long zurueck gibt ?
Aber wo bekomme ich nun nähere Informationen über den Aufbau bzw. die Struktur des Handles?
An solchen Dingen tue ich mich immer noch extrem schwer. well...
Gibt's da irgendeine bestimmt Vorgehensweise wie man sowas findet oder gibt es in der MSDN evtl. irgendwo eine Liste mit den Strukturen?
Wenn der interne Aufbau eines zurueckgegebenen
Wertes wichtig fuer dich ist, wird dir das MS mitteilen.
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

edel hat geschrieben:Wenn der interne Aufbau eines zurueckgegebenen
Wertes wichtig fuer dich ist, wird dir das MS mitteilen.
Hab ich mich wirklich so unverständlich ausgedrückt? :roll:
(Habs mal geändert - ist vielleicht jetzt klarer.)
Ich möchte natürlich nicht wissen wie dieser zurückgegebene Longwert aufgebaut ist, sondern informationen über die Struktur auf die das zurückgelieferte Handle verweist.
Zuletzt geändert von PureLust am 16.07.2007 20:30, insgesamt 1-mal geändert.
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
a14xerus
Beiträge: 1440
Registriert: 14.12.2005 15:51
Wohnort: Aachen

Beitrag von a14xerus »

tut es das denn immer????
kannst du uns (oder eher mir) vielleicht eine Beispiel Funktion sagen, wo der Rückgabe wert eine Structure erforder?
Bei den Funktionen die ich bis jetzt benutzt habe ist höchstens eni Übergabewert eine Structurierte variable
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Hab ich mich wirklich so unverständlich ausgedrückt?

ja hast du.

> Aber wo bekomme ich nun nähere Informationen über den Aufbau bzw. die Struktur des Handles?

das Handle hat keine struktur, es ist ein Long.

ich habe auch nicht verstanden, dass du "die Struktur des Objektes auf das das Handle verweist" meintest. sorry.

die struktur eines fensterobjektes selber ist bestimmt auch irgendwo definiert - aber die wirst du auch eher selten brauchen.

das Handle kannst du an dutzende andere API-Funktionen übergeben,
die dir jede gewünschte information über das objekt verschaffen.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

a14xerus hat geschrieben:tut es das denn immer????
kannst du uns (oder eher mir) vielleicht eine Beispiel Funktion sagen, wo der Rückgabe wert eine Structure erforder?
Bei den Funktionen die ich bis jetzt benutzt habe ist höchstens eni Übergabewert eine Structurierte variable
Ist denn ein Handle nicht gleich zu setzen mit dem Zeiger auf eine Struktur?
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Ist denn ein Handle nicht gleich zu setzen mit dem Zeiger auf eine Struktur?

afaik ist das eher sowas wie eine "laufende nummer", sowas wie die IDs in PB...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

@DNA:
Danke, das mit der PB-Syntax im API-Viewer kannte ich noch garnicht. :)

@All:
Danke erst mal für die Hilfe.
Werde mich dann also wohl durch das gigantische MSDN ackern (auch wenn das surfen durch dieses Mamut-Teil mit 'ner 1000er-DSL echt müselgig ist :roll: ).
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

PureLust hat geschrieben:
edel hat geschrieben:Wenn der interne Aufbau eines zurueckgegebenen
Wertes wichtig fuer dich ist, wird dir das MS mitteilen.
Hab ich mich wirklich so unverständlich ausgedrückt? :roll:
(Habs mal geändert - ist vielleicht jetzt klarer.)
Ich möchte natürlich nicht wissen wie dieser zurückgegebene Longwert aufgebaut ist, sondern informationen über die Struktur auf die das zurückgelieferte Handle verweist.
Genauso habe ich das auch verstanden, allerdings wirst
du solche Informationen wohl nicht von Microsoft bekommen,
da es sich dabei um internes Zeug handelt.

Wenn dich der Aufbau interessiert, kannst du dir den Wine
Source anschauen. Ist natuerlich nicht der gleiche, aber
so in etwa sollte es auch unter Windows laufen.
PureLust hat geschrieben: Werde mich dann also wohl durch das gigantische MSDN ackern (auch wenn das surfen durch dieses Mamut-Teil mit 'ner 1000er-DSL echt müselgig ist :roll: ).
Lad dir PSDK herunter, duerfte etwas angenehmer sein. ;)
Antworten