Visual Studio Setup Project Uninstall 기능 추가
Bit / 2012. 2. 3. 16:56
Visual Studio Setup Project에서 코드추가없이 Uninstall 기능 추가하기
이 방법은 Visual Studio 2005와 2008에서 가능하다.
설치 및 배포 프로젝트의 파일 시스템 화면으로 이동하고, 대상 컴퓨터의 파일 시스템에서 마우스 오른쪽 버튼을 클릭해서 시스템 폴더를 특수폴더로 추가한다.
추가한 시스템 폴더를 클릭하고 자신의 컴퓨터에서 msiexec.exe 파일을 찾아서 추가한다. 이 파일은 컴퓨터에서 윈도우가 설치된 폴더하부의 System32 폴더에서 찾을 수 있다. (예, C:\Windows\System32\msiexec.exe)
추가한 msiexec.exe 파일을 선택하고 속성을 다음과 같이 변경한다.
Condition : Not Installed (대소문자까지 확실하게 구분해서 입력한다.)
Permanent : True
System : True
Vital : False
사용자 프로그램 메뉴에 바로가기를 하나 추가하고 대상 파일을 위에서 추가한 msiexec.exe 파일로 지정한다. 추가한 바로가기 이름은 Uninstall Application 처럼 변경하도록 하자. 그리고, 추가한 바로가기의 Arguments 속성에 /x [ProductCode] 를 입력한다.
프로젝트를 빌드한다. 그러면 msiexec가 보호되므로 제외해야 한다고 나오지만 그냥 무시하도록 한다. 위에서 msiexec.exe 파일에 설정한 속성중에 ‘Not Installed’ Condition과 Permananet 속성을 True로 설정했으므로 msiexec.exe 파일은 시스템 폴더에 존재하지 않을 경우에만 설치되게 되고, 제거시에도 제거되지 않는다.
이 방법은 Visual Studio 2005와 2008에서 가능하다.
설치 및 배포 프로젝트의 파일 시스템 화면으로 이동하고, 대상 컴퓨터의 파일 시스템에서 마우스 오른쪽 버튼을 클릭해서 시스템 폴더를 특수폴더로 추가한다.
추가한 시스템 폴더를 클릭하고 자신의 컴퓨터에서 msiexec.exe 파일을 찾아서 추가한다. 이 파일은 컴퓨터에서 윈도우가 설치된 폴더하부의 System32 폴더에서 찾을 수 있다. (예, C:\Windows\System32\msiexec.exe)
추가한 msiexec.exe 파일을 선택하고 속성을 다음과 같이 변경한다.
Condition : Not Installed (대소문자까지 확실하게 구분해서 입력한다.)
Permanent : True
System : True
Vital : False
사용자 프로그램 메뉴에 바로가기를 하나 추가하고 대상 파일을 위에서 추가한 msiexec.exe 파일로 지정한다. 추가한 바로가기 이름은 Uninstall Application 처럼 변경하도록 하자. 그리고, 추가한 바로가기의 Arguments 속성에 /x [ProductCode] 를 입력한다.
프로젝트를 빌드한다. 그러면 msiexec가 보호되므로 제외해야 한다고 나오지만 그냥 무시하도록 한다. 위에서 msiexec.exe 파일에 설정한 속성중에 ‘Not Installed’ Condition과 Permananet 속성을 True로 설정했으므로 msiexec.exe 파일은 시스템 폴더에 존재하지 않을 경우에만 설치되게 되고, 제거시에도 제거되지 않는다.