BlockInput 함수(winuser.h)

키보드 및 마우스 입력 이벤트가 애플리케이션에 도달하지 못하도록 차단합니다.

구문

BOOL BlockInput(
  [in] BOOL fBlockIt
);

매개 변수

[in] fBlockIt

형식: BOOL

함수의 용도입니다. 이 매개 변수가 TRUE이면 키보드 및 마우스 입력 이벤트가 차단됩니다. 이 매개 변수가 FALSE이면 키보드 및 마우스 이벤트가 차단 해제됩니다. 입력을 차단한 스레드만 입력 차단을 해제할 수 있습니다.

반환 값

형식: BOOL

함수가 성공하면 반환 값이 0이 아닙니다.

입력이 이미 차단된 경우 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

입력이 차단되면 마우스 또는 키보드의 실제 실제 입력은 입력 큐의 동기 키 상태( GetKeyStateGetKeyboardState에서 보고됨)에 영향을 미치지 않으며 비동기 키 상태( GetAsyncKeyState에서 보고됨)에 영향을 미치지 않습니다. 그러나 입력을 차단하는 스레드는 SendInput을 호출하여 이러한 키 상태 모두에 영향을 줄 수 있습니다. 다른 스레드는 이 작업을 수행할 수 없습니다.

시스템은 다음과 같은 경우에 입력 차단을 해제합니다.

  • fBlockFALSE로 설정된 BlockInput을 호출하지 않고 입력을 차단한 스레드가 예기치 않게 종료됩니다. 이 경우 시스템이 제대로 정리되고 입력을 다시 사용하도록 설정합니다.
  • 사용자가 Ctrl+Alt+DEL을 누르거나 시스템에서 하드 시스템 오류 모달 메시지 상자를 호출합니다(예: 프로그램 오류 또는 디바이스가 실패하는 경우).

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 winuser.h
라이브러리 User32.lib
DLL User32.dll

추가 정보

개념

GetAsyncKeyState

GetKeyState

GetKeyboardState

키보드 입력

참조

SendInput