Screenshot control

29/07/2009 - 11:04 von Charles Panke | Report spam
Hallo zusammen!

Ich benutze Haralds screenshot control:
http://www.aboutvb.de/kom/artikel/k...enshot.htm

Das funktioniert bestens, aber leider unter Win7 nicht mit im
Modus ssClientRect.
Knipsen will ich ein control das OpenGL verwendet.
Dann bleibt das zurueckgegebene image leer, hat aber die richtige
Groesse.

Ein screenshot des gesamten Schirms funktioniert.

Jetzt koennte ich natuerlich einen screenshot des ganzen Schirms
machen und das Rechteck des zu fotografierenden controls nachtraeglich
rausfummeln, nicht gerade elegant.
Lieber wuerde ich die Ursache finden.

Unter < Win7 funktioniert alles.
In einer VM mit Win7 auch.

Auf einem echten PC leider nicht.
Aero abschalten ist keine Option.

Jemand ne Idee, was ich versuchen kann? Harald?


Danke und einen schoenen Tag noch,
-C-H-A-R-L-E-S-
 

Lesen sie die antworten

#1 Harald M. Genauck
29/07/2009 - 13:38 | Warnen spam
Hallo Charles,

Ich benutze Haralds screenshot control:
http://www.aboutvb.de/kom/artikel/k...enshot.htm

Das funktioniert bestens, aber leider unter Win7 nicht mit im
Modus ssClientRect.
Knipsen will ich ein control das OpenGL verwendet.
Dann bleibt das zurueckgegebene image leer, hat aber die richtige
Groesse.

Ein screenshot des gesamten Schirms funktioniert.

Jetzt koennte ich natuerlich einen screenshot des ganzen Schirms
machen und das Rechteck des zu fotografierenden controls
nachtraeglich
rausfummeln, nicht gerade elegant.
Lieber wuerde ich die Ursache finden.

Unter < Win7 funktioniert alles.



Bei Win7 ist der DWM modifiziert worden, um eben gerade die Integration
von DirectX und OpenGL zu verbessern.

In einer VM mit Win7 auch.



Zum einen liefert eine VM meines Wissens dem DWM ein fertig gerendertes
Abbild, der dann natürlich keine Probleme damit hat.

Zum anderen mag das vielleicht auch von der VM abhàngen, wie sie intern
das Ganze rendert und dann abliefert. Möglicherweise macht sie ja auch
nichts anderes, als gesamte Screenshots zu erstellen und zu liefern.

Es könnte auch sein, dass der kommende Windows Virtual PC (der zu
Windows 7 passende Nachfolger von Virtual PC 2007) ebenfalls nicht
damit zurechtkommt - reine Spekulation, auf der Information beruhend,
dass dort auch Aero beim Clientssystem darstellbar sein soll.

Aber als ich das Control geschrieben habe (Ende 1999), gab es noch
keine VMs und kein Aero ...
:-)

Auf einem echten PC leider nicht.
Aero abschalten ist keine Option.

Jemand ne Idee, was ich versuchen kann? Harald?



Leider keine konkrete Idee.

Einzige vage Idee wàre, sich durch die Fenster und deren DCs aufwàrts
zu hangeln - vielleicht kommt da irgendetwas schon unterhalb des
Screen-DCs heraus.

Da ich nichts OpenGL-màßiges zur Hand habe (zumindest nichts bewusst
Installiertes), kann ich leider auch nicht selber testen ...
:-(

Apropos VM ... wie sieht es denn bei einem Remote-Desktop, Win7 und
abwàrts sowohl als Client als auch als Host, aus?


Viele Grüße

Harald M. Genauck

"VISUAL STUDIO one" - http://www.visualstudio1.de (Chefredakteur)
"ABOUT Visual Basic" - http://www.aboutvb.de (Herausgeber)

Ähnliche fragen