
컴퓨터에는 기본적으로 여러 소프트웨어가 미리 설치되어 있지만, 추가 소프트웨어가 전혀 없는 컴퓨터는 찾아보기 어렵습니다. 새로운 소프트웨어를 설치하는 과정은 크게 고민할 필요가 없으며, 대부분 설치 프로그램에서 버튼을 클릭하는 것만으로 완료됩니다.
윈도우에서는 두 가지 파일 형식이 널리 사용되며, 한 번쯤 보거나 사용해 보셨을 것입니다. 바로 ".exe"와 ".msi"입니다. 두 형식의 차이점을 직감적으로 알아차리기는 어려울 수 있지만, 실제로는 분명한 차이가 존재합니다.
.exe vs .msi
차이점을 살펴보기 전에 먼저 공통점을 짚고 넘어갈 필요가 있습니다. 두 형식 모두 애플리케이션 설치 프로그램이며, 개발 목적도 동일합니다. 바로 간편한 설치 프로그램을 통해 손쉽게 소프트웨어를 설치하는 것입니다.
EXE: 실행 파일(Executable)

세 글자 확장자 ".exe"는 "executable(실행 가능한)"의 줄임말로, 설치가 진행되는 방식을 그대로 설명해 줍니다. 이 설치 프로그램은 파일 형식 연결이나 윈도우 시작 시 자동 실행 허용과 같은 다양한 옵션을 제공합니다.
.exe 파일 형식은 추가 플러그인이나 백그라운드 소프트웨어를 요청할 수도 있습니다. 게임이나 특정 프로그램을 설치할 때 자주 경험했을 부분입니다. 예를 들어 정상적으로 작동하려면 마이크로소프트의 .NET Framework가 필요할 수 있으며, 설치 프로그램에서 버튼 클릭만으로 다운로드를 시작할 수 있습니다.

설치 과정 중에는 설치 언어를 선택하라는 메시지가 나타나기도 합니다. .exe 파일 형식은 이런 기능을 손쉽게 지원하지만, .msi 설치 프로그램으로 같은 목표를 달성하기는 상대적으로 까다롭습니다. 불가능한 것은 아니지만, 이러한 단순함 덕분에 .exe 설치 프로그램을 선택하게 되는 경우가 많습니다.

다만 .exe는 소프트웨어 설치에만 국한되지 않습니다. 윈도우는 다른 영역에서도 동일한 확장자를 사용하며, 작업 관리자가 그 좋은 예입니다. 운영체제와 소프트웨어에 필수적인 프로세스를 포함한 윈도우 프로세스는 모두 .exe로 끝납니다. 또 다른 예로, 윈도우 탐색기를 다시 시작해야 할 때 "실행" 창에 입력하는 명령어는 "explorer"가 아닌 "explorer.exe"입니다.

MSI: Microsoft Installer

.msi 파일 형식의 설치 프로그램은 외관이 대체로 매우 일관됩니다. 컴파일 단계에서 레이아웃이 명확하게 정의되기 때문에, 게임이나 소프트웨어용 .exe 파일에서 흔히 볼 수 있는 디자인 변화를 찾기 어렵습니다.
그 결과 .msi 설치 프로그램의 구성을 따라가기가 더 쉬울 수 있으며, 컴퓨터 경험이 적은 사용자도 더 빠르게 적응할 수 있습니다. .msi 규격 내에서 특정 기능을 구현하는 복잡성은 이론상 사용자층 일부에게 오히려 더 간단한 설치 경험을 제공할 수 있습니다.

요청 시 설치(Installation on Demand)는 .msi의 주목할 만한 또 다른 기능으로, .exe로는 재현할 수 없습니다. 초기 설치는 실제로 진행되는 작업이 거의 없어 매우 빠르며, 주요 설치 과정은 소프트웨어 실행 후에 이루어집니다. 마이크로소프트 역시 이 방식이 "설치 및 구성 단계를 단축할 수 있다"고 공식적으로 밝힌 바 있습니다. 즉, 특정 상황에서는 .msi 설치 프로그램이 더 빠를 수 있습니다.
마지막으로 두 파일 형식을 뚜렷하게 구분하는 요소는 의도된 용도입니다. .msi 파일 형식은 네트워크 배포에 훨씬 더 적합합니다. 시스템 관리자는 이를 활용해 여러 대의 컴퓨터에 한 번에 소프트웨어를 배포할 수 있습니다. 소프트웨어 배포 방법을 다루는 글들이 모두 이 파일 형식을 가리키는 이유이기도 합니다.
어떤 설치 프로그램을 사용해야 할까?

이 질문에서 걱정되는 부분은 무시해도 될 만큼 사소합니다. 두 형식 모두 단일 컴퓨터에서 문제없이 잘 작동합니다. 외부 요소로 문제를 복잡하게 만들기보다는, 사용 가능한 설치 프로그램을 기준으로 결정하는 것이 더 현실적입니다. 경우에 따라서는 파일 크기 대비 다운로드 속도처럼 사용자가 통제할 수 없는 요인이 선택을 좌우할 수도 있습니다.