2008.11.11

설치 프로젝트를 생성하면
프로그램 설치 할 수 있는 setup.exe 파일과 프로젝트명.msi 파일이 생성된다.
파일 설치는 가능 하지만 
삭제를 할려면 제어판 - 프로그램 추가/삭제 에서 해당 프로그램을 삭제 해야 한다.

이러한 불편함을 덜기 위해서
Uninstall 프로그램을 설치 프로젝트에 추가 한다.

Uninstall 기능을 위한 콘솔 프로그램을 만든다.

        static void Main(string[] args)
        {
            try
            {
                System.Diagnostics.Process _proc = new System.Diagnostics.Process();
                _proc.EnableRaisingEvents = false;
                _proc.StartInfo.FileName = "
msiexec.exe";
                _proc.StartInfo.Arguments = "/x {879849C4-44B2-495C-BC0B-AA236F246771}";
                _proc.Start();
             }
             catch (Exception ex)
             {
                 Console.WriteLine(ex.Message);
             }
         }


"/x {879849C4-44B2-495C-BC0B-AA236F246771}" 에서
{} 이부분에는 설치 프로젝트의 ProductCode 값을 넣어 주면 된다.

process 객체를 생성하고 객체의 멤버 변수에 값을 설정 하는 부분은
함수를 따로 만들고 멤버 변수 값은 매개변수로 넘겨 주는 방식을 이용한다면
다른 프로젝트나 필요한 부분에 첨가 하여
이용 할 수 있을 것 같다.
이러한 것을 모듈화라고 하는건가??
암튼 좋은 방법이라고 생각이 든다.

빌드 한후 UnInstall 프로젝트을
설치 프로젝트에 추가 하여 빌드 하면
약소 하나마 UnInstall 기능을 구현 할 수 있을것 같다.

+ Recent posts