Share via


BlockInput-Funktion (winuser.h)

Verhindert, dass Tastatur- und Mauseingabeereignisse Anwendungen erreichen.

Syntax

BOOL BlockInput(
  [in] BOOL fBlockIt
);

Parameter

[in] fBlockIt

Typ: BOOL

Der Zweck der Funktion. Wenn dieser Parameter TRUE ist, werden Tastatur- und Mauseingabeereignisse blockiert. Wenn dieser Parameter FALSE ist, werden Tastatur- und Mausereignisse nicht blockiert. Beachten Sie, dass nur der Thread, der die Eingabe blockiert hat, die Blockierung der Eingabe erfolgreich aufheben kann.

Rückgabewert

Typ: BOOL

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Eingabe bereits blockiert ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Wenn die Eingabe blockiert wird, wirkt sich reale physische Eingaben von Maus oder Tastatur nicht auf den synchronen Schlüsselzustand der Eingabewarteschlange aus (von GetKeyState und GetKeyboardState gemeldet), noch wirkt sie sich auf den asynchronen Schlüsselzustand (von GetAsyncKeyState gemeldet) aus. Der Thread, der die Eingabe blockiert, kann sich jedoch auf beide Schlüsselzustände auswirken, indem SendInput aufgerufen wird. Kein anderer Thread kann dies tun.

Das System hebt die Blockierung von Eingaben in den folgenden Fällen auf:

  • Der Thread, der die Eingabe blockiert hat, wird unerwartet beendet, ohne BlockInput aufzurufen, wobei fBlock auf FALSE festgelegt ist. In diesem Fall bereinigt das System ordnungsgemäß und aktiviert die Eingabe erneut.
  • Der Benutzer drückt STRG+ALT+ENTF, oder das System ruft das modale Meldungsfeld Hard System Error auf (z. B. wenn ein Programm ausfällt oder ein Gerät ausfällt).

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h
Bibliothek User32.lib
DLL User32.dll

Siehe auch

Konzept

GetAsyncKeyState

GetKeyState

GetKeyboardState

Tastatureingabe

Referenz

SendInput