IT 관련 팁/오토핫키 Autohotkey

오토핫키 - 창을 열고 닫을 때 오류 발생 시 Winwaitactive, Winwaitclose 활용하기

RayShines 2022. 4. 8. 10:03
반응형

오토핫키로 프로그램을 실행시키고 닫다 보면 실행이나 종료 과정 중에 자연스럽게 지연이 발생할 수밖에 없다. 그것을 고려하지 않고 스크립트를 짜다보면 스크립트가 더 이상 진행되지 않거나 혹은 오류가 나는 경우가 많은데 그럴 때 winwaitactive, winwaitclose 같은 명령어를 사용하면 간단하게 해결이 된다.

 

1. Winwaitactive 활용법

Winwaitactive는 말 그대로, 어떤 창이 활성화될 때까지 기다리라는 의미이다.

 

물론 아래와 같이 스크립트를 짤 수도 있을 것이다.

 

*********************************************

#c:: ; win+c 를 누르면

run,chrome.exe, C:\크롬 실행 파일의 경로 ; 크롬을 실행하라. 경로는 각자 설정해야 한다.

sleep, 2000 ; 2초 대기

다음 스크립트 진행

return

*********************************************

 

위의 스크립트처럼 크롬을 실행시키고 2초를 대기한 뒤 다음 스크립트를 짜서 진행할 수도 있지만, 이렇게 되면 반드시 2초를 기다려야만 하고, 또 어떤 경우 2초의 대기 시간도 짧아서 오류가 발생하기도 한다.

 

그럴 때 winwaitactive를 사용한다.

 

*********************************************

#c:: ; win+c 를 누르면

run,chrome.exe, C:\크롬 실행 파일의 경로 ; 크롬을 실행하라. 경로는 각자 설정해야 한다.

winwaitactive, ahk_exe chrome.exe

다음 스크립트 진행

return

*********************************************

 

위와 같이 스크립트를 짜면 자연스럽게 크롬이 실행되는 시간을 기다렸다가 다음 단계로 진행을 한다.

 

2. Winwaitclose 활용법

Winwaitclose는 말 그대로 어떤 창이 닫힐 때까지 대기하라는 명령어이다. 아래처럼 활용할 수 있을 것이다.

 

*********************************************

#c:: ; win+c 를 누르면

winactivate, ahk_exe chrome.exe ; 크롬을 활성화시키고

winclose, ahk_exe chrome.exe ; 크롬을 닫고

winwaitclose, ahk_exe chrome.exe ; 크롬이 완전히 닫힐 때까지 대기

다음 스크립트 진행

return

*********************************************

 

위와 같이 스크립트를 짜면 크롬을 닫기 시작하여 완전히 닫힐 때까지 대기한 뒤 다음 단계로 진행된다. 

 

반응형