Función BlockInput (winuser.h)

Impide que los eventos de entrada del teclado y del mouse lleguen a las aplicaciones.

Sintaxis

BOOL BlockInput(
  [in] BOOL fBlockIt
);

Parámetros

[in] fBlockIt

Tipo: BOOL

Propósito de la función. Si este parámetro es TRUE, se bloquean los eventos de entrada de teclado y mouse. Si este parámetro es FALSE, se desbloquean los eventos de teclado y mouse. Tenga en cuenta que solo el subproceso que bloqueó la entrada puede desbloquear correctamente la entrada.

Valor devuelto

Tipo: BOOL

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la entrada ya está bloqueada, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Cuando se bloquea la entrada, la entrada física real del mouse o el teclado no afectará al estado de clave sincrónica de la cola de entrada (notificado por GetKeyState y GetKeyboardState), ni afectará al estado de clave asincrónico (notificado por GetAsyncKeyState). Sin embargo, el subproceso que bloquea la entrada puede afectar a ambos estados clave mediante una llamada a SendInput. Ningún otro subproceso puede hacerlo.

El sistema desbloqueará la entrada en los casos siguientes:

  • El subproceso que bloqueó la entrada se cierra inesperadamente sin llamar a BlockInput con fBlock establecido en FALSE. En este caso, el sistema limpia correctamente y vuelve a habilitar la entrada.
  • El usuario presiona CTRL+ALT+SUPR o el sistema invoca el cuadro de mensaje modal Error del sistema duro (por ejemplo, cuando se produce un error en un programa o se produce un error en un dispositivo).

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h
Library User32.lib
Archivo DLL User32.dll

Consulte también

Conceptual

GetAsyncKeyState

GetKeyState

GetKeyboardState

Entrada de teclado

Referencia

SendInput