Die Microsoft WinAPI-Dokumentation scheint darauf hinzudeuten, dass user32.dll eine Funktion namens % enthält. co_de% , das erlaubt, offene Fenster in ihrer Z-Reihenfolge aufzuzählen, indem diese Funktion wiederholt aufgerufen wird.
Pinvoke gibt mir normalerweise die notwendige GetNextWindow()
Anweisung, um WinAPI-Funktionen aus C # zu verwenden. Für DllImport
ist jedoch kein Eintrag vorhanden. Also habe ich versucht, mein eigenes zu konstruieren:
Leider, wenn ich versuche, dies zu nennen, bekomme ich ein GetNextWindow()
Sprichwort:
Dies scheint nur für EntryPointNotFoundException
zu gelten; andere Funktionen, die auf Pinvoke aufgeführt sind, sind in Ordnung. Ich kann GetNextWindow()
und GetTopWindow()
aufrufen, ohne eine Ausnahme auszulösen.
Natürlich, wenn Sie eine völlig andere Art vorschlagen können, Fenster in ihrer aktuellen Z-Reihenfolge aufzuzählen, bin ich froh, das auch zu hören.
GetNextWindow () ist eigentlich ein Makro für GetWindow () und nicht eine tatsächliche API-Methode. Es ist für die Abwärtskompatibilität mit der Win16-API.
%Vor%(Von Pinvoke.net )
GetNextWindow ist ein C ++ - Makro, das GetWindow aufruft, sodass Sie es nicht von .NET aufrufen können. Rufen Sie stattdessen GetWindow auf.
Von MSDN :
Die Verwendung dieser Funktion entspricht dem Aufruf der Funktion GetWindow mit dem Flag GW_HWNDNEXT oder GW_HWNDPREV set