<?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[Hooks - Mausklick unterdrücken]]></title><description><![CDATA[<p>Moin Moin,</p>
<p>ich hätte da noch eine Frage zu Hooks :).</p>
<p>Wie kann ich mit einem Maus-Hook den Linksklick der Maus global unterdrücken?</p>
<p>Ich möchte eine Anwendung schreiben, welche mir aus fremden Anwendungen Informationten zu dem Steuerelement gibt über welches die Maus sich gerade befindet, also Klassenname, Handle, Text, etc. Mittels Linksklick soll dieses Element dann in meiner Anwendung 'fixiert' werden. Das Problem ist halt, dass der Linksklick logischerweise auch eine Aktion in dem entsprechenden Element der fremden Anwendung auslöst und dass möchte ich halt verhindern.</p>
<p>Ich habe schon versucht die Maus-Nachricht in der Callback-Funktion meines Maus-Hooks zu unterdrücken aber das scheint irgendwie nicht zu funktionieren.</p>
<p>Ich hoffe, hier kann mir jemand helfen :).</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/207826/hooks-mausklick-unterdrücken</link><generator>RSS for Node</generator><lastBuildDate>Sat, 25 Apr 2026 13:29:30 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/207826.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 12 Mar 2008 08:02:01 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 08:02:01 GMT]]></title><description><![CDATA[<p>Moin Moin,</p>
<p>ich hätte da noch eine Frage zu Hooks :).</p>
<p>Wie kann ich mit einem Maus-Hook den Linksklick der Maus global unterdrücken?</p>
<p>Ich möchte eine Anwendung schreiben, welche mir aus fremden Anwendungen Informationten zu dem Steuerelement gibt über welches die Maus sich gerade befindet, also Klassenname, Handle, Text, etc. Mittels Linksklick soll dieses Element dann in meiner Anwendung 'fixiert' werden. Das Problem ist halt, dass der Linksklick logischerweise auch eine Aktion in dem entsprechenden Element der fremden Anwendung auslöst und dass möchte ich halt verhindern.</p>
<p>Ich habe schon versucht die Maus-Nachricht in der Callback-Funktion meines Maus-Hooks zu unterdrücken aber das scheint irgendwie nicht zu funktionieren.</p>
<p>Ich hoffe, hier kann mir jemand helfen :).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472552</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472552</guid><dc:creator><![CDATA[Rahvin]]></dc:creator><pubDate>Wed, 12 Mar 2008 08:02:01 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 09:27:24 GMT]]></title><description><![CDATA[<p>Willst Du nur in diesem Moment den Mausklick haben?<br />
Dann könntest DU für die Zeit dieses Vorganges ein unsichtbares Fenster über den Desktop legen und die Mausklicks dadruch abfangen.</p>
<p>Oder würde Dir in diesem Fall eine Auswahlfunktion genügen wie Spy++ es macht. In diesem Falle genügt SetCapture!</p>
<p>Nur wenn Du bleibend Mausklicks abfangen willst dann benötigst Du einen Hook!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472615</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472615</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 12 Mar 2008 09:27:24 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 09:47:39 GMT]]></title><description><![CDATA[<p>Es soll so ähnlich ablaufen wie bei Spy++, nur das ich die Capture-Funktion per Mausklick aktivieren und durch erneuten Mausklick wieder deaktivieren möchte, also nicht per Drag-And-Drop, so wie es Spy++ macht.</p>
<blockquote>
<p>Willst Du nur in diesem Moment den Mausklick haben?<br />
Dann könntest DU für die Zeit dieses Vorganges ein unsichtbares Fenster über den Desktop legen und die Mausklicks dadruch abfangen.</p>
</blockquote>
<p>Das geht leider nicht, da ich mittels Hook das Handle des Fensters herausfiltere über das sich die Maus gerade befindet. Wenn ich nun ein unsichtbares Fenster über den Desktop legen würde, dann würde ich ja immer nur dessen Handle bekommen.</p>
<blockquote>
<p>In diesem Falle genügt SetCapture!</p>
</blockquote>
<p>Mit SetCapture bekomme ich doch nicht den MouseInput, bzw. das Handle eines Fensters aus einem andere Prozess oder doch? MSDN sagt da folgendes:</p>
<blockquote>
<p>The SetCapture function sets the mouse capture to the specified window belonging to the current thread. SetCapture captures mouse input either when the mouse is over the capturing window, or when the mouse button was pressed while the mouse was over the capturing window and the button is still down. Only one window at a time can capture the mouse.</p>
</blockquote>
<blockquote>
<p>This function cannot be used to capture mouse input meant for another process.</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1472626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472626</guid><dc:creator><![CDATA[Rahvin]]></dc:creator><pubDate>Wed, 12 Mar 2008 09:47:39 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 10:28:09 GMT]]></title><description><![CDATA[<p>Ich weiß nicht was Du eigentlich willst.<br />
Um ein Fenster anhand einer Mausposition zu finden brauche ich keinen Hook. Das geht easy mit WindowFromPoint/ChildWindowFromPoint<br />
Und die Infos, welcher Prozess usw. das ist gibt es mit GetWindowThreadProcessId.</p>
<p>Keine Hexerei mit Hooks! Also was willst Du?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472648</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472648</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 12 Mar 2008 10:28:09 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 10:44:09 GMT]]></title><description><![CDATA[<p>Also:</p>
<p>Ich will, ähnlich wie es Spy++ macht, mir Infos zu den Steuerelementen eines Fensters anzeigen lassen, wenn ich mit der Maus darüber fahre (ohne eine Maustaste gedrückt zu halten). Wenn ich nun mit der linken Maustaste auf ein beliebiges Steuerelement klicke, will ich dieses Element in meiner Anwendung fokussieren und weitere Informationen anzeigen, sowie die Möglichkeit geben Nachrichten die dieses Fenster versendet und empfängt aufzeichnen zu lassen.</p>
<p>Das Problem ist halt, das ein Linksklick auf ein Steuerelement (in einer anderen Anwendung), z.B. auf einen Button, natürlich das onClick-Ereignis dieses Buttons auslöst. Genau das will ich aber verhindern solange die 'Capture-Funktion' in meiner Anwendung aktiv ist.</p>
<blockquote>
<p>Das geht easy mit WindowFromPoint/ChildWindowFromPoint</p>
</blockquote>
<p>Weißt Du was diese Funktionen genau machen? Wie wird da intern das Handle ermittelt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472668</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472668</guid><dc:creator><![CDATA[Rahvin]]></dc:creator><pubDate>Wed, 12 Mar 2008 10:44:09 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 11:31:26 GMT]]></title><description><![CDATA[<p>Rahvin schrieb:</p>
<blockquote>
<blockquote>
<p>Das geht easy mit WindowFromPoint/ChildWindowFromPoint</p>
</blockquote>
<p>Weißt Du was diese Funktionen genau machen? Wie wird da intern das Handle ermittelt?</p>
</blockquote>
<p>So langsam wird das schon echt nervig hier <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /> mit dem Heute-ist-total-in-Schlagwort &quot;Hooks&quot; hier im Forum.<br />
Anscheinend schwappt hier eine Welle von &quot;Möchtegern-Profi-Programmierern&quot; über die alles über Hooks Bescheid wissen oder wissen möchten, aber nicht mal die elementarste Grundlage beherrscht:</p>
<p><strong>Nutze die Suche im Forum, Google oder MSDN</strong>!</p>
<p>Erst recht wenn einer eine simple Funktion wie <em>WindowFromPoint()</em> nicht versteht... (jedenfalls simpel verglichen mit den Hook-Techniken)</p>
<p>Martin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472704</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472704</guid><dc:creator><![CDATA[Mmacher]]></dc:creator><pubDate>Wed, 12 Mar 2008 11:31:26 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 11:53:06 GMT]]></title><description><![CDATA[<blockquote>
<p>So langsam wird das schon echt nervig hier <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /> mit dem Heute-ist-total-in-Schlagwort &quot;Hooks&quot; hier im Forum.<br />
Anscheinend schwappt hier eine Welle von &quot;Möchtegern-Profi-Programmierern&quot; über die alles über Hooks Bescheid wissen oder wissen möchten, aber nicht mal die elementarste Grundlage beherrscht:</p>
<p>Nutze die Suche im Forum, Google oder MSDN!</p>
<p>Erst recht wenn einer eine simple Funktion wie WindowFromPoint() nicht versteht... (jedenfalls simpel verglichen mit den Hook-Techniken)</p>
<p>Martin</p>
</blockquote>
<p>Danke für deinen konstruktiven Beitrag <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    />.</p>
<p>Nur zur Info:<br />
Ich bin gelernter und studierter Informatiker bzw. Anwendungsentwickler und Sun Certifief Java Programmer. Leider bin ich bis jetzt mit C/C++ nur rudimentär in Kontakt gekommen und habe gehofft, dass mir hier freundlich geholfen werden kann.<br />
Hooks brauche ich für eine Abschlussarbeit und nicht um irgendwelchen Scheiß damit zu machen. Um mich in das Thema zu vertiefen probiere ich die eine oder andere Sache aus, auch wenn dazu Hooks nicht unbedingt notwendig wären. Meistens bekommt man problembezogene Hilfe eher in einem Forum als in der msdn oder gedruckter Literatur.</p>
<blockquote>
<p>Erst recht wenn einer eine simple Funktion wie WindowFromPoint() nicht versteht</p>
</blockquote>
<p>Was die Funktion bewirkt ist mir klar. Da du ja scheinbar ein Fachmann bist, kannst du mir bestimmt auch erkläten, wie die Funktion genau intern funktioniert und wie sie das jeweilige Fenster bestimmt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472719</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472719</guid><dc:creator><![CDATA[Rahvin]]></dc:creator><pubDate>Wed, 12 Mar 2008 11:53:06 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 12:56:49 GMT]]></title><description><![CDATA[<p>Dies ist eine interne Funktion der Windows API. Sie läuft den Baum aller Fenster durch und bestimmt welches fenster an diesem Punkt nicht verdekct und eben sichtbar ist.</p>
<p>Was wilst Du denn sonst noch wissen, was in der Funktionebeschreibung nicht steht?<br />
Ich verstehe Deine Frage in keiner Weise!</p>
<p>Ansonsten &quot;nervt&quot; mich das Thema Hooks auch gewaltig, weil immer wieder mit solchen Kanonen auf Spatzen geschossen wird.<br />
Wen Du natürlich aufzeichnen willst musst Du wie Spy++ eine DLL in die entsprechende WindowProc injezieren. Dies führt wie bei Spy++ zu einer allgemeinen Destabilisierung des Systems, wenn das zuviele Fenster und Hooks werden, oder wnen ganz und gar noch der Debugger aktiv ist.</p>
<p>Warum willst Du dass, wenn Spy++ vorhanden ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472798</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472798</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 12 Mar 2008 12:56:49 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 13:10:01 GMT]]></title><description><![CDATA[<p>Also, mir sind die Gefahren und Risiken von Hooks durchaus bewusst und mir ist auch bewusst, dass man sie, wenn nicht wirklich benötig, nicht benutzen sollte.</p>
<p>Allerdings schreibe ich, wie gesagt, eine Arbeit über Hooks und muss irgendwo anfangen. Daher wollte ich eine Anwendung ähnlich Spy++ schreiben um das Ganze selbst besser zu verstehen und darauf aufbauen zu können. Die Ergebnisse werde ich dann mit in die Arbeit einfließen lassen.</p>
<p>Ich bekomme hoffentlich in dieser Woche von Amazon noch etwas Literatur. Vielleicht werde ich dadurch noch etwas schlauer. Wie bereits gesagt, finde ich es in Foren sehr angenehm, das man dort von Leuten mit Fachkentnissen Antworten auf problemspezifische Fragen bekommt, die man in der Literatur nicht so einfach oder gar nicht findet. Meine eigentlich Frage hatte ja auch nichts mit WindowFromPoint() zu tun, sondern lautete: &quot;Wie kann ich mit einem Maus-Hook den Linksklick der Maus global unterdrücken?&quot;</p>
<p>Wenn darauf niemand antworten kann oder möchte ist das ja ok. Trotzdem möchte ich mich für die bereits gegebenen Antworten bedanken.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472810</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472810</guid><dc:creator><![CDATA[Rahvin]]></dc:creator><pubDate>Wed, 12 Mar 2008 13:10:01 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 13:17:16 GMT]]></title><description><![CDATA[<p>Rahvin schrieb:</p>
<blockquote>
<p>Ich bin gelernter und studierter Informatiker bzw. Anwendungsentwickler und Sun Certifief Java Programmer.</p>
</blockquote>
<p>wow. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> dafür bist du aber ziemlich inkompetent.</p>
<blockquote>
<p>Leider bin ich bis jetzt mit C/C++ nur rudimentär in Kontakt gekommen und habe gehofft, dass mir hier freundlich geholfen werden kann.</p>
</blockquote>
<p>wird dir auch, aber hier macht keine deine arbeit für dich. wenn du wissen willst wie xyz funktioniert, dann lies die dokumentation zu xyz.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472819</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472819</guid><dc:creator><![CDATA[rechtgeber]]></dc:creator><pubDate>Wed, 12 Mar 2008 13:17:16 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 13:18:46 GMT]]></title><description><![CDATA[<p>SetCapture!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472824</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472824</guid><dc:creator><![CDATA[lösung]]></dc:creator><pubDate>Wed, 12 Mar 2008 13:18:46 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 13:26:26 GMT]]></title><description><![CDATA[<p>@rechtgeber:<br />
omg, ich glaub ich lasse das heute besser, das führt hier scheinbar nirgendwo hin.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472836</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472836</guid><dc:creator><![CDATA[Rahvin]]></dc:creator><pubDate>Wed, 12 Mar 2008 13:26:26 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 13:27:05 GMT]]></title><description><![CDATA[<p>gelernter spacko und besserwisser, dazu noch certified falschposter und lernresistent von geburt an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472838</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472838</guid><dc:creator><![CDATA[rechtgeber]]></dc:creator><pubDate>Wed, 12 Mar 2008 13:27:05 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 13:30:13 GMT]]></title><description><![CDATA[<p><a href="http://gidf.de" rel="nofollow">gidf.de</a><br />
Aber trotzdem:<br />
WH_MOUSE_LL und return 1</p>
<p><a href="http://www.themssforum.com/VC/Remove-mouse/" rel="nofollow">http://www.themssforum.com/VC/Remove-mouse/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472841</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Wed, 12 Mar 2008 13:30:13 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 13:39:39 GMT]]></title><description><![CDATA[<p>rechtgeber schrieb:</p>
<blockquote>
<p>gelernter spacko und besserwisser, dazu noch certified falschposter und lernresistent von geburt an.</p>
</blockquote>
<p>Das schöne ist, dass sich manche Leute durch ihre Posts selber bloßstellen. Das erspart dann eigentlich jeglichen Kommentar <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472843</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472843</guid><dc:creator><![CDATA[Rahvin]]></dc:creator><pubDate>Wed, 12 Mar 2008 13:39:39 GMT</pubDate></item><item><title><![CDATA[Reply to Hooks - Mausklick unterdrücken on Wed, 12 Mar 2008 13:39:17 GMT]]></title><description><![CDATA[<p>Jochen Kalmbach schrieb:</p>
<blockquote>
<p><a href="http://gidf.de" rel="nofollow">gidf.de</a><br />
Aber trotzdem:<br />
WH_MOUSE_LL und return 1</p>
<p><a href="http://www.themssforum.com/VC/Remove-mouse/" rel="nofollow">http://www.themssforum.com/VC/Remove-mouse/</a></p>
</blockquote>
<p>Danke für die Antwort!</p>
<p>Eins noch zum Schluß:</p>
<p>Tut mir leid, falls es etwas Großkotzig rübergekommen sein sollte aber ich möchte mich halt ungern als 'Möchtegern-Profi-Programmierer' bezeichnen lassen. Ich denke das die meisten hier sehr viel Ahnung von Ihrer Materie haben aber in anderen Bereichen auch eher 'unerfahren' oder neu sind. Ich denke jeder hier ist dankbar, wenn er zu einem Thema in welchem er kein Profi ist eine sachliche Antwort bekommt. Die Informatik ist ein zu großes Gebiet um in allen Bereichen ein Experte zu sein.</p>
<p>Ich bin mir sicher, das ich dem einen oder anderen Klugscheißer in <strong>meinen</strong> Fachgebieten auch noch einiges beibringen könnte. Daher finde ich solche unqualifizierten Posts wie</p>
<blockquote>
<p>wow. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> dafür bist du aber ziemlich inkompetent.</p>
</blockquote>
<p>oder</p>
<blockquote>
<p>gelernter spacko und besserwisser, dazu noch certified falschposter und lernresistent von geburt an.</p>
</blockquote>
<p>eigentlich immer wieder sprechend für den Charakter des Posters.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1472854</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1472854</guid><dc:creator><![CDATA[Rahvin]]></dc:creator><pubDate>Wed, 12 Mar 2008 13:39:17 GMT</pubDate></item></channel></rss>