UninstallAction Enumeración

Definición

Especifica lo que debe hacer un instalador durante una operación de desinstalación.Specifies what an installer should do during an uninstallation.

public enum class UninstallAction
public enum UninstallAction
type UninstallAction = 
Public Enum UninstallAction
Herencia
UninstallAction

Campos

NoAction 1

No modifica el recurso creado por el instalador.Leaves the resource created by the installer as is.

Remove 0

Quita el recurso creado por el instalador.Removes the resource the installer created.

Ejemplos

En el ejemplo siguiente se crea un desinstalador personalizado Installer que hereda la clase.The following sample creates a custom uninstaller that inherits the Installer class. En la función invalidada Uninstall , la UninstallAction enumeración se establece en función de los datos proporcionados por el usuario.In the overridden Uninstall function, the UninstallAction enumeration is set based on user input. Si la entrada es "n", el desinstalador personalizado no realizará ninguna acción en el recurso del registro de eventos especificado por el usuario.If the input is "n", the custom uninstaller will not take any action on the resource in the event log entered by the user. De lo contrario, quitará el recurso del registro de eventos.Otherwise, it will remove the resource from the event log.

#using <System.dll>
#using <System.Configuration.Install.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Collections;
using namespace System::ComponentModel;
using namespace System::Configuration::Install;

[RunInstaller(true)]
ref class MyUninstallActionClass: public Installer
{
private:
   EventLogInstaller^ myInstaller;

public:
   MyUninstallActionClass()
   {
      myInstaller = gcnew EventLogInstaller;
   }


   // Override the 'Install' method.
   virtual void Install( IDictionary^ savedState ) override
   {
      Console::Write( "Enter a new log to create (eg: MyLog): " );
      myInstaller->Log = Console::ReadLine();
      Console::Write( "Enter a source for log (eg: MySource): " );
      myInstaller->Source = Console::ReadLine();
      Installers->Add( myInstaller );
      Installer::Install( savedState );
   }


   // Override the 'Commit' method.
   virtual void Commit( IDictionary^ savedState ) override
   {
      Installer::Commit( savedState );
   }


   // Override the 'Rollback' method.
   virtual void Rollback( IDictionary^ savedState ) override
   {
      Installer::Rollback( savedState );
   }


   virtual void Uninstall( IDictionary^ savedState ) override
   {
      Console::Write( "Enter a source from log to uninstall(eg: MySource): " );
      myInstaller->Source = Console::ReadLine();
      Console::Write( "Do you want to uninstall, press 'y' for 'YES' and 'n' for 'NO':" );
      String^ myUninstall = Console::ReadLine();
      if ( myUninstall->Equals( "n" ) )
      {
         
         // No action to be taken on the resource in the event log.
         myInstaller->UninstallAction = UninstallAction::NoAction;
      }
      else
      {
         
         // Remove the resource from the event log.
         myInstaller->UninstallAction = UninstallAction::Remove;
      }

      Installers->Add( myInstaller );
      Installer::Uninstall( savedState );
   }

};

int main()
{
   Console::WriteLine( "Syntax for install: installutil.exe UninstallAction_NoAction_Remove_3.exe " );
   Console::WriteLine( "Syntax for uninstall: installutil.exe /u UninstallAction_NoAction_Remove_3.exe " );
}

using System;
using System.Diagnostics;
using System.Collections;
using System.ComponentModel;
using System.Configuration.Install;

[RunInstaller(true)]
public class MyUninstallActionClass : Installer 
{
   EventLogInstaller myInstaller = new EventLogInstaller();
   
   // Override the 'Install' method.
   public override void Install(IDictionary savedState)
   {
      Console.Write("Enter a new log to create (eg: MyLog ): ");
      myInstaller.Log = Console.ReadLine();
      Console.Write("Enter a source for log (eg: MySource ): ");
      myInstaller.Source = Console.ReadLine();
      Installers.Add( myInstaller );
      base.Install(savedState);
   }

   // Override the 'Commit' method.
   public override void Commit(IDictionary savedState)
   {
      base.Commit(savedState);
   }

   // Override the 'Rollback' method.
   public override void Rollback(IDictionary savedState)
   {
      base.Rollback(savedState);
   }
   public override void Uninstall(IDictionary savedState)
   {
      Console.Write("Enter a source from log to uninstall(eg: MySource ): ");
      myInstaller.Source = Console.ReadLine();

      Console.Write("Do you want to uninstall, press 'y' for 'YES' and 'n' for 'NO':");
      string myUninstall = Console.ReadLine();
     
      if( myUninstall == "n" )
      {
         // No action to be taken on the resource in the event log.
         myInstaller.UninstallAction = System.Configuration.Install.UninstallAction.NoAction;
      }
      else
      {
         // Remove the resource from the event log.
         myInstaller.UninstallAction = System.Configuration.Install.UninstallAction.Remove;
      }
      Installers.Add( myInstaller );
      base.Uninstall(savedState);
   }
   public static void Main()
   {
      Console.WriteLine("Syntax for install: installutil.exe UninstallAction_NoAction_Remove_3.exe ");
      Console.WriteLine("Syntax for uninstall: installutil.exe /u "
         +"UninstallAction_NoAction_Remove_3.exe ");
   }

}
Imports System.Diagnostics
Imports System.Collections
Imports System.ComponentModel
Imports System.Configuration.Install

<RunInstaller(True)>  _
Public Class MyUninstallActionClass
   Inherits Installer
   Private myInstaller As New EventLogInstaller()

   ' Override the 'Install' method.
   Public Overrides Sub Install(savedState As IDictionary)
      Console.Write("Enter a new log to create (eg: MyLog ): ")
      myInstaller.Log = Console.ReadLine()
      Console.Write("Enter a source for log (eg: MySource ): ")
      myInstaller.Source = Console.ReadLine()
      Installers.Add(myInstaller)
      MyBase.Install(savedState)
   End Sub

   ' Override the 'Commit' method.
   Public Overrides Sub Commit(savedState As IDictionary)
      MyBase.Commit(savedState)
   End Sub

   ' Override the 'Rollback' method.
   Public Overrides Sub Rollback(savedState As IDictionary)
      MyBase.Rollback(savedState)
   End Sub

   Public Overrides Sub Uninstall(savedState As IDictionary)

      Console.Write("Enter a source from log to uninstall(eg: MySource ): ")
      myInstaller.Source = Console.ReadLine()

      Console.Write("Do you want to uninstall, press 'y' for 'YES' and 'n' for 'NO':")
      Dim myUninstall As String = Console.ReadLine()

      If myUninstall = "n" Then
         ' No action to be taken on the resource in the event log.
         myInstaller.UninstallAction = System.Configuration.Install.UninstallAction.NoAction
      Else
         ' Remove the resource from the event log.
         myInstaller.UninstallAction = System.Configuration.Install.UninstallAction.Remove
      End If
      Installers.Add(myInstaller)
      MyBase.Uninstall(savedState)
   End Sub

   Public Shared Sub Main()
      Console.WriteLine("Syntax for install: installutil.exe "+ _
                        "UninstallAction_NoAction_Remove_3.exe ")
      Console.WriteLine("Syntax for uninstall: installutil.exe /u " + _
                        "UninstallAction_NoAction_Remove_3.exe ")
   End Sub

End Class

Se aplica a

Consulte también: