Cuando se reemplaza en una clase derivada, quita una instalación.
Espacio de nombres: System.Configuration.Install
Ensamblado: System.Configuration.Install (en system.configuration.install.dll)
Visual Basic (Declaración)
Public Overridable Sub Uninstall ( _
savedState As IDictionary _
)
Dim instance As Installer
Dim savedState As IDictionary
instance.Uninstall(savedState)
public virtual void Uninstall (
IDictionary savedState
)
public:
virtual void Uninstall (
IDictionary^ savedState
)
public void Uninstall (
IDictionary savedState
)
public function Uninstall (
savedState : IDictionary
)
Parámetros
- savedState
IDictionary que contiene el estado del equipo una vez finalizada la instalación.
| Tipo de excepción | Condición |
|---|
ArgumentException | El IDictionary de estados guardados puede estar dañado. |
InstallException | Se ha producido una excepción durante la desinstalación. Se omite esta excepción y continúa la desinstalación. Sin embargo, puede que la aplicación no se haya desinstalado totalmente una vez finalizada la desinstalación. |
Notas para los herederos
Si se reemplaza el método Uninstall en una clase derivada, hay que asegurarse de llamar primero al método Uninstall de la clase base en el método derivado. Se llama al método Uninstall para quitar una instalación anteriormente realizada. Si bien no se realiza correctamente la desinstalación de uno de los instaladores de la colección, los demás instaladores quedarán desinstalados. Un error en la desinstalación no hará que el equipo vuelva al estado en que se encontraba antes de la desinstalación. Aunque los métodos Install y Commit guardan el estado del equipo después de las instalaciones, es posible que se haya eliminado el archivo que contiene el objeto IDictionary del parámetro savedState después de finalizarse la instalación. Si se ha eliminado el archivo, el parámetro savedState es referencia de objeto null (Nothing en Visual Basic). El método Uninstall debe poder controlar el caso de un parámetro referencia de objeto null (Nothing en Visual Basic)savedState.
En el siguiente ejemplo se muestra el método Uninstall de Installer. El método Uninstall se reemplaza en la clase derivada de Installer.
' 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
// 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:
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 void Uninstall(IDictionary mySavedState)
{
if (mySavedState.Equals(null)) {
Console.WriteLine("Uninstallation Error !");
}
else {
super.Uninstall(mySavedState);
Console.WriteLine("The Uninstall method of 'MyInstallerSample'"
+" has been called");
}
} //Uninstall
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea .
Windows 98, Windows 2000 SP4, Windows Millennium, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition
.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.
.NET Framework
Compatible con: 2.0, 1.1, 1.0