Ich suche nach einem Code (vorzugsweise C#), der die Tastatur- und Mauseingabe verhindert.Wie kann ich die Tastatur- und Mauseingabe in C# blockieren?
Antwort
Blick in die BlockInput Win32-Funktion
Klingt wie etwas Spaß Testen :)
Kann ich nur bestimmte Arten von Eingängen blockieren lassen? Wie nur Tastatur und Maus. – Kishori
Aufbauend auf Joshs (richtige) Antwort. Hier ist die PInvoke-Signatur für diese Methode.
public partial class NativeMethods {
/// Return Type: BOOL->int
///fBlockIt: BOOL->int
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint="BlockInput")]
[return: System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.Bool)]
public static extern bool BlockInput([System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.Bool)] bool fBlockIt) ;
}
public static void BlockInput(TimeSpan span) {
try {
NativeMethods.BlockInput(true);
Thread.Sleep(span);
} finally {
NativeMethods.BlockInput(false);
}
}
EDIT
Added einige Code zu zeigen, wie für ein Intervall haben in diesem Artikel Processing Global Mouse and Keyboard Hooks in C# einen Blick
Vielen Dank dafür. Haben Sie einen Code, der diese Signatur verwendet? Zum Beispiel Block Eingang, warten Sie 30 Sekunden, wieder aktivieren Sie den Eingang. Vielen Dank –
Werfen Sie einen Blick auf die verwaltete Windows-API, es könnte etwas haben, das diese Funktionalität bereits umschließt. http://mwinapi.sourceforge.net/ –
@Matt, ich greife in der Regel nur die Sig von der PInvoke Interop Assistant http://www.codeplex.com/clrinterop – JaredPar
zu blockieren. Der Typ, der diesen Artikel geschrieben hat, hat eine Menge Nachforschungen über das Problem angestellt.
Vielleicht gibt es etwas, das Sie verwenden können.
- 1. Erkennen simulierter Tastatur-/Mauseingabe
- 2. Blockieren der Mauseingabe von einem Dienst in Vista
- 3. Wie kann ich die Website blockieren?
- 4. Verwenden von BlockInput zum Sperren der Tastatur- und Mauseingabe
- 5. Mauseingabe und z-Achse
- 6. Wie kann ich die Seitenautorefresh in Google Chrome blockieren?
- 7. TASM-Mauseingabe
- 8. Kann ich ein Favicon blockieren?
- 9. blockieren und nicht blockieren Unterprozessaufrufe
- 10. Mauseingabe in WPF-Anwendungen injizieren
- 11. Wie kann ich STDIN testen, ohne in Perl zu blockieren?
- 12. Wie programmiere ich die Tastatur in iOS?
- 13. Wie kann ich die iOS 8 Emoji-Tastatur deaktivieren?
- 14. Wie kann ich die gedrückte Tastatur im Assembly Bootloader drucken?
- 15. Ich kann nichts in Autocompletetextview schreiben und keine virtuelle Tastatur
- 16. Wie kann fprintf in Linux blockieren?
- 17. Wie kann ich eine Website in WebView blockieren
- 18. Wie kann ich die Systemzwischenablage in C# sichern und wiederherstellen?
- 19. Wie kann ich wissen, Tastatur ist offen
- 20. In Emacs, wie wähle ich die Abschlussliste mit der Tastatur?
- 21. Wie schreibe ich einen Treiber für externe Tastatur in C#
- 22. Wie mache ich FadeOut in JQuery blockieren?
- 23. Wenn ich auf das TextField tippe und die Tastatur nicht zeige. Wie kann ich verwenden?
- 24. Kann ich mit Python Tastatur- und Mausereignisse in OSX erfassen?
- 25. Framerate bei Mauseingabe in 3D-App
- 26. Ziel C - Iphone. Wie kann ich die numerische Tastatur standardmäßig anzeigen?
- 27. Wie kann ich feststellen, wenn die Tastatur von der Tastatur des UIWebview mit der Tastatur berührt wurde?
- 28. Wie kann ich die Befehlszeile FFMPEG ausführen und mehrere Pipes (Video und Audio) akzeptieren, ohne die erste Eingabe zu blockieren?
- 29. In Xcode 6, wie verwende ich die Hardware-Tastatur, aber die Software-Tastatur im iOS-Simulator
- 30. Wie kann ich blockieren, bis Dojo Deferred aufgelöst wird?
Können Sie einen weiteren Zusammenhang angeben, warum Sie dies tun möchten? – JaredPar
Meinst du nur in deiner Anwendung oder global über das System? –
Und zu was; Schließlich könnten Sie sich auf ein Textfeld beziehen, bei dem die Eigenschaft readonly gesetzt wird. –