Windows용 자동화 도구는 생각보다 다양합니다. 기본 내장된 작업 스케줄러(Task Scheduler)로 작업을 예약하거나, 폴더 작업(Folder Actions)으로 폴더 이벤트를 설정할 수 있죠. 하지만 이 정도로는 부족하고 더 복잡하고 강력한 자동화 도구를 원한다면, AutoIt이 좋은 선택이 될 수 있습니다.
AutoIt은 배치 스크립트보다 훨씬 강력한 스크립팅 언어로, Windows에서 거의 모든 종류의 작업을 자동화할 수 있습니다.
시작하기
AutoIt은 복잡한 스크립트 언어가 아닙니다. 프로그래밍 지식이 조금만 있어도 매우 쉽게 익힐 수 있으며, 문법에 적응하는 데 시간이 조금 걸릴 뿐입니다. 한번 익히고 나면 반복적인 작업을 자동화하고 Windows 환경에서 동작하는 다양한 프로그램을 직접 만들 수 있습니다.
먼저 AutoIt 설치 프로그램을 다운로드해 Windows에 설치해야 합니다. 기본 설치 시 경량版 SciTE 편집기가 함께 제공되어 기본적인 스크립트를 바로 작성할 수 있습니다. 더 고급 기능이 필요하다면 완전판 SciTE 편집기를 별도로 다운로드해 설치하세요.
AutoIt 공식 문서도 온라인에서 제공되므로, 언어에 대해 알아야 할 거의 모든 내용을 참고할 수 있습니다.
아래에서 AutoIt으로 할 수 있는 몇 가지 대표적인 예제를 살펴보겠습니다.
애플리케이션 실행 및 종료 자동화
애플리케이션을 실행하려면 AutoIt의 Run 명령을 사용합니다.
Run("program.exe", "c:\program path")

RunAs 명령을 사용하면 다른 사용자 계정 권한으로 프로그램을 실행할 수도 있습니다. 또한 다음 프로그램을 실행하기 전에 특정 프로그램이 종료될 때까지 기다려야 한다면 RunWait 명령을 활용하면 됩니다.
프로그램을 종료할 때는 ProcessClose 명령을 사용합니다. 예를 들어 파이어폭스(Firefox)를 종료하는 스크립트는 다음과 같습니다.
local $pid = ProcessExists("firefox.exe")
if $pid then ProcessClose($pid)
프로그램 설치 자동화
AutoIt의 진짜 강력함은 Windows에서 발생하는 사실상 모든 작업을 자동화할 수 있다는 점이며, 여기에는 소프트웨어 설치 과정도 포함됩니다. 네트워크 관리자라면 사용자의 개입 없이 프로그램을 조용히(무인 모드) 설치해야 할 때가 많은데, AutoIt을 사용하면 이를 아주 쉽게 구현할 수 있습니다.
먼저 Run 함수로 설치 프로그램(setup)을 실행합니다.
Run("setup.exe")
파일이 현재 디렉터리에 없다면 전체 경로를 지정할 수도 있습니다.
Run("C:\path\setup.exe")
그다음 설치 화면이 나타날 때까지 기다려야 하는데, 이때 WinWaitActive 함수를 사용합니다.
WinWaitActive("Window title", "text")

창이 활성화되면 키보드 단축키로 설치 과정을 진행합니다. 대부분의 설치 프로그램은 키보드 단축키를 지원하며, 보통 밑줄 친 문자로 표시됩니다. 따라서 Alt 키와 밑줄 친 문자를 함께 누르면 해당 동작이 실행됩니다.
AutoIt에서는 Send 함수로 키보드 입력을 처리할 수 있습니다.
Send("!a")
Enter 키만 누르면 되는 경우라면 아래처럼 간단히 전송하면 됩니다.
Send("{ENTER}")
설치가 완료되면 WinClose 함수로 창을 닫을 수 있습니다.
예를 들어 Microsoft Office 설치를 자동화한다면 스크립트는 다음과 같은 형태가 됩니다.
;Office 2010 설치 프로그램 실행
Run("setup.exe")
;설정 창이 활성화될 때까지 대기
WinWaitActive("Microsoft Office Professional Plus 2010", "setup")
;라이선스 동의
Send("!a")
;다음 화면으로 진행
Send("!c")
;기본 옵션으로 Office 설치
WinWaitActive("Microsoft Office Professional Plus 2010", "Choose the installation you want")
Send("!i")
;설치 완료 후 설정 창 닫기
WinWaitActive("Microsoft Office Professional Plus 2010", "Setup Complete")
Send("!c")
이 설치 프로그램은 설치가 끝나면 자동으로 종료되기 때문에 WinClose 함수를 따로 실행할 필요가 없습니다.
매크로 만들기
AutoIt을 더욱 강력하게 만드는 요소 중 하나는 매크로 레코더(Macro Recorder)입니다. 길고 반복적인 키 입력 과정을 그대로 녹화해 스크립트로 만들 수 있으며, 매크로 레코더는 완전판 SciTE 편집기에서 사용할 수 있습니다.

매크로 레코더를 사용하려면 SciTE 편집기를 연 뒤 "Tools → AU3Recorder" 메뉴로 이동하거나 Alt + F6 단축키를 누르면 됩니다. 레코더는 모든 키 입력을 기록하고, 스크립트 실행 시 해당 입력을 그대로 재현합니다.
다만 매크로 레코더의 유일한 한계는 키 입력 사이마다 WinWaitActive 함수가 자동으로 삽입되지 않는다는 점입니다. 이 함수를 반드시 직접 추가해야 하며, 그렇지 않으면 첫 번째 설치 화면이 뜨기도 전에 스크립트가 실행을 끝내버리는 문제가 발생합니다.

마무리
Windows에서 프로그램과 작업을 자동화하는 방법은 여러 가지가 있지만, AutoIt은 그중에서도 가장 강력한 도구 중 하나로 지루하고 반복적인 작업을 놀랍도록 쉽게 처리해 줍니다.
여러분은 일상 업무에서 자동화를 활용하고 계신가요? 아니면 여전히 손으로 직접 처리하는 것이 편하신가요?