Installer.Uninstall(IDictionary) 메서드

정의

파생 클래스에서 재정의할 때 설치를 제거합니다.When overridden in a derived class, removes an installation.

public:
 virtual void Uninstall(System::Collections::IDictionary ^ savedState);
public virtual void Uninstall (System.Collections.IDictionary savedState);
abstract member Uninstall : System.Collections.IDictionary -> unit
override this.Uninstall : System.Collections.IDictionary -> unit
Public Overridable Sub Uninstall (savedState As IDictionary)

매개 변수

savedState
IDictionary

설치 완료 후의 컴퓨터 상태가 들어 있는 IDictionary입니다.An IDictionary that contains the state of the computer after the installation was complete.

예외

저장된 상태의 IDictionary가 손상되었을 가능성이 있는 경우The saved-state IDictionary might have been corrupted.

제거하는 동안 예외가 발생한 경우.An exception occurred while uninstalling. 이 예외는 무시되고 제거가 계속됩니다.This exception is ignored and the uninstall continues. 하지만 제거가 완료된 후에 애플리케이션이 완전하게 제거되지 못했을 수도 있습니다.However, the application might not be fully uninstalled after the uninstallation completes.

예제

다음 예제는 Uninstall 메서드의 Installer합니다.The following example demonstrates the Uninstall method of Installer. 합니다 Uninstall 파생된 클래스에서 메서드를 재정의 Installer합니다.The Uninstall method is overridden in the derived class of Installer.

   // Override 'Uninstall' method of Installer class.
public:
   virtual void Uninstall( IDictionary^ mySavedState ) override
   {
      if ( mySavedState == nullptr )
      {
         Console::WriteLine( "Uninstallation Error !" );
      }
      else
      {
         Installer::Uninstall( mySavedState );
         Console::WriteLine( "The Uninstall method of 'MyInstallerSample' has been called" );
      }
   }
// Override 'Uninstall' method of Installer class.
public override void Uninstall( IDictionary mySavedState )
{  
   if (mySavedState == null)
   {
      Console.WriteLine("Uninstallation Error !");
   }
   else
   {
      base.Uninstall( mySavedState );
      Console.WriteLine( "The Uninstall method of 'MyInstallerSample' has been called" );
   }
}
' Override 'Uninstall' method of Installer class.
Public Overrides Sub Uninstall(mySavedState As IDictionary)
   If mySavedState Is Nothing Then
      Console.WriteLine("Uninstallation Error !")
   Else
      MyBase.Uninstall(mySavedState)
      Console.WriteLine("The Uninstall method of 'MyInstallerSample' has been called")
   End If
End Sub

상속자 참고

-재정의 하는 경우는 Install(IDictionary) 파생된 클래스에서 메서드를 기본 클래스를 호출 해야 Install(IDictionary) 메서드를 먼저 파생된 메서드.- If you override the Install(IDictionary) method in a derived class, be sure to call the base class's Install(IDictionary) method first in your derived method. 합니다 Install(IDictionary) 메서드 호출을 Install(IDictionary) 에 포함 된 각 설치 관리자의 메서드는 Installers 이 인스턴스의 속성입니다.The Install(IDictionary) method calls the Install(IDictionary) method of each installer contained in the Installers property of this instance. 포함된 된 설치 관리자를 실행 한 후이 메서드를 업데이트 합니다 IDictionary 개체 (통해 지정 된는 stateSaver 매개 변수) 설치의 상태를 반영 하도록 합니다.After the contained installers run, this method updates the IDictionary object (specified through the stateSaver parameter) to reflect the status of the installation. 합니다 IDictionary 에 전달 될 때 비어 있어야 합니다 Install(IDictionary) 메서드.The IDictionary should be empty when passed to the Install(IDictionary) method. 모든 경우는 Install(IDictionary) 메서드 성공는 Commit(IDictionary) 메서드가 호출 됩니다.If all the Install(IDictionary) methods succeed, the Commit(IDictionary) method is called. 그렇지 않은 경우는 Rollback(IDictionary) 메서드가 호출 됩니다.Otherwise, the Rollback(IDictionary) method is called.

-설치 관리자 인스턴스를 추가 해야 하는 경우는 Installers 컬렉션에는 Install(IDictionary) 메서드를 컬렉션에 동일한 추가 수행 해야 합니다 Uninstall(IDictionary) 메서드.- If you need to add installer instances to the Installers collection in the Install(IDictionary) method, be sure to perform the same additions to the collection in the Uninstall(IDictionary) method. 설치 관리자 인스턴스를 추가 하는 경우 모두 메서드 컬렉션을 유지 관리를 방지할 수는 있지만 Installers 사용자 지정 설치 관리자에 대 한 클래스 생성자의 컬렉션입니다.However, you can avoid maintaining the collection in both methods if you add installer instances to the Installers collection in the class constructor for your custom installer.

적용 대상

추가 정보