<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[screenshot unter vista mit aktiviertem aero?]]></title><description><![CDATA[<p>hallo!</p>
<p>dieser beitrag passt vermutlich ebenso gut in die grafik sektion wie in winapis,falls sich ein mod daran stören sollte würde ich ihn/sie bitten den thread einfach zu verschieben.</p>
<p>zu meiner frage/problem:</p>
<p>ich würde gerne von dx/opengl fenstern screenshots machen unter windows vista,ohne aero deaktivieren zu müssen.</p>
<p>meine zwei ansätze waren folgende:</p>
<p>das std screenshot &quot;verfahren&quot; mittels gdi -&gt;</p>
<p>GetDC<br />
CreateCompatibleDC<br />
CreateCompatibleBitmap<br />
BitBlt</p>
<p>liefert screens vom game menu,schwarze screens oder screens,auf denen teile des desktops zu sehen sind.</p>
<p>funktioniert unter xp/2000 einwandfrei.</p>
<p>gefunden habe ich dazu folgende sache:</p>
<blockquote>
<p>Given that under WDDM the OpenGL ICD relinquishes control over the desktop, fullscreen mode is now achieved by the driver in a similar way to Direct3D's exclusive mode. For that reason do not try to use GDI features on a fullscreen application (e.g. large GDI cursors, doing readbacks via GetDC/BitBlt), as they refer to the desktop which resides in a completely different piece of memory than the 3D rendering.</p>
</blockquote>
<p>eventl hat jemand erfahrung damit und kennt eine lösung.</p>
<p>mein zweiter ansatz benutzt die grafik apis,in dem fall opengl:</p>
<p>1. ich injeziere eine dll in den targetprozess und intercepte wglswapbuffers via inline hooking(detours)<br />
2. ich hole mir fenstergröße über viewport<br />
3. ich &quot;lese&quot; den framebuffer als rohpixel mittels glreadpixels<br />
4. verarbeitung der daten/speichern im gewünschten format</p>
<p>dieses &quot;verfahren&quot; funktioniert sowohl unter xp als auch unter vista,das unschöne daran ist ,dass es ,soweit ich weiss nötig ist wglswappbuffers zu hooken.ausserdem wird wglswapbuffers jede frame aufgerufen,das screenshot machen dauert aber länger als eine frame -&gt; kleines ingame lagg.</p>
<p>eventl. hat ja der eine oder andere erfahrungen zu diesem thema und kann mir weiterhelfen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>ps: &quot;alternativlösungen&quot; a la &quot;printscreen simulieren und dann daten aus der zwischenablage auslesen&quot; würde ich ungern verwenden <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":/"
      alt="😕"
    /></p>
<p>grüße<br />
max</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/223538/screenshot-unter-vista-mit-aktiviertem-aero</link><generator>RSS for Node</generator><lastBuildDate>Mon, 06 Apr 2026 10:14:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/223538.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 27 Sep 2008 07:58:08 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to screenshot unter vista mit aktiviertem aero? on Sat, 27 Sep 2008 07:58:08 GMT]]></title><description><![CDATA[<p>hallo!</p>
<p>dieser beitrag passt vermutlich ebenso gut in die grafik sektion wie in winapis,falls sich ein mod daran stören sollte würde ich ihn/sie bitten den thread einfach zu verschieben.</p>
<p>zu meiner frage/problem:</p>
<p>ich würde gerne von dx/opengl fenstern screenshots machen unter windows vista,ohne aero deaktivieren zu müssen.</p>
<p>meine zwei ansätze waren folgende:</p>
<p>das std screenshot &quot;verfahren&quot; mittels gdi -&gt;</p>
<p>GetDC<br />
CreateCompatibleDC<br />
CreateCompatibleBitmap<br />
BitBlt</p>
<p>liefert screens vom game menu,schwarze screens oder screens,auf denen teile des desktops zu sehen sind.</p>
<p>funktioniert unter xp/2000 einwandfrei.</p>
<p>gefunden habe ich dazu folgende sache:</p>
<blockquote>
<p>Given that under WDDM the OpenGL ICD relinquishes control over the desktop, fullscreen mode is now achieved by the driver in a similar way to Direct3D's exclusive mode. For that reason do not try to use GDI features on a fullscreen application (e.g. large GDI cursors, doing readbacks via GetDC/BitBlt), as they refer to the desktop which resides in a completely different piece of memory than the 3D rendering.</p>
</blockquote>
<p>eventl hat jemand erfahrung damit und kennt eine lösung.</p>
<p>mein zweiter ansatz benutzt die grafik apis,in dem fall opengl:</p>
<p>1. ich injeziere eine dll in den targetprozess und intercepte wglswapbuffers via inline hooking(detours)<br />
2. ich hole mir fenstergröße über viewport<br />
3. ich &quot;lese&quot; den framebuffer als rohpixel mittels glreadpixels<br />
4. verarbeitung der daten/speichern im gewünschten format</p>
<p>dieses &quot;verfahren&quot; funktioniert sowohl unter xp als auch unter vista,das unschöne daran ist ,dass es ,soweit ich weiss nötig ist wglswappbuffers zu hooken.ausserdem wird wglswapbuffers jede frame aufgerufen,das screenshot machen dauert aber länger als eine frame -&gt; kleines ingame lagg.</p>
<p>eventl. hat ja der eine oder andere erfahrungen zu diesem thema und kann mir weiterhelfen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>ps: &quot;alternativlösungen&quot; a la &quot;printscreen simulieren und dann daten aus der zwischenablage auslesen&quot; würde ich ungern verwenden <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":/"
      alt="😕"
    /></p>
<p>grüße<br />
max</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588885</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588885</guid><dc:creator><![CDATA[MaxGru]]></dc:creator><pubDate>Sat, 27 Sep 2008 07:58:08 GMT</pubDate></item><item><title><![CDATA[Reply to screenshot unter vista mit aktiviertem aero? on Sun, 03 May 2009 06:28:13 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>Gibt es dafür schon eine Lösung.<br />
Ich habe das gleiche Problem. Unter XP läuft alles.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1704661</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1704661</guid><dc:creator><![CDATA[Sillo]]></dc:creator><pubDate>Sun, 03 May 2009 06:28:13 GMT</pubDate></item></channel></rss>