Hallo Community,
ich benötige für ein Projekt eine Möglichkeit Events anderer Anwendungen abzufangen. Dabei möchte ich gerne wissen, wenn der Benutzer einen Mouse_Click (Event) ausführt,
welches Object er in welcher Anwendung / welchem Prozess getroffen hat und einen Verweis auf dieses Object, um ggf. mit dem Object selbst zu interagieren.
Leider habe ich keine Ansazt dazu. Ich bin über Ideen, Literatur und alles andere dankbar.
Mit freundlichem Gruß
Lost-Ha[n]f-PHP
Sind diese Anwendungen deine .Net-Anwendungen, auf die du auch auf Quellcodeebene Zugang hast? Dann ist WCF oder Remoting eine Möglichkeit.
Sind das beliebige Windows-Anwendungen, native und .Net, dann habe ich leider keine Ahnung.
As a man thinketh in his heart, so he is.
Hallo Lost-Ha(n)f-PHP,
==> global (mouse) hooks.
herbivore
Schau dir mal folgenden Artikel an. KB318804: Festlegen einen Windows-Hook in Visual c# .NET
Du könntest die threadID deiner Anwendung abfragen. Und dann einen threadspezifischen Maushook setzen.
edit:// Da war herbi wohl schneller...
Wenn ich nicht hier bin, findest du mich auf code-bude.net.
Vielen Dank für eure Hilfe.
Ich habe mich mit den Global Hooks beschäftigt. Jetzt habe ich somit die Möglichkeit zu erfassen, wenn ein Mouse_Click im jeweiligen Prozess ausgeführt wird.
Dazu 2 Fragen:
1.Gibt es die Möglichkeit alle Prozesse global überwachen zu lassen (ohne jeden Prozess einzeln zu überwachen)?
1.Bekomme ich irgendwie ein Referenz zu dem Object, auf das geklickt wurde (z.B. ein Button in einer anderen Anwendung)?
Ich danke euch im Voraus.
Mit freundlichem Gruß
Lost-Ha[n]f-PHP