Installer.Uninstall(IDictionary) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在派生类中重写时,移除安装。
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 可能已损坏。
卸载时发生异常。 忽略该异常,卸载继续进行。 但是,卸载完成后应用程序可能未完全卸载。
示例
下面的示例演示了 Uninstall 方法 Installer。 该方法 Uninstall 在派生类 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) 的方法。 该方法 Install(IDictionary) 调用 Install(IDictionary) 此实例属性中包含的 Installers 每个安装程序的方法。 运行包含的安装程序后,此方法更新 IDictionary 通过
stateSaver
参数) 指定的对象 (以反映安装状态。 IDictionary传递给Install(IDictionary)方法时应为空。 如果所有 Install(IDictionary) 方法都成功,则调用该方法 Commit(IDictionary) 。 否则,将 Rollback(IDictionary) 调用该方法。如果需要将安装程序实例添加到Installers方法中的集合,请务必在方法中Install(IDictionary)Uninstall(IDictionary)对集合执行相同的添加。 但是,如果将安装程序实例添加到 Installers 自定义安装程序的类构造函数中的集合,则可以避免在这两种方法中维护集合。