Screenshot von inaktiven Fenster machen, wie?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
onny
Beiträge: 400
Registriert: 27.04.2005 17:50
Kontaktdaten:

Screenshot von inaktiven Fenster machen, wie?

Beitrag von onny »

Hi, wie mach ich ein Screenshot von einem Fenster das im Hintergrund liegt? :?

Vielen Dank für kommende Antworten :)
Benutzeravatar
hardfalcon
Beiträge: 3447
Registriert: 29.08.2004 20:46

Beitrag von hardfalcon »

Jilocasin
Beiträge: 665
Registriert: 13.05.2006 16:04
Kontaktdaten:

Beitrag von Jilocasin »

Tja, nicht ganz...

Die Koordinaten stimmen zwar, aber irgendwie grabbt er dennoch den aktuellen Bildschirm, d.h. ist das Fenster verdeckt, stimmt's nicht mehr :)
Bild
Benutzeravatar
onny
Beiträge: 400
Registriert: 27.04.2005 17:50
Kontaktdaten:

Beitrag von onny »

zeigt mir immer nur einen AUSSCHNITT vom fenster im FORDERGRUND an :(

hatte diesen code schoneinmal :( aber danke für deine antwort :)
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

das geht doch überhaupt nicht.
ein verdecktes/deaktiviertes fenster liegt nirgendwo als grafik rum,
das muss komplett refresht werden beim aktivieren,
d.h. der komplette fensterinhalt wird neu gezeichnet.

wenn es sich bei dem fensterinhalt nur um einen grafik-buffer handelt (wie z.b. ein windowedscreen),
dann könnte man direkt auf den buffer zugreifen, über irgendwelche DCs.
also das könnte gehen,
aber irgendwelche gadgets kann man nicht "screenshotten", wenn sie nicht angezeigt werden.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
onny
Beiträge: 400
Registriert: 27.04.2005 17:50
Kontaktdaten:

Beitrag von onny »

sicher? ich meine programme für winxp die den windows vista taskmanager simulieren können fensterinhalte anzeigen.

sowas gibts (zB) auch für XP:
Bild

Ist warscheinlich für mich als Anfänger weniger umsetzbar, aber wie geht man am besten vor oO?
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

mal ins blaue geraten:
du müßtest dem fenster einen anderen grafik-buffer vorgaukeln als den desktop,
und dann ein refresh senden, damit es seine information in den buffer darstellt....
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
onny
Beiträge: 400
Registriert: 27.04.2005 17:50
Kontaktdaten:

Beitrag von onny »

:shock: hm :?
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Ebenfalls mal ins Blaue geraten:
Ich denke die Technik ist die gleiche wie beim IE7 wo es diese Vorschauseite gibt wo alle geöffneten Seiten als Miniaturansicht dargestellt werden. Der Screenshot wird nicht nachträglich gemacht sondern in dem Moment wo ein Fenster/Tab den Fokus verliert bzw. minimiert/versteckt wird.
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
nco2k
Beiträge: 892
Registriert: 08.09.2004 23:13

Beitrag von nco2k »

nicht bei vista, das fenster wird in "echtzeit" als miniaturansicht dargestellt, sprich: falls ein movie drauf läuft, oder eine progressbar ihren wert verändert (obwohl das fenster minimiert ist) wird die änderung angezeigt. aber das ganze wird sowieso über directx gesteuert, von daher...

edit: minimiert funktionierts doch nur bei videos.

c ya,
nco2k
Zuletzt geändert von nco2k am 15.03.2007 19:24, insgesamt 1-mal geändert.
~|__/
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
Antworten