[Delphi/WinAPI] Vollbild anderer Programme feststellen?

AndrewPoison

Admiral Pro
✍️Leserartikel-Schreiber
Registriert
Jan. 2005
Beiträge
8.597
Hallöchen, ich hab da ma wieder ein kleines Problemchen das ich mit meinen bisherigen Kentnissen nicht lösen kann. Wie kann ich herausfinden, ob eine andere Anwendung "fullscreen" läuft, und damit meine ich nicht maximiert, sondern eben fullscreen. Hauptsächliches Problem sollte wohl darstellen das es ja verschiedene Möglichkeiten dafür gibt: sei ein DirectX-Spiel, etwas in OpenGl oder ein Video das grade in Fullscreen abgespielt wird. Egal ob es nun per Overlay oder im Primary-Modus geschieht. Gibt es eine Möglichkeit soetwas auf irgendeine weise in Delphi oder mit Hilfe der WinAPI abzufragen? Und wenn nicht alles davon, wenigstens Teile? Problematisch ist ja auch das man z.B. nicht einfach abfragen kann ob ein DirectX/OpenGL/Overlay-Interface bereits existiert, denn diese müssen ja nicht zwangsweise fullscreen sein.

Hoffe ihr könnt mich mit reichhaltigen Links, Codes oder dergleichen füttern... bin heut besonders hungrig ;)
 
Mittels FindWindow/EnumWindow kannst Du Dir alle Fensterhandles geben lassen.
Damit kannst Du auch alle Koordinaten aller Fenster geben lassen.

Ebenso ist die Stacking Order der Fenster festzustellen.
Wenn Du dann noch die Grösse des aktuellen Desktops hast, kannst Du feststellen ob ein Fenster ein sichtbares Rechteck hat.

Falls ja ist keine Anwendung im Fullscreen Modus. Soweit die Theorie, ob das auch funktioniert wenn ein DirectX Programm auf Fullscreen schaltet? Da hilft nur ausprobieren.

MfG

Arnd
 
ich werd mal damit hantieren, vlt. kommt was brauchbares raus ;)
 
Zurück
Oben