BlockInput

사용자가 컴퓨터와 키보드와 마우스를 통하여 상호작용 할지 말지 여부를 켜고 끕니다.

BlockInput, Mode
선택

매개변수

Mode

Mode 1: 다음 단어 중 하나:

On: 사용자가 컴퓨터와 상호작용하지 못합니다 (마우스와 키보드 입력은 효과가 없습니다).

Off: 입력을 가능하게 합니다.

Mode 2: 이 모드는 다른 두 개와 독립적으로 작동합니다. 예를 들어, BlockInput On이면 BlockInput Off이 사용될 때까지 입력을 막습니다. 아래의 옵션이 효과를 발휘해도 상관없습니다.

Send: Send 또는 SendRaw가 진행 중인 동안 사용자의 키보드와 마우스 입력을 무시합니다 (전통적인 SendEvent 모드만 허용합니다). 사용자의 키 입력 때문에 흉내낸 키눌림의 흐름이 방해받지 않도록 막습니다. Send가 끝날 때, 입력이 다시 가능해집니다 (앞에서 BlockInput On으로 막고 있는 경우는 제외합니다).

Mouse: 사용자의 키보드와 마우스 입력은 Click, MouseMove, MouseClick, 또는 MouseClickDrag이 진행 중일 때 무시됩니다 (전통적인 SendEvent 모드만 허용합니다). 사용자의 마우스 이동과 클릭 때문에 흉내낸 마우스 이벤트 흐름이 방해받지 않도록 막습니다. 마우스 명령어가 끝날 때 (이전에 BlockInput On이 사용되여 여전히 입력을 막고 있지만 않다면) 입력이 다시 가능해집니다.

SendAndMouse: 위 두 방법을 조합.

Default: SendMouse 모드를 모두 끄지만, 입력 방지의 현재 상태를 바꾸지 않습니다. 예를 들어, BlockInput On이 현재 효과가 있다면, BlockInput Default를 사용해도 꺼지지 않습니다.

Mode 3 (v1.0.43.11+ 요구): 이 모드는 다른 두 방법과 독립적으로 작동합니다. 예를 들어, BlockInput OnBlockInput MouseMove가 둘 다 켜져 있으면, 마우스 이동은 둘 다 꺼질 때까지 막힙니다.

MouseMove: 마우스 커서는 사용자의 물리적 마우스 이동에 반응하지 않습니다 (DirectInput 어플은 예외적으로 가능합니다). 스크립트가 이 명령어를 처음 사용할 때, (아직 설치되지 않았다면) 마우스 갈고리가 설치됩니다. 게다가, 스크립트는 영속적이 됩니다. ExitApp를 사용해야만 종료할 수 있다는 뜻인다. 마우스 갈고리는 다음 Suspend 또는 Hotkey 명령어를 사용할 때까지 여전히 설치되어 있을 것입니다. 그 순간 핫키나 핫스트링을 요구하지 않으면 제거됩니다 (#Hotstring NoMouse 참조).

MouseMoveOff: 사용자에게 마우스 커서를 이동하도록 허용합니다.

논평

BlockInput보다, 종종 SendMode Input 또는 SendMode Play을 사용하는 편이 더 좋을 경우가 많습니다. 왜냐하면 키눌림과 마우스 클릭을 인터럽트할 수 없기 때문입니다. BlockInput과 다르게, 위 모드는 전송 중 사용자가 타자한 것을 버리지 않습니다; 대신에, 버퍼 처리했다가 나중에 전송합니다. BlockInput을 피하면 다음 문단에서 기술하는 바와 같이 키가 눌러붙는 것을 우회할 필요도 없어집니다.

사용자가 키를 누르고 있는 동안에 BlockInput이 활성화된다면, 그런 키들은 "눌러 붙어버립니다". 이것은 그 키가 놓일 때까지 기다렸다가 BlockInput을 켜면 해결됩니다. 다음 예제와 같이:

^!p::
KeyWait Control  ; 키를 떼기를 기다립니다. 각각의 핫키 수식자마다 KeyWait를 하나씩 사용합니다.
KeyWait Alt
BlockInput On
; ... 키눌림과 마우스 클릭을 전송합니다 ...
BlockInput Off
return
선택 | 내려받기

입력 방지는 ALT 이벤트가 전송될 때마다 자동으로 그리고 임시로 꺼집니다 (나중에 다시 활성화됩니다).

BlockInput이 켜져 있을 때, 사용자 입력은 막히지만 오토핫키는 키눌림과 마우스 클릭을 흉내낼 수 있습니다. 그렇지만, Ctrl+Alt+Del을 누르면 Windows API 특징 때문에 입력이 다시 가능해집니다.

어떤 유형의 갈고리 핫키는 BlockInput이 켜져 있어도 여전히 촉발될 수 있습니다. 예로는 MButton (마우스 갈고리) 그리고 LWin & Space (수식 심볼 $#이 아니라 명시적으로 접두 심볼이 붙은 키보드 갈고리)가 있습니다.

스크립트가 끝날 때 자동으로 입력이 다시 가능해집니다.

관련 항목

SendMode, Send, Click, MouseMove, MouseClick, MouseClickDrag

예제

BlockInput, on
Run, notepad
WinWaitActive, Untitled - Notepad
Send, {F5} ; 날짜와 시간을 붙여 넣습니다
BlockInput, off
선택 | 내려받기