설치 및 배포 프로젝트

Visual Studio에서는 병합 모듈 프로젝트, 설치 프로젝트, 웹 설치 프로젝트 및 CAB 프로젝트라는 네 가지 형식의 배포 프로젝트 템플릿을 제공할 뿐 아니라 설치 마법사가 배포 프로젝트를 만드는 것을 도와 줍니다. 이러한 템플릿과 마법사는 새 프로젝트 대화 상자에서 볼 수 있습니다. 기타 프로젝트 형식 노드를 확장하고 설치 및 배포 프로젝트 노드를 선택한 다음 Visual Studio 설치 관리자를 클릭합니다.

또한 InstallShield Limited Edition을 사용하여 Windows용 응용 프로그램 및 서비스를 만들고, 빌드하고, 패키지할 수 있습니다. 먼저 새 프로젝트 대화 상자에서 기타 프로젝트 형식 노드를 확장하고 설치 및 배포 프로젝트 노드를 선택한 다음 InstallShield LE를 클릭합니다.

템플릿 개요

다음 지침은 사용자 프로젝트에 대해 올바른 형식의 배포 프로젝트를 선택하는 데 도움이 됩니다.

프로젝트 형식

용도

InstallShield

InstallShield Limited Edition을 사용하여 Windows용 응용 프로그램 및 서비스를 만들고, 빌드하고, 패키지합니다.

병합 모듈 프로젝트

여러 Windows 기반 응용 프로그램에서 공유할 수 있는 구성 요소를 패키지합니다. 병합 모듈 프로젝트를 사용하면 파일이나 구성 요소를 하나의 모듈로 패키지하여 모듈을 공유하기 쉽게 만들 수 있습니다. 결과로 만들어지는 .msm 파일은 다른 배포 프로젝트에도 포함될 수 있습니다.

설치 프로젝트

Windows 기반 응용 프로그램에 대한 설치 관리자를 빌드합니다. 설치 프로젝트의 파일은 최종 사용자 컴퓨터의 Program Files 디렉터리에 설치됩니다.

웹 설치 프로젝트

웹 응용 프로그램에 대한 설치 관리자를 빌드합니다. 웹 설치 프로젝트의 파일은 웹 서버의 가상 루트 디렉터리에 설치됩니다.

CAB 프로젝트

이전 브라우저에 다운로드하는 데 필요한 CAB 파일을 만듭니다. CAB 프로젝트를 사용하여 웹 서버에서 웹 브라우저로 다운로드할 수 있는 ActiveX 구성 요소를 패키지할 수 있습니다.

경고

프로젝트를 만든 후에는 해당 형식을 설치 프로젝트에서 웹 설치 프로젝트로 변경할 수 없습니다. 설치 프로젝트를 만들고 나서 웹에 배포하려는 경우에는 새 웹 설치 프로젝트를 만들어야 합니다.

설치 프로젝트

CD 또는 네트워크 파일 공유를 통해 응용 프로그램을 배포하려면 설치 프로젝트를 사용하여 설치 관리자를 만들 수 있습니다. 만들어진 Windows Installer(.msi) 파일에는 응용 프로그램, 모든 종속 파일, 레지스트리 항목 등과 같은 응용 프로그램 정보 및 설치 명령이 포함됩니다. .msi 파일이 다른 컴퓨터에 배포되어 실행되면 설치에 필요한 모든 것이 포함되었다고 볼 수 있습니다. 어떠한 이유로든(예: 대상 컴퓨터에 필요한 운영 체제 버전이 없음) 설치가 실패할 경우 설치는 롤백되고 컴퓨터는 설치 이전의 상태로 되돌려집니다.

Visual Studio에는 설치 프로젝트와 웹 설치 프로젝트가 있습니다. 설치 프로젝트와 웹 설치 프로젝트의 차이는 설치 관리자가 배포되는 위치입니다. 설치 프로젝트는 파일을 대상 컴퓨터의 파일 시스템에 설치하고, 웹 설치 프로젝트는 웹 서버의 가상 디렉터리에 설치합니다.

또한, 설치 마법사를 사용하여 간단하게 설치 프로젝트나 웹 설치 프로젝트를 만들 수 있습니다.

웹 설치 프로젝트

Windows Installer를 만들어 일반적인 매체를 통한 배포를 지원할 수 있을 뿐만 아니라 Visual Studio의 배포 도구를 사용하여 웹 서버에 대한 배포를 지원할 수도 있습니다. 웹 서버에 파일을 설치하는 배포 방식을 사용할 경우 배포 프로세스가 등록 및 구성과 같은 문제를 자동으로 처리하므로 단순한 파일 복사 이상의 기능을 제공합니다.

