Installer.Uninstall(IDictionary) Installer.Uninstall(IDictionary) Installer.Uninstall(IDictionary) Installer.Uninstall(IDictionary) Method

定義

派生クラスによってオーバーライドされた場合、インストール内容を削除します。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 IDictionary IDictionary

インストールが完了した後のコンピューターの状態を格納している IDictionaryAn 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.

次の例は、 UninstallInstallerメソッドを示しています。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 'Uninstall

注意 (継承者)

-派生クラスで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.

適用対象

こちらもご覧ください