Condividi tramite


Funzione BlockInput (winuser.h)

Impedisce agli eventi di input della tastiera e del mouse di raggiungere le applicazioni.

Sintassi

BOOL BlockInput(
  [in] BOOL fBlockIt
);

Parametri

[in] fBlockIt

Tipo: BOOL

Scopo della funzione. Se questo parametro è TRUE, gli eventi di input della tastiera e del mouse vengono bloccati. Se questo parametro è FALSE, gli eventi della tastiera e del mouse vengono sbloccati. Si noti che solo il thread che blocca l'input può sbloccare correttamente l'input.

Valore restituito

Tipo: BOOL

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se l'input è già bloccato, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Quando l'input è bloccato, l'input fisico reale dal mouse o dalla tastiera non influirà sullo stato sincrono della coda di input (segnalato da GetKeyState e GetKeyboardState), né influirà sullo stato asincrono della chiave (segnalato da GetAsyncKeyState). Tuttavia, il thread che blocca l'input può influire su entrambi gli stati della chiave chiamando SendInput. Nessun altro thread può eseguire questa operazione.

Il sistema sbloccherà l'input nei casi seguenti:

  • Il thread che blocca l'input viene chiuso in modo imprevisto senza chiamare BlockInput con fBlock impostato su FALSE. In questo caso, il sistema pulisce correttamente e riabilita l'input.
  • L'utente preme CTRL+ALT+CANC o il sistema richiama la finestra di messaggio modale Errore di sistema rigido (ad esempio, quando si verifica un errore di un programma o un dispositivo non riesce).

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione Winuser
Libreria User32.lib
DLL User32.dll

Vedi anche

Informazioni concettuali

GetAsyncKeyState

GetKeyState

GetKeyboardState

Input da tastiera

Riferimento

SendInput