또한 Windows 응용 프로그램용 설치 관리자를 웹 서버에 배포하여 사용자가 나중에 웹 사이트에서 이러한 설치 관리자를 다운로드하거나 설치할 수 있습니다.

웹 서버에 웹 응용 프로그램을 배포하려면 웹 설치 프로젝트를 만들고 빌드한 다음 이를 웹 서버 컴퓨터에 복사합니다. 그런 다음 웹 설치 프로젝트에 정의된 설정을 통해 설치 관리자를 실행하여 서버에 응용 프로그램을 설치합니다.

참고

웹 서버에 배포하려면 해당 컴퓨터에 대한 관리 액세스 권한이 있어야 합니다. 자세한 내용은 웹 페이지 및 프로젝트를 참조하십시오.

또한 배포와 관련된 일부 관리 설정의 동작이 명확하지 않을 수도 있습니다. 가상 디렉터리의 IIS(인터넷 정보 서비스) Write 속성을 사용하지 않도록 설정한 경우에도 파일이 해당 디렉터리에 계속 배포됩니다. 이는 Write 속성이 사용자가 파일을 업로드하는 기능만 제어하기 때문입니다.

웹 서버에서 다운로드하기 위한 응용 프로그램을 배포하려면 웹 설치 프로젝트를 만들고 파일 시스템 편집기에서 웹 설치 프로젝트에 해당 응용 프로그램에 대한 프로젝트 출력 그룹을 추가합니다. 설치 관리자를 빌드한 후 웹 서버 컴퓨터에 복사하면 웹 브라우저를 통해 이를 다운로드할 수 있습니다.

참고

설치 관리자를 다운로드할 수 있더라도 Windows Installer 런타임 파일을 사용자의 컴퓨터에서 사용할 수 있다는 보장은 없습니다. 웹 부트스트래퍼 설정 대화 상자에서 런타임 파일의 위치를 지정하여 이러한 파일도 항상 다운로드할 수 있도록 해야 합니다. 자세한 내용은 웹 부트스트래퍼 설정 대화 상자를 참조하십시오.

CAB 파일 프로젝트

CAB 프로젝트를 사용하면 .Cab 파일을 만들어 웹 서버에서 웹 브라우저로 다운로드할 수 있는 ActiveX 컨트롤을 패키지할 수 있습니다.

다른 배포 프로젝트 형식과는 달리 CAB 프로젝트 작업에는 편집기가 제공되지 않습니다. 솔루션 탐색기에서 CAB 프로젝트에 파일 및 프로젝트 출력을 추가하고 속성 창이나 프로젝트 속성 페이지에서 속성을 설정합니다.

CAB 프로젝트의 속성을 사용하면 압축 수준 지정, Authenticode 서명 구현, 표시 이름 및 버전 정보 설정, 웹에 종속 파일의 위치 지정 등의 작업을 수행할 수 있습니다.

참고

CAB 프로젝트의 경우에는 종속성이 계산되지 않으므로 직접 종속성을 결정하고 참조해야 합니다.

병합 모듈 프로젝트

병합 모듈 프로젝트를 사용하면 다시 사용할 수 있는 설치 구성 요소를 만들 수 있습니다. 동적 연결 라이브러리를 통해 응용 프로그램 간에 코드를 공유하는 것과 같이 병합 모듈을 사용하여 Windows Installer 간에 설치 코드를 공유할 수 있습니다.

병합 모듈(.msm 파일)은 구성 요소를 설치하는 데 필요한 파일, 리소스, 레지스트리 항목 및 설치 논리를 모두 포함하는 단일 패키지입니다. 병합 모듈은 단독으로 설치할 수 없으며 Windows Installer(.msi) 파일 컨텍스트 내에서 사용해야 합니다. 병합 모듈을 사용하면 특정 구성 요소의 종속성을 모두 캡처하여 올바른 버전이 설치되도록 할 수 있습니다. 한 번 배포된 병합 모듈은 수정할 수 없습니다. 대신에 구성 요소의 후속 버전 각각에 대해 새 병합 모듈을 만들어야 합니다.

그러나 체이너 또는 부트스트래퍼를 사용하여 종속 항목 및 필수 구성 요소를 설치하는 것이 좋습니다. 부트스트래퍼에 대한 자세한 내용은 응용 프로그램 배포 필수 구성 요소를 참조하십시오.

참고 항목

작업

방법: 배포 프로젝트에 항목 추가

방법: 배포 프로젝트 만들기 또는 추가

참조

옵션 대화 상자, 프로젝트 및 솔루션, 일반

개념

배포의 새로운 기능