연습: 사용자 지정 작업을 사용하여 설치하는 동안 메시지 표시

다음 연습에서는 사용자 지정 작업을 사용하여 사용자 입력을 받아서 설치 중에 표시되는 메시지 상자에 그 정보를 전달하는 방법을 보여 줍니다. 즉 여러 가지 작업에 유용한 사용자 지정 작업의 사용법을 간단하게 보여 줍니다. 예를 들면 사용자 지정 작업을 통해 Setup.exe 파일의 위치를 사용자 입력으로 받아서, 응용 프로그램을 설치 후 시작하는 데 이 위치를 사용할 수 있습니다.

이 연습에서는 사용자 지정 작업을 사용하여 동적 속성에 데이터를 전달하는 방법과 설치 관리자 클래스 및 CustomActionData 속성을 사용하는 방법을 보여 줍니다.

참고

다음 지침처럼 컴퓨터에서 Visual Studio 사용자 인터페이스 요소 일부에 대한 이름이나 위치를 다르게 표시할 수 있습니다. 이러한 요소는 사용하는 Visual Studio 버전 및 설정에 따라 결정됩니다. 자세한 내용은 Visual Studio 설정을 참조하십시오.

사용자 지정 작업을 만들려면

  1. 파일 메뉴에서 새로 만들기를 가리킨 다음 프로젝트를 클릭합니다.

  2. 새 프로젝트 대화 상자의 프로젝트 형식 창에서 Visual Basic을 선택한 다음 템플릿 창에서 클래스 라이브러리를 선택합니다. 이름 상자에 PassData를 입력합니다.

    솔루션 탐색기에 프로젝트가 추가됩니다.

설치 관리자 클래스를 만들려면

  1. 프로젝트 메뉴에서 클래스 추가를 클릭합니다.

    새 항목 추가 대화 상자에서 설치 관리자 클래스를 선택합니다. 기본 이름을 적용합니다.

  2. 디자인 화면에 설치 관리자 클래스가 표시되면 디자인 화면을 마우스 오른쪽 단추로 클릭하고 코드 보기를 클릭하여 코드 편집기에서 파일 내용을 봅니다.

  3. 다음 프로시저를 추가하여 기본 클래스의 Install, Commit, RollbackUninstall 프로시저를 재정의합니다.

    Public Overrides Sub Install(ByVal stateSaver As System.Collections.IDictionary)
        MyBase.Install(stateSaver)
        Dim myInput As String = Me.Context.Parameters.Item("Message")
        If myInput Is Nothing Then
            myInput = "There was no message specified"
        End If
        MsgBox(myInput)
    End Sub
    
    Public Overrides Sub Commit(ByVal savedState As System.Collections.IDictionary)
        MyBase.Commit(savedState)
    End Sub
    
    Public Overrides Sub Rollback(ByVal savedState As System.Collections.IDictionary)
        MyBase.Rollback(savedState)
    End Sub
    
    Public Overrides Sub Uninstall(ByVal savedState As System.Collections.IDictionary)
        MyBase.Uninstall(savedState)
    End Sub
    
    public override void Install(System.Collections.IDictionary stateSaver)
    {
        base.Install(stateSaver);
        string myInput = Context.Parameters["message"];
        if (myInput == null)
        {
            myInput = "There was no message specified";
        }
        MessageBox.Show(myInput);
    }
    
    public override void Commit(IDictionary savedState)
    {
        base.Commit(savedState);
    }
    
    public override void Rollback(IDictionary savedState)
    {
        base.Rollback(savedState);
    }
    
    public override void Uninstall(IDictionary savedState)
    {
        base.Uninstall(savedState);
    }
    

    참고

    Public Overrides를 입력하고 공백을 입력하면 Intellisense에서 메서드 및 속성 목록을 보여 줍니다. 목록에서 Install을 선택하면 전체 선언이 만들어집니다.

  4. 솔루션 탐색기에서 필요 없는 Class1 코드 파일을 마우스 오른쪽 단추로 클릭하고 삭제를 클릭합니다.

배포 프로젝트를 만들려면

  1. 파일 메뉴에서 추가를 가리킨 다음 새 프로젝트를 클릭합니다.

  2. 새 프로젝트 추가 대화 상자의 프로젝트 형식 창에서 기타 프로젝트 형식 노드를 확장하고 설치 및 배포를 선택한 다음 템플릿 창에서 설치 프로젝트를 선택합니다. 이름 상자에 PassData Installer를 입력합니다.

  3. 속성 창에서 ProductName 속성을 선택한 다음 PassData를 입력합니다.

    또한 Manufacturer 속성을 선택하고 회사 이름을 입력합니다.

  4. 파일 시스템 편집기에서 응용 프로그램 폴더 노드를 선택합니다. 작업 메뉴에서 추가를 가리킨 다음 프로젝트 출력을 클릭합니다.

  5. 프로젝트 출력 그룹 추가 대화 상자에서 PassData 프로젝트의 기본 출력을 선택합니다.

    **PassData의 기본 출력(활성)**이 파일 시스템 편집기에 나타납니다.

