Autohotkey 를 사용하여 특정 프로그램에 명령어를 날릴 때 send 명령어를 주로 사용 하곤 합니다. 그런데 send 명령어는 activation 된 창에만 명령어를 날립니다. 이렇게 되는 경우 send 명령어를 사용하는 중에는 사용자가 다른 작업을 할 수가 없습니다. 이러한 경우에 비활성창에 명령어를 실행 시키는 ControlSend 를 사용하면 다른 작업을 하면서 Autohotkey 를 사용하여 특정 프로그램을 자동 할 수 있습니다.
ControlSend 명령어에 대한 설명은 아래 주소의 메뉴얼을 확인하시기 바랍니다.
https://autohotkey.com/docs/commands/ControlSend.htm
저는 Synology NAS 를 사용하고 있고, Windows 운영체제에서 Synology NAS 에 접속하는 경우 putty 를 사용하는데 아래와 같은 Autohotkey 스크립트를 주로 사용하고 있습니다.
SetTitleMatchMode, 2
SetKeyDelay,-1,-1
ControlSend,,./mod_files.sh,PuTTY,
위 Autohotkey 코드는 PuTTY 에 ./mod_files.sh 를 타이핑 하도록 하는 명령어 입니다. 언뜻 봐서는 문제가 없어 보였는데 계속해서 실행시키다 보니 아래와 같은 문제가 있었습니다. 아래 그림에서 밑줄 친 부분을 보면 명령어가 다른 것을 확인할 수 있습니다. 결국엔 위 코드에서 ControlSend 명령어가 정확하게 동작하지 않는것을 알 수가 있습니다.
위 문제를 확인한 후에~ 내가 ControlSend 명령어를 잘못 썼나? 라는 생각을 했었는데 사실 문제는 SetKeyDelay 에 있었습니다. SetKeyDelay 명령어에서 -1 은 no delay 를 의미하고 첫 번째, 두 번째 아규먼트는 Delay, PressDuration 을 의미 합니다. 이 부분을 no delay 로 설정 하다 보니 문제가 발생한 것이었습니다. 그래서 해당 부분을 지우고 코드를 실행해 봤습니다.
SetTitleMatchMode, 2
ControlSend,,./mod_files.sh,PuTTY,
여러번 실행을 해 봤는데 한 번도 빠짐없이 명령어가 전달 되더군요.
ControlSend 를 사용하는 중에 혹시나 문제가 발생한다면 SetKeyDelay 를 의심 해 보시기 바랍니다.
'programming language > Autohotkey' 카테고리의 다른 글
Autohotkey 로 스마트폰 카메라 폴더 열기 (0) | 2018.08.14 |
---|---|
Autohotkey 를 사용한 File 수 세기 (0) | 2018.06.22 |
Autohotkey, Pulover's Macro Creator 를 사용해 보세요 (6) | 2018.06.07 |
Autohotkey update to 1.1.29.01 (0) | 2018.06.04 |
SBS 뉴스토리 디지털 함정 인터넷 여론 조작에 나온 Autohotkey (0) | 2018.05.20 |
Autohotkey 강좌, 이베스트증권 xingAPI로 시스템트레이딩 하기 (4) | 2018.04.14 |
Autohotkey 를 사용하여 키코드 확인하는 방법 (0) | 2018.04.13 |
Powershell 를 사용하여 Program ID 찾는 방법 (Autohotkey 에서 COM 사용을 위해) (0) | 2018.04.10 |
댓글