Laden...

Problem: Screenshoterstellung bei minimiertem Fenster

Erstellt von InspectionCaptain vor 7 Jahren Letzter Beitrag vor 7 Jahren 1.351 Views
I
InspectionCaptain Themenstarter:in
1 Beiträge seit 2016
vor 7 Jahren
Problem: Screenshoterstellung bei minimiertem Fenster

Hallo,

ich bin auf der Suche nach einer Möglichkeit einen Screenshot von einem bestimmten Prozess(windowhandle) zu machen.
Problem: Bei minimierten Fenstern muss man eine gewisse Zeitverzögerung(thread.sleep) einbauen, sodass das Fenster genug Zeit hat sich aufzubauen, ansonsten erhält man ein leeres Bild.
-> Die nötige Zeitverzögerung ist von System zu System sehr unterschiedlich.

Der Versuch war es anstatt mit einer Zeitverzögerung eine Abfrage zu machen mit gesuchtem Windowhandle = GetForegroundWindow (if true..). Das funktioniert auch nicht, da GetForegroundWindow schon das Windowhandle liefert, bevor das Fenster vollständig aufgebaut ist.

Kennt jemand eine Möglichkeit dieses Problem in den Griff zu bekommen? Ich bin für alle Hilfe sehr dankbar, mache da schon tagelang rum.
Diverse Foren (auch dieses), SDK, MSDN habe ich schon durchforstet mit verschiedensten Suchanfragen, ohne Erfolg.

Grüße
InspectionCaptain

T
708 Beiträge seit 2008
vor 7 Jahren

Hi,

versucht doch mal diesen Weg: Capturing Minimized Window: A Kid’s Trick

Zum einen wird dort die Animation unterbunden, was den Prozess beschleunigt, zum anderen das Fenster auf Transparent gesetzt, so dass es der Benutzer nicht zu Gesicht bekommt.

Ob dort auch gewartet oder gepollt wird ob das Fenster bereits fertig ist, sollte sich dann aus dem Code ergeben. Habe das Projekt jetzt nicht runtergeladen.