<?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[Über Handles]]></title><description><![CDATA[<p>Hallo!</p>
<p>Handles werden ja unter Windows bekanntlich dazu verwendet um dem Kernel die alleinigen Zugriffsrechte auf ein bestimmtes Objekt zu geben. Er kann es dadurch im Speicher herumschieben usw.<br />
Jetzt frage ich mich, ob alle APIs, die Handles verwenden (angefangen bei HWND Zeugs über GDI und und und) schlussendlich ihre Arbeit im Kernelmode verrichten oder ob der Object Manager (das Kernelmodul, das sich um die Handles kümmert) auch eine Funktion im UserMode aufrufen kann um die Daten an dem eigentlichen Objekt hinter einem Handle zu verändern.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/136264/über-handles</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Jul 2026 13:23:20 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/136264.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 08 Feb 2006 17:08:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Über Handles on Wed, 08 Feb 2006 17:08:18 GMT]]></title><description><![CDATA[<p>Hallo!</p>
<p>Handles werden ja unter Windows bekanntlich dazu verwendet um dem Kernel die alleinigen Zugriffsrechte auf ein bestimmtes Objekt zu geben. Er kann es dadurch im Speicher herumschieben usw.<br />
Jetzt frage ich mich, ob alle APIs, die Handles verwenden (angefangen bei HWND Zeugs über GDI und und und) schlussendlich ihre Arbeit im Kernelmode verrichten oder ob der Object Manager (das Kernelmodul, das sich um die Handles kümmert) auch eine Funktion im UserMode aufrufen kann um die Daten an dem eigentlichen Objekt hinter einem Handle zu verändern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/989531</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/989531</guid><dc:creator><![CDATA[tommazzo]]></dc:creator><pubDate>Wed, 08 Feb 2006 17:08:18 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Fri, 10 Feb 2006 19:57:44 GMT]]></title><description><![CDATA[<p>tommazzo schrieb:</p>
<blockquote>
<p>Handles werden ja unter Windows bekanntlich dazu verwendet um dem Kernel die alleinigen Zugriffsrechte auf ein bestimmtes Objekt zu geben.</p>
</blockquote>
<p>Nein. Handles werden nur dazu verwendet, um in einem bestimmten Prozess auf ein Bestimtes Objekt im Objekt-Manager zu verweisen. Ein Objekt kann aber von mehreren Prozessen verweisen werden (z.B. Mutex/Event/Memory-Mapped-Files/usw.).</p>
<p>tommazzo schrieb:</p>
<blockquote>
<p>Er kann es dadurch im Speicher herumschieben usw.</p>
</blockquote>
<p>??? Ein Handle ist einfach eine Zahl, welches auf eine internen Liste des Prozesses verweist...</p>
<p>tommazzo schrieb:</p>
<blockquote>
<p>Jetzt frage ich mich, ob alle APIs, die Handles verwenden (angefangen bei HWND Zeugs über GDI und und und) schlussendlich ihre Arbeit im Kernelmode verrichten oder ob der Object Manager (das Kernelmodul, das sich um die Handles kümmert) auch eine Funktion im UserMode aufrufen kann um die Daten an dem eigentlichen Objekt hinter einem Handle zu verändern.</p>
</blockquote>
<p>Die Frage verstehe ich nicht... das Objekt kann sich natürlich jederzeit ändern, da ja mehrere Zugriff auf das gleiche Objekt haben können...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/991172</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991172</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Fri, 10 Feb 2006 19:57:44 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Fri, 10 Feb 2006 21:36:35 GMT]]></title><description><![CDATA[<p>Meine Hauptfrage war im Prinzip:<br />
Sitzt der Code, der die Datenstrukturen manipuliert, auf die die Handles im Object-Manager verweisen, nur im Kernel oder kann der auch im Usermode laufen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/991227</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991227</guid><dc:creator><![CDATA[tommazzo]]></dc:creator><pubDate>Fri, 10 Feb 2006 21:36:35 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Fri, 10 Feb 2006 21:59:22 GMT]]></title><description><![CDATA[<p>Welche Datenstruktur meinst Du denn jetzt? Die Handles sind im ObjektManager eingetragen und somit sind sie im Kernel-Mode...<br />
Siehe auch:<br />
<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/Kernel_r/hh/Kernel_r/k107_d834e79e-f50e-4441-8a8a-9b093a0f77ab.xml.asp" rel="nofollow">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/Kernel_r/hh/Kernel_r/k107_d834e79e-f50e-4441-8a8a-9b093a0f77ab.xml.asp</a></p>
<p><strong>Add:</strong> PS: Wenn Du Deine Frage so gestellt hättest wie in &quot;microsoft.public.win32.programmer.kernel&quot; wäre sie auch einfacher verständlich gewesen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/991237</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991237</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Fri, 10 Feb 2006 21:59:22 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Sat, 11 Feb 2006 14:43:24 GMT]]></title><description><![CDATA[<p>Jochen Kalmbach schrieb:</p>
<blockquote>
<p><strong>Add:</strong> PS: Wenn Du Deine Frage so gestellt hättest wie in &quot;microsoft.public.win32.programmer.kernel&quot; wäre sie auch einfacher verständlich gewesen <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
</blockquote>
<p>Ja ich sollte wohl lernen mich besser auszudrücken :), so wie <a href="http://msdn.microsoft.com/newsgroups/default.aspx?dg=microsoft.public.win32.programmer.kernel&amp;tid=ea642511-3bd4-4ae0-89cd-2aec0df68cce&amp;p=1&amp;ntf=0" rel="nofollow">hier</a></p>
<p>Eine Frage muss ich jetzt doch noch anhängen:<br />
Sitzt GDI und die restliche GUI komplett im Kernel oder nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/991597</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991597</guid><dc:creator><![CDATA[tommazzo]]></dc:creator><pubDate>Sat, 11 Feb 2006 14:43:24 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Sat, 11 Feb 2006 14:49:28 GMT]]></title><description><![CDATA[<p>GDI (oder besser gesagt die Fenster- und Nachrichtenverwaltung) sitzt im Kernel. Der Grund war einfach: bessere Performance</p>
]]></description><link>https://www.c-plusplus.net/forum/post/991601</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991601</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Sat, 11 Feb 2006 14:49:28 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Sat, 11 Feb 2006 15:55:08 GMT]]></title><description><![CDATA[<p>Das ist einläuchtend. Also ein Teil sitzt im Kernel, der Rest im Usermode.<br />
Vielen Dank nochmal!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/991640</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991640</guid><dc:creator><![CDATA[tommazzo]]></dc:creator><pubDate>Sat, 11 Feb 2006 15:55:08 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Sat, 11 Feb 2006 18:53:07 GMT]]></title><description><![CDATA[<p>Kümmert der Object Manager sich nicht eigentlich nur um die Kernel-Objekte und nicht die User- und GDI-Objekte?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/991747</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991747</guid><dc:creator><![CDATA[masterofx32]]></dc:creator><pubDate>Sat, 11 Feb 2006 18:53:07 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Sat, 11 Feb 2006 19:03:21 GMT]]></title><description><![CDATA[<p>Ja, die GDI-Objekte haben AFAIk nichts mit dem Object-Manager zu tun... müsste mich aber jetzt aber zuerst auch mal genau schlau machen, wie und wo diese verwaltet werden...PS: Wurde das nicht im Video erklärt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/991754</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991754</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Sat, 11 Feb 2006 19:03:21 GMT</pubDate></item><item><title><![CDATA[Reply to Über Handles on Sat, 11 Feb 2006 20:13:54 GMT]]></title><description><![CDATA[<p>Nein, im Video wurde nur erklärt wie der Object Manager selbst arbeitet, wie Handles aufgebaut sind und dass Requests weitergeleitet werden können (Bsp anhand von Registry und FS), aber über GDI haben sie kein Wort verloren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/991818</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/991818</guid><dc:creator><![CDATA[tommazzo]]></dc:creator><pubDate>Sat, 11 Feb 2006 20:13:54 GMT</pubDate></item></channel></rss>