Wie führt man eine Virtuelle Maus klicken Sie auf C# ohne die Verwendung einer Maus
Möchte ich ausführen, ein Klick in eine windows-Anwendung, ohne die echte Maus (also ich kann ihn minimieren). Ähnlich wie ein bot Verhalten würde.
Wie kann ich dies tun?
Gibt es einen Grund kann man nicht einfach Minimieren, in code?
Sie könnten besser Antworten, wenn Sie weitere Informationen über das, was Sie wollen. "Ohne eine echte Maus" bedeuten könnte, ohne dass der Nutzer physisch greifen die Maus...
Sie sehen, was Sie sagt, wenn Sie mit der Maus über den Pfeil neben dieser Frage? "Diese Frage zeigt reseach Anstrengung; es ist nützlich und klar". Keines dieser Kriterien erfüllt sind, wie diese Frage hat 3 upvotes verwirrt mich.
es scheint nicht so schwer zu verstehen für mich; in einfachste Begriffe, ich ziemlich sicher, dass er will, sowas wie "Hey ApplicationX, ich Klick Sie an x200, y400" - Während ApplicationX ist tatsächlich minimiert, und die echte Maus Zeiger ist nicht betroffen
War meine Antwort unten akzeptabel? Wenn dem so ist, bitte akzeptieren Sie als Antwort. Wenn nicht, bitte lassen Sie mich wissen, was ich tun kann, zu klären oder zu verbessern es für Sie.
Sie könnten besser Antworten, wenn Sie weitere Informationen über das, was Sie wollen. "Ohne eine echte Maus" bedeuten könnte, ohne dass der Nutzer physisch greifen die Maus...
Sie sehen, was Sie sagt, wenn Sie mit der Maus über den Pfeil neben dieser Frage? "Diese Frage zeigt reseach Anstrengung; es ist nützlich und klar". Keines dieser Kriterien erfüllt sind, wie diese Frage hat 3 upvotes verwirrt mich.
es scheint nicht so schwer zu verstehen für mich; in einfachste Begriffe, ich ziemlich sicher, dass er will, sowas wie "Hey ApplicationX, ich Klick Sie an x200, y400" - Während ApplicationX ist tatsächlich minimiert, und die echte Maus Zeiger ist nicht betroffen
War meine Antwort unten akzeptabel? Wenn dem so ist, bitte akzeptieren Sie als Antwort. Wenn nicht, bitte lassen Sie mich wissen, was ich tun kann, zu klären oder zu verbessern es für Sie.
InformationsquelleAutor Frunk | 2013-02-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke die Funktion die du suchst ist
PostMessage
Können Sie mehr darüber Lesen hier auf codeproject, und laden Sie eine demo-Projekt, das sendet Tastatureingaben.
Diese Methode sendet Nachrichten direkt auf die input-queue mit dem Programm verknüpft, basierend auf der Prozess-handle (hWnd)
Können Sie auch verwenden Sie diese Funktion zum senden von Maus-Klicks mit ihm, indem er auf die Schaltfläche Ereignisse, etwa so:
Mehr Informationen über diese Taste können Ereignisse gefunden werden hier auf der MSDN-Website.
Ich bin mir sicher, dass wenn Sie suchen, um das internet für Proben für die PostMessage-Maus-events finden Sie jede Menge
Link zu "Artikel" ist irreführend. Ich würde lachen über den Witz, aber es gibt Beiträge auf, SO behauptet es nicht getan werden kann mit
PostMessage(hWnd, WM_LBUTTONDBLCLK, ?, ?)
. Haben Sie es ausprobiert und bestätigt, es funktioniert?der link scheint gebrochen oder geändert, um etwas anderes. Ich habe es entfernt von meiner Antwort. Aber ja, ich habe SendMessage und PostMessage, bevor Sie zum senden von Tastatureingaben oder Maus-Ereignisse in Anwendungen.
InformationsquelleAutor Ron Sijm
Den code unten ist ein repost von hier:
InformationsquelleAutor Brian
Wenn ich simulieren Sie Tastenanschläge und Mausklicks, die ich verwenden Windows-Simulator
Ich denke, dass ist möglich, allerdings können Sie programmgesteuert bewegen Sie den Mauszeiger an die gewünschte Position
InformationsquelleAutor Zaid Amir
Können Sie timer verwenden, oder die Griff-Taste drücken, und erstellen Sie in der timer-tick-oder-Taste drücken-Funktion simuliert einen Maus-Klick mit der user32.dll Datei (besser in einer form, Form, so dass Sie behandeln können timer-Intervall...):
}
aus user32.dll Datei
wenn Sie möchten, um zu überprüfen, ob die Taste gedrückt wurde, versuchen
if(GetAsyncKeyState(keyCode) == 15){}
wenn keyCode ist der ASCII-Wert der Taste.
InformationsquelleAutor BinaryLord
Müssen Sie die Auflösung der Maschine, es ist, verwenden Sie die
System.Windows.Forms.Screen
Klasse, hier: SOMüssen Sie dann die Maus zu bewegen, an diesem Ort, oder um zu vermeiden, dass Sie vielleicht brauchen, um Haken zu dem Programm, das läuft, und senden Sie es ein Ereignis, das Sie verursacht, zu minimieren.
Es wird schwer sein, etwas zu bekommen, wie das arbeiten mit C#, wie Sie benötigen, um zu injizieren, die DLL in das Programm. Einen niedrigeren level-Sprache wie C kann hilfreich sein.
Hier ist eine kurze Erklärung /Frage
InformationsquelleAutor plast1K
Fand ich diese bei http://social.msdn.microsoft.com/forums/en-US/winforms/thread/86dcf918-0e48-40c2-88ae-0a09797db1ab/.
Durch virtuelle Maus klicken Sie auf ich nehme an, er meint, zum Beispiel "Mausklick("Internet Explorer", 100, 400); die schicken einem Klick auf den IE, obwohl es bleibt minimiert.
Nicht die physische Maus; nach der Einreicher, es "zu simulieren[s] ein Mausklick auf den Aufruf der mouse_event API", nicht wirklich mit der Maus.
Ich glaube, du bist angenommen, zu interpretieren, seine Frage als "Eine auf in eine windows-Anwendung, ohne die echte Maus, so kann ich [senden klicken, während das Fenster minimiert wird]" - so wie ein bot Sie in der minimierten Fenster.
InformationsquelleAutor Deep in the Code
Können Sie Window Automation zu finden, die Minimieren-Schaltfläche im Fenster und klicken Sie auf ausführen. Ich finde es einfach und viel verwendet. hier ist der link zu verstehen, das ganze Konzept.
https://msdn.microsoft.com/en-us/library/windows/desktop/ff486375(v=vs. 85).aspx
InformationsquelleAutor vishal dhaduk