MSI와 EXE 설치 파일의 주요 차이점은 무엇입니까?


13

우리는 확실히 일부 .exe파일이 실행되는 것을 볼 수 있지만 MSI 파일의 다른 기능은 무엇입니까?


아래 답변을 참조하거나 serverfault.com 에서 msi의 기업 혜택에 대해 읽어보십시오 . 이 기사에서는 MSI 파일이 얻을 수있는 이점에 대해 자세히 설명합니다.
Stein Åsmul

답변:


7

MSI는 Microsoft Silent Installer의 약자이며 백그라운드에서 .exe 설치 관리자를 실행합니다.

예를 들어 관리중인 Windows 인프라에 응용 프로그램을 배포하려는 경우 GPO에서 사용됩니다. MSI를 사용하여 새 GPO 규칙을 만들어야하며 MSI는 사용자 개입없이 모든 컴퓨터에 설치됩니다.

GPO는 "그룹 정책 개체"로서 "Active Directory 환경에서 운영 체제, 응용 프로그램 및 사용자 설정의 중앙 집중식 관리 및 구성을 제공합니다."


1
GPO는 "그룹 정책 개체"로서 "Active Directory 환경에서 운영 체제, 응용 프로그램 및 사용자 설정의 중앙 집중식 관리 및 구성을 제공합니다."
RedGrittyBrick

5
... [n] nstaller의 [M] icro [s]와 비슷합니다. 도대체 어디에서 "자동"을 얻었습니까? 아니요, MSI 백그라운드에서 PE exe를 실행 하지 않습니다 (이 기능가능 하지만 기본 기능은 아닙니다).
Bob

3
The Windows Installer (previously known as Microsoft Installer) is a software component...- 위키 백과 . 예, MSI는 MicroSoft Installer이며 자동 설치 프로그램이 아닙니다.
Jet

3
이 답변의 대부분은 실제로 잘못되었습니다. 이 글타래의 다른 답변을 읽으십시오.
Stein Åsmul

이 양식 Microsoft Silent Installer을 처음으로 들었 습니다. 난 항상 MSI가 약자 것을 알고 M icro 자주 I nstaller`. 공식 인용문이 있습니까?
RBT

11

설치 프로그램이란 무엇입니까? 설치 프로그램은 프로그램을 실행할 수 있도록 시스템을 준비 합니다. 해당 프로그램을 설치 합니다. 이 과정에서 설치 프로그램 (Windows)은 파일을 시스템 위치에 복사하고, 바로 가기를 실행하여 파일을 시작하고, 라이브러리를 업데이트하고, 이전 버전을 제거하는 등의 작업을 수행 할 수 있습니다. 범용 설치 프로그램 표준 또는 형식은 없습니다. 이러한 작업을 수행하는 모든 프로그램 (다른 프로그램을 "설치")을 설치 프로그램이라고합니다.

Windows의 "exe"파일은 Portable Executable 파일 이라고하며 기본 컴퓨터 코드 또는 .NET 바이트 코드와 같은 임의의 명령을 포함합니다. 설치 프로그램으로 식별 할 PE 형식은 없습니다. 물론 임의의 기계 코드를 사용 하면 설치 프로그램 을 작성할 수 있으며 "exe"설치 프로그램을 사용하는 것이 좋습니다.

어떤 사람들은 자신 만의 맞춤형 설치 프로그램을 작성합니다. 다른 사람들은 설치 프로그램 생성기를 사용하여 시간과 노력을 절약합니다. 여기에는 NSIS, InnoSetup, InstallShield 등이 포함됩니다.

MSI 는 설치 정보, 수행 할 단계 및 배치 할 파일의 데이터베이스를 저장하는 데 사용되는 특정 형식입니다. 그 자체로는 실행 가능하지 않습니다. 실제로 msiexec.exe는 Windows 시스템에서 해석됩니다 . 그런 다음이 해석기는 MSI 파일에 설명 된 단계를 따릅니다. 이론적으로 MSI와 비슷한 데이터베이스를 사용하는 exe를 만들 수 있습니다 (NSIS, InnoSetup 등은 비슷한 것을 수행하십시오).

MSI를 특별하게 만드는 것은 기본 제공 도구에 포함되어 해석되고 회사 환경의 여러 컴퓨터에보다 쉽게 ​​배포 할 수 있도록 Active Directory에 통합되어 있으며 Clem의 답변은이를 자세히 설명합니다.


6

MSI 파일은 데이터베이스 파일을 통한 설치를 설명하고 MSI 파일 자체에 정의 된 복잡한 설치 시퀀스를 통해 설치하는 데이터베이스 파일 (특히 MS-SQL 데이터베이스)입니다.

MSI 파일은 "Clem"쓰기처럼 백그라운드에서 EXE 파일로 설치되지 않습니다 . msiexec.exe 명령 줄 인터페이스 를 통해 액세스 할 수 있는 Windows Installer 엔진에서 사용 합니다 . 또는 Advanced Installer의 주석이 달린 msiexec.exe 명령 줄 샘플을 사용해보십시오 . 그런 다음 설치 자체는 두 가지 시퀀스, 즉 사용자 인터페이스 시퀀스 와 실제 설치 시퀀스를 통해 실행됩니다. 후자는 LocalSystem 계정을 사용하여 시스템 컨텍스트에서 실행 됩니다 . 이 배열은 설치 관리자에게 임시 관리자 권한 또는 적절한 용어 인 권한 상승 을 허용하는 데 필요합니다 .

EXE 인스톨러 는 무엇이든 가능합니다. 대부분 데이터베이스를 기반으로하지 않는 이전 스타일의 스크립트 기반 설치 프로그램이지만 EXE 파일은 MSI 파일 및 관련 런타임 구성 요소가 포함 된 래퍼 일 수도 있습니다. 그것은 모두 각각의 특정한 경우에 달려 있고 조사되어야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.