Visual C# Tastatureingaben sperren

  • Allgemein

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Gonger96.

    Visual C# Tastatureingaben sperren

    Hallo,

    ich bin gerade dabei ein Programm zu entwickeln dass in der Schule eingesetzt werden soll, zum Sperren des Bildschirms und der Tastatureingaben.

    Weiß jemand wie ich bei einem Projekt dass ich in Visual C# geschrieben habe die Tastatureingeben sperren kann?

    Danke im Vorraus!

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    1. Falsches Forum. Du solltest das Thema in den Bereich andere Programmiersprachen verschieben lassen.
    2. Genauso wie in vb.net:
    Kurz gegooglet:
    codeproject.com/Articles/14485…ks-from-C-to-stop-unwante
    Mfg: Gather
    Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


    Wenn du Tastatur und Mouse WIRKLICH sperren willst und nicht der ganze Mist mit Timern und Cursor.SetPosition etc. dann würde ich dir Hooks empfehlen. Es gibt einen LowLevelMouse- und einen LowLevelKeyboard-Hook. Dort wird immer ein Callback aufgerufen, wenn etwas mit der Mouse oder der Tastatur geschieht. Gibst du in diesem Callback false zurück so wird sich die Mouse keinen Millimeter bewegen und auch die Tastatur wird komplett tot sein. Achtung: Dies gilt immer nur für den aktuellen Desktop, die aktuelle Usersession und dein Programm benötigt administrative Berechtigungen. Mehrere Informationen findest du auf msdn. Stichwort SetWindowsHookEx und LowLevelMouse- bzw. Keyboard-hook.

    Alternativ kannst du auch auf die BlockInput-funktion zurückgreifen: msdn.microsoft.com/en-us/libra…op/ms646290(v=vs.85).aspx
    EDIT: Läuft intern eh auf das Selbe raus aber Hooks sind interessanter ;)


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    Performance wirste nicht großartig nen Unterschied bemerken. Aber du kannst dir die ganzen Interopgeschichten sparen.
    Wenn wir aber grad bei Hooks und Performance sind: Die hooks besitzen ein Timeout(weiß nicht auswendig wie viel). Überschreitest du dieses bevor du etwas zurückgibst, dann wird eine App aus der Hookliste entfernt. Du hast aber leider keine Möglichkeit dies festzustellen.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.