Laden...

Prüfen, ob anderes Programm eines Programm überdeckt

Erstellt von Maddinel vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.302 Views
Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 12 Jahren
Prüfen, ob anderes Programm eines Programm überdeckt

Hallo,

ich hätte mal eine etwas speziellere Frage.

Ich führe in einer WPF-Anwednung regelmäßig Aktualierungen durch und möchte diese nicht durchführen, wenn die Anwednung von einem anderen Programm überdeckt wird. Allein die Prüfung, ob die Anwendung den Fokus hat, genügt leider nicht.

Beispiel1:
Die Software liegt auf dem zweiten Bildschirm, hat keinen Fokus (ist aber sichtbar), da auf dem ersten Bildschirm in einem anderen Programm gearbeitet. Hier sollen Aktualisierungen auf dem zweiten Bildschirm stattfinden.

Beispiel2:
Das Gleiche wie in Beispiel1, nur dass das Programm auf dem zweiten Bildschirm von z.B. einem Browser überdeckt wird. Hierbei sollen diesmal keine Aktualisierungen stattfinden, weil das Programm nicht sichtbar ist.

Wie könnten man überprüfen, ob die Anwendung durch ein anderes Fesnter überdeckt wird?

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================

U
189 Beiträge seit 2011
vor 12 Jahren

Hallo Maddinel,
ziemlich kompliziert, ich würde es irgendwie so lösen, dass du mit GetForegroundWindow das aktuelle Fenster und dessen Position abrufst, und mit der Position deines eigenen Fensters vergleichst, Problem wäre jetzt nur dass ja auch nicht aktuelle Fenster vor deinem Programm sein können.
Meiner Meinung bleibt da nur die Möglichkeit alle Positionen aller Fenster zu überprüfen. Vl.etwas umständlich aber es kommen noch bestimmt bessere Ideen hierher

UZI

5.742 Beiträge seit 2007
vor 12 Jahren

Hallo Maddinel,

ich glaube es könnte funktionieren, einen Screenshot von deinem Fenster zu machen (via DrawToBitmap IMHO).
Schwarze Stellen darin sind nicht sichtbar bzw. werden von anderen Fenstern verdeckt.

Hmm - ne, geht nicht.
Ich hatte eigentlich in Erinnerung, dass wenn man versucht, von einem verdeckten Fenster einen Screenshot zu machen, dieser schwarze Elemente enthält.
Ist aber wohl nicht (mehr?) so.

Maddinel Themenstarter:in
1.371 Beiträge seit 2004
vor 12 Jahren

@UZI:
Habe ich fast befürchtet, dass ich alles durchlaufen mus 😦 Dann bin ich mir leider nicht mehr sicher, ob ich das wirklich umsetzen sollte.

@winSharp93:
Coole Idee - schaaade, dass es nicht mehr so zu sein scheint, hätte ich gerne mal getestet.

==============================
Wenn ichs wüsst', würd' ich nicht fragen!!! 😁
==============================