Screenshot vom Fester im Hintergrund
-
Hi,
ich möchte gerne einen Screenshot von einem Fester machen, welches sich hinter anderen Fenstern befindet.
Ich benutze folgenden Code
HWND handle = GetForegroundWindow(); TCanvas* canvas = new TCanvas(); canvas->Handle = GetWindowDC(handle); TRect Dest = Image1->ClientRect; TRect Source; GetWindowRect(handle, (LPRECT)&Source); Image1->Canvas->CopyRect(Dest, canvas, Source); delete canvas;Leider werden andere Fenster die über dem gewünschten Fenster liegen mit aufs Image geladen.
Gibt es eine Möglichkeit einen Screenshot nur von dem gewünschten Fenster zu machen, was sich im Hintergrund befindet?
Kleiner Nachtrag: Statt GetForegroundwindow nehme ich natürlich den handle des gewünschten Fensters.
Ich danke für Eure Hilfe!
ravel
-
Das ist eher nicht möglich, denn Windows GDI ist in dem Kontext nicht Multi-Layer fähig, denke ich

-
Hi,
das wäre nicht gut.
Gibt es denn eine Möglichkeit das Fenster kurz unsichtbar in den Vordergrund zu bringen, nen Screenshot zu machen und es wieder zurück zu schieben?Oder irgendwelche anderen Tricks?
Das Fenster darf aber nicht im Vordergrund gesehen werden oder die Arbeit am aktiven Fenster behindern.
Ich danke für Eure Hilfe!
Gruß
ravel