출처 : http://www.devpia.com/MAEUL/Contents/Detail.aspx?BoardID=18&MAEULNO=8&no=1268

 

 

Visual Studio.NET 2005의 설치 프로젝트를 이용한 인스톨 프로그램 만들기 (1)

 

최근에 강좌란에 이와 관련한 내용이 없는 것 같아, 간단한 지식이지만 올립니다.

 

설치 및 배포 프로젝트는 간단히 말해서 Install Shields나 Install Factory같이 사용자를 위한 셋업 프로그램을 만들수 있도록 제공되는 기능입니다.

 

프로그래머는 이 설치 및 배포 프로젝트를 이용해 사용자가 보다 편리하게 프로그램을 설치할 수 있도록 도움을 줄 수 있습니다.

 

그럼, 설치 및 배포 프로젝트에 대해서 보다 상세하게 알아보도록 하겠습니다.

 

아래 그림과 같이 배포를 목적으로한 어떤 프로젝트가 있다고 가정해보겠습니다.

 

 

우리는 이 프로젝트가 속한 솔루션에 설치 및 배포 프로젝트를 추가합니다.

 

 

프로젝트 추가에 성공하면, 우리는 솔루션 탐색기에 다음과 같이 설치 프로젝트가 추가된 것을 확인할 수 있습니다.

 

 

 

 

그럼 이제 이 설치 프로젝트에 우리가 배포하고자 하는 프로젝트를 추가합니다. 추가하는 방법은 다음과 같습니다.

설치 프로젝트(위에서는 Setup이란 이름의 프로젝트)를 선택한 상태에서 마우스 우클릭을 한 다음, 메뉴가 나타나면, 추가 - 프로젝트 출력을 선택합니다.

 

 

 

 다음과 같은 항목이 나타나면, 우리는 우리가 추가하고자 하는 프로젝트를 선택하고, 확인을 누릅니다.

 

창이 닫히고 나면, 설치 프로젝트 아래, 발견된 종속성에는 Microsoft.NET Framework이란 항목이 추가가 되어 있고, 프로젝트 아래에는 HelloWorld의 기본 출력(활성)이란 항목이 새로이 추가된 것을 확인할 수 있습니다.

 

 이 때, 발견된 종속성에는 만약 배포하고자 하는 프로젝트에 .NET Framework에서 제공하는 참조(DLL 등) 이외에 추가적인 참조가 존재한다면, 자동적으로 포함이 됩니다. 하지만, 가끔 추가가 되지 않는 경우도 있는데, 이 때는 직접적으로 추가를 해야합니다.

 

 

 

 

 그럼 이제 속성 창을 살펴보도록 하겠습니다. 속성창의 항목들은 기본적으로 속성 이름을 통해 그 역할을 직관적으로 이해할 수 있습니다.

 

 이 속성들 중에서 매우 중요한 2가지 항목을 꼽자면, 바로 RemovePreviousVersionVersion이 아닐까 싶습니다.

 

 RemovePreviousVersion은 새로운 배포 버전을 설치할 때, 이전 버전의 프로그램을 제거하고 설치할 것인지를 설정하는 속성입니다. 이 때, 버전은 프로그램의 버전이 아닌, 셋업 프로그램의 버전을 보고 판단합니다.

 

 따라서, 이전 셋업 프로그램의 Version이 1.0.0이었다면, 새로 배포할 때는 이 버전을 업그레이드 해줘야 합니다.

 

Version 항목의 값을 수정하면, 다음과 같은 창이 나타나는데, "예"를 선택합니다.

 

 

 

만약, "예"를 선택하지 않은 경우, 이전 버전을 제거하지 못하는 경우가 발생합니다.

 

 

 

 그럼 이제, 파일 시스템 항목에 대해서 살펴보겠습니다.

일 시스템 항목은 우리가 배포하고자 하는 항목을을 사용자 시스템의 어느 곳에 위치시킬 것인지를 결정하는 속성이라 이해하면 됩니다.

 

 예를 들어, 프로그램의 실행 파일은 응용 프로그램 폴더에 두고, 실행 파일의 바로 가기는 사용자 바탕화면에, 그리고, 도움말 등은 사용자 프로그램 메뉴에 추가한다는 식으로 말입니다.

 

 설치 프로젝트에 우리가 배포하고자하는 프로젝트를 추가하면, 디폴트 값으로 응용 프로그램 폴더에 실행 파일이 추가됩니다.

 

 만약, 우리가 이 실행 파일의 바로가기를 바탕화면에 추가하고 싶다면?

그림에서 HelloWorld의 기본 출력(활성)에서 마우스 우클릭을 한 다음, 바로 가기 추가를 선택하여 바로 가기를 만듭니다. 그리고 이 바로가기를 드래그 & 드롭을 이용해 사용자 바탕화면으로 이동시키면 됩니다.

 

 이 때, 주의해야할 사항은 기본적으로 바로가기의 이름은 HelloWorld의 기본 출력(활성)의 바로가기란 다소 어색한 이름으로 만들어집니다. 만약, 이 상태로 설치 프로그램을 만들어, 설치하면 바탕화면에 이 어색한 이름 그대로 만들어지게 되는 것이죠.

 그러므로 HelloWorld같이 바로가기의 이름을 수정하여 배포하는 것이 덜 어색하겠죠..^^.

 

 아, 그리고 한가지 더.. 기본적으로 바로가기의 속성창에 보면 Icon 속성에 '없음'이라고 되어있습니다.

이 상태로 배포하면 당연 바탕화면의 바로 가기는 아무런 아이콘이 없는.. (엄밀히 말하면 도스 창 형태의 아이콘을..) 상태로 사용자 바탕화면에 추가되게 됩니다. 그다지 보기 좋지 않겠죠..^^

 

 여기까지 하셨다면, 가장 기본적인 인스톨 프로그램을 완성하실 수 있게된 것입니다.

 

하지만, 아직 부족한 점이 몇 몇 보입니다. 예를 들어, 고객의 정보를 입력 받는 창을 만들고 싶다던지, 프로그램이 설치되고 나면, 라이센스(EULA)에 관한 텍스트 파일을 보여준다던지, 회사의 홈페이지가 나타나게 하고 싶은데 말입니다.

 

이와 같은 내용은 다음 강좌에서 설명할 수 있도록 하겠습니다. 아울러, 이 설치 프로젝트를 보다 커스터마이징할 수 있는 Installer 클래스에 대해서도 알아보도록 하겠습니다.

 

 장문의 글 읽어주셔서 감사합니다.

 

덧글에 있어 수정할 내용이나 추가할 내용 있으면 가감없이 말씀해주세요.

안정적인 DNS서비스 DNSEver DNS server, DNS service
Posted by 키르히아이스

댓글을 달아 주세요