BlockInput
키보드나 마우스등에서의 입력을 무효화·무효화 해제한다
BlockInput, Mode
Parameters
인수명 | 설명 |
---|
Mode
|
- On
- 모든 입력을 무효화한다
- Off
- 입력을 유효하게 한다
- Send
- Send(이)나SendRaw커멘드를 실행할 때에에 자동적으로 입력 블록이 유효화 되도록(듯이) 한다.(2000/XP이외에서는 무의미)
- Mouse
- MouseMove,MouseClick,MouseClickDrag커멘드 실행시에 자동적으로 입력 블록이 유효화 되도록(듯이) 한다(2000/XP이외에서는 무의미)
- SendAndMouse
- Send(와)과Mouse(을)를 동시에 설정
- Default
- Send(와)과Mouse의 설정을OFF(으)로 한다
- MouseMove
- 마우스 커서를 이동할 수 없게 한다
- MouseMoveOff
- 「BlockInput,MouseMove」(을)를 해제한다
|
Remarks
이 커멘드를 사용하면,AutoHotkey에 의한 조작 자동화 시에 유저의 입력이 섞이는 것에 의해서 오조작이 발생하는 것을 막을 수 있다.
입력을 무효화하고 있는 동안은,AutoHotkey의 hot key도 동작하지 않게 된다.
다만, 일부의Hook(을)를 이용한 hot key는 동작한다.
이 커멘드를 실행하는 순간에, 수식 키를 눌러 내리고 있어 입력이 무효화되고 있는 동안에 놓아지면, 그 수식 키가 눌러 내릴 수 있던 채가 되어 버린다.
이것을 막으려면 ,KeyWait커멘드로 수식 키가 놓아지는 것을 기다리고 나서BlockInput,On
(을)를 실행하면 좋다.
「BlockInput,MouseMove」(이)가 실행되면,마우스 훅하지만 유효화 된다.
그 이후는, 스크립트가상주 상태(이)가 되어,ExitApp커멘드를 실행할 때까지 종료하지 않게 된다.
Susupend커멘드인가Hotkey커멘드가 실행될 때, 마우스 훅이 필요없게 되고 있으면 해제된다.
스크립트 종료시에는 자동적으로 입력은 유효하게 되돌려진다
API의 사양에 의해Ctrl+Alt+Del(을)를 실행하면, 입력은 유효하게 돌아온다.
이 커멘드는,OS에 의해서 효과에 차이가 있다.
OS |
효과 |
Windows95
|
효과 없음
|
WindowsNT4(SP6이전)
|
효과 없음
|
Windows98/Me
|
유저의 입력과 함께,AutoHotkey하지만 생성하는 입력(Send,SendRaw,MouseMove,MouseClick,MouseClickDrag등)도 무효화된다
|
WindowsNT4(SP6)/2000/XP
|
유저의 입력은 무효화되지만,AutoHoteky하지만 생성하는 입력은 유효.
|
Example(s)
if A_OSVersion <> WIN_98
if A_OSVersion <> WIN_ME
BlockInput, on
Run, notepad
WinWaitActive, Untitled - Notepad
Send, {F5} ; pastes time and date
BlockInput, off