사용자 지정 작업을 추가하려면

  1. 솔루션 탐색기에서 PassData Installer 프로젝트를 선택합니다. 보기 메뉴에서 편집기를 가리킨 다음 사용자 지정 작업을 클릭합니다.

  2. 사용자 지정 작업 편집기에서 최상위에 있는 설치 노드를 선택합니다. 작업 메뉴에서 사용자 지정 작업 추가를 클릭합니다.

  3. 프로젝트에서 항목 선택 대화 상자에서 응용 프로그램 폴더를 두 번 클릭합니다.

  4. **PassData의 기본 출력(활성)**을 선택하여 PassData 사용자 지정 작업을 설치 노드에 추가합니다.

  5. 속성 창에서 CustomActionData 속성을 선택한 다음 /Message="[MESSAGE]"를 입력합니다.

  6. InstallerClass 속성은 기본값인 True로 설정해야 합니다.

설치 사용자 인터페이스를 사용자 지정하려면

  1. 솔루션 탐색기에서 설치 프로젝트를 선택합니다. 보기 메뉴에서 편집기를 가리킨 다음 사용자 인터페이스를 클릭합니다.

  2. 사용자 인터페이스 편집기설치 아래에서 시작 노드를 선택합니다. 작업 메뉴에서 대화 상자 추가를 클릭합니다.

  3. 대화 상자 추가 대화 상자에서 입력란 (A) 대화 상자를 선택합니다.

  4. 작업 메뉴에서 위로 이동을 클릭합니다. 입력란 (A) 대화 상자가 설치 폴더 노드 위에 올 때까지 반복합니다.

  5. 속성 창에서 BannerText 속성을 선택하고 다음과 같이 입력합니다.

    메시지 내용

  6. BodyText 속성을 선택하고 다음과 같이 입력합니다.

    여기에 메시지를 입력하십시오.

  7. Edit1Label 속성을 선택하고 다음과 같이 입력합니다.

    메시지:

  8. Edit1Property 속성을 선택하고 다음과 같이 입력합니다.

    메시지

  9. Edit2Visible, Edit3VisibleEdit4Visible 속성을 선택하고 False로 설정합니다.

  10. 빌드 메뉴에서 Pass Data 설치 관리자 빌드를 선택합니다**.**

개발 컴퓨터에 설치하려면

  • 솔루션 탐색기에서 PassData Installer 프로젝트를 선택합니다. 프로젝트 메뉴에서 설치를 클릭합니다.

    그러면 개발 컴퓨터에서 설치 관리자가 실행됩니다. 메시지 내용 설치 대화 상자에서 Hello World!를 입력합니다..

    참고

    설치 관리자를 실행하려면 해당 컴퓨터에 대한 설치 권한이 있어야 합니다.

다른 컴퓨터에 배포하려면

  1. Windows 탐색기에서 프로젝트 디렉터리로 이동한 다음 빌드된 설치 관리자를 찾습니다. 기본 project configuration은 Debug 또는 Release입니다.

  2. 디렉터리에 있는 PassData Installer.msi, Setup.exe 및 다른 모든 파일과 하위 디렉터리를 다른 컴퓨터로 복사합니다.

    참고

    네트워크에 연결되어 있지 않은 컴퓨터에 설치하려면 CD-ROM 등의 미디어에 파일을 복사하십시오.

    대상 컴퓨터에서 Setup.exe 파일을 두 번 클릭하여 설치 관리자를 실행합니다. 메시지 내용 설치 대화 상자에서 Hello World!를 입력합니다..

    참고

    설치 관리자를 실행하려면 해당 컴퓨터에 대한 설치 권한이 있어야 합니다.

설치를 테스트하려면

  • 응용 프로그램을 실행하고 설치 도중 입력된 "Hello World!"라는 텍스트가 입력란에 들어 있는지 확인합니다.

응용 프로그램을 제거하려면

  1. Windows 제어판에서 프로그램 추가/제거 또는 프로그램 및 기능을 두 번 클릭합니다.

  2. PassData Installer를 선택하고 제거를 클릭한 다음 확인을 클릭하여 대화 상자를 닫습니다.

    개발 컴퓨터에서 제거하려면 프로젝트 메뉴에서 설치 제거를 클릭합니다.

참고 항목

참조

CustomActionData 속성

기타 리소스

배포 시 사용자 지정 작업 관리