Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase TransactedInstaller

 

Publicado: octubre de 2016

Define a un instalador que totalmente satisfactoria o incorrecta y que deja el equipo en su estado inicial.

Espacio de nombres:   System.Configuration.Install
Ensamblado:  System.Configuration.Install (en System.Configuration.Install.dll)

System.Object
  System.MarshalByRefObject
    System.ComponentModel.Component
      System.Configuration.Install.Installer
        System.Configuration.Install.TransactedInstaller

public class TransactedInstaller : Installer

NombreDescripción
System_CAPS_pubmethodTransactedInstaller()

Inicializa una nueva instancia de la clase TransactedInstaller.

NombreDescripción
System_CAPS_protpropertyCanRaiseEvents

Obtiene un valor que indica si el componente puede provocar un evento.(Heredado de Component).

System_CAPS_pubpropertyContainer

Obtiene IContainer que contiene Component.(Heredado de Component).

System_CAPS_pubpropertyContext

Obtiene o establece información sobre la instalación actual.(Heredado de Installer).

System_CAPS_protpropertyDesignMode

Obtiene un valor que indica si la Component está actualmente en modo de diseño.(Heredado de Component).

System_CAPS_protpropertyEvents

Obtiene la lista de controladores de eventos que se adjuntará a este Component.(Heredado de Component).

System_CAPS_pubpropertyHelpText

Obtiene el texto de ayuda de todos los instaladores que se encuentran en la colección de instaladores.(Heredado de Installer).

System_CAPS_pubpropertyInstallers

Obtiene la colección de instaladores que contiene este instalador.(Heredado de Installer).

System_CAPS_pubpropertyParent

Obtiene o establece el instalador que contiene la colección a la que pertenece este instalador.(Heredado de Installer).

System_CAPS_pubpropertySite

Obtiene o establece la ISite de la Component.(Heredado de Component).

NombreDescripción
System_CAPS_pubmethodCommit(IDictionary)

Cuando se reemplaza en una clase derivada, finaliza la transacción de instalación.(Heredado de Installer).

System_CAPS_pubmethodCreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar a un proxy que se utiliza para comunicarse con un objeto remoto.(Heredado de MarshalByRefObject).

System_CAPS_pubmethodDispose()

Libera todos los recursos que usa Component.(Heredado de Component).

System_CAPS_protmethodDispose(Boolean)

Libera los recursos no administrados que usa Component y libera los recursos administrados de forma opcional.(Heredado de Component).

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

System_CAPS_protmethodFinalize()

Libera recursos no administrados y realiza otras operaciones de limpieza antes de que se reclame el elemento Component durante la recolección de elementos no usados.(Heredado de Component).

System_CAPS_pubmethodGetHashCode()

Sirve como la función hash predeterminada.(Heredado de Object).

System_CAPS_pubmethodGetLifetimeService()

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.(Heredado de MarshalByRefObject).

System_CAPS_protmethodGetService(Type)

Devuelve un objeto que representa el servicio suministrado por Component o por Container.(Heredado de Component).

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_pubmethodInitializeLifetimeService()

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.(Heredado de MarshalByRefObject).

System_CAPS_pubmethodInstall(IDictionary)

Realiza la instalación.(Invalida Installer.Install(IDictionary)).

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficial del Object actual.(Heredado de Object).

System_CAPS_protmethodMemberwiseClone(Boolean)

Crea una copia superficial del elemento actual MarshalByRefObject objeto.(Heredado de MarshalByRefObject).

System_CAPS_protmethodOnAfterInstall(IDictionary)

Genera el evento AfterInstall.(Heredado de Installer).

System_CAPS_protmethodOnAfterRollback(IDictionary)

Genera el evento AfterRollback.(Heredado de Installer).

System_CAPS_protmethodOnAfterUninstall(IDictionary)

Genera el evento AfterUninstall.(Heredado de Installer).

System_CAPS_protmethodOnBeforeInstall(IDictionary)

Genera el evento BeforeInstall.(Heredado de Installer).

System_CAPS_protmethodOnBeforeRollback(IDictionary)

Genera el evento BeforeRollback.(Heredado de Installer).

System_CAPS_protmethodOnBeforeUninstall(IDictionary)

Genera el evento BeforeUninstall.(Heredado de Installer).

System_CAPS_protmethodOnCommitted(IDictionary)

Genera el evento Committed.(Heredado de Installer).

System_CAPS_protmethodOnCommitting(IDictionary)

Genera el evento Committing.(Heredado de Installer).

System_CAPS_pubmethodRollback(IDictionary)

Cuando se reemplaza en una clase derivada, restaura el estado en el que estaba el equipo antes de la instalación.(Heredado de Installer).

System_CAPS_pubmethodToString()

Devuelve un String que contiene el nombre de la Component, si existe. Este método no se debe invalidar.(Heredado de Component).

System_CAPS_pubmethodUninstall(IDictionary)

Quita una instalación.(Invalida Installer.Uninstall(IDictionary)).

NombreDescripción
System_CAPS_pubeventAfterInstall

Se produce después de ejecutarse los métodos Install de todos los instaladores de la propiedad Installers.(Heredado de Installer).

System_CAPS_pubeventAfterRollback

Se produce después de deshacerse la instalación de todos los instaladores de la propiedad Installers.(Heredado de Installer).

System_CAPS_pubeventAfterUninstall

Se produce después de que todos los instaladores de la propiedad Installers realicen sus operaciones de desinstalación.(Heredado de Installer).

System_CAPS_pubeventBeforeInstall

Se produce antes de ejecutarse el método Install de cada instalador en la colección de instaladores.(Heredado de Installer).

System_CAPS_pubeventBeforeRollback

Se produce antes de deshacerse los instaladores de la propiedad Installers.(Heredado de Installer).

System_CAPS_pubeventBeforeUninstall

Se produce antes de que los instaladores de la propiedad Installers realicen sus operaciones de desinstalación.(Heredado de Installer).

System_CAPS_pubeventCommitted

Se produce después de que todos los instaladores de la propiedad Installers confirmen sus instalaciones.(Heredado de Installer).

System_CAPS_pubeventCommitting

Se produce antes de que los instaladores de la propiedad Installers confirmen sus instalaciones.(Heredado de Installer).

System_CAPS_pubeventDisposed

Se produce cuando el componente se elimina mediante una llamada a la Dispose (método).(Heredado de Component).

Para ejecutar instaladores en una transacción, agregarlos a la Installers propiedad de este TransactedInstaller instancia.

En el ejemplo siguiente se muestra el TransactedInstaller, Install y Uninstall métodos de la TransactedInstaller clase.

Este ejemplo proporciona una implementación similar a la de Installutil.exe (Installer Tool). Instala a ensamblados con las opciones anteriores de dicho ensamblado en concreto. Si no se especifica una opción para un ensamblado, se utilizan opciones del ensamblado anterior si hay un ensamblado anterior en la lista. Si la "/ u" o "/Uninstall" se especifica la opción, se desinstalan los ensamblados. Si el "¿/?" o "/Help" opción se proporciona, se muestra la información de ayuda en la consola.

ArrayList myOptions = new ArrayList();
String myOption;
bool toUnInstall = false;
bool toPrintHelp = false;
TransactedInstaller myTransactedInstaller = new TransactedInstaller();
AssemblyInstaller myAssemblyInstaller;
InstallContext myInstallContext;

try
{
   for(int i = 0; i < args.Length; i++)
   {
      // Process the arguments.
      if(args[i].StartsWith("/") || args[i].StartsWith("-"))
      {
         myOption = args[i].Substring(1);
         // Determine whether the option is to 'uninstall' an assembly.
         if(String.Compare(myOption, "u", true) == 0 ||
            String.Compare(myOption, "uninstall", true) == 0)
         {
            toUnInstall = true;
            continue;
         }
         // Determine whether the option is for printing help information.
         if(String.Compare(myOption, "?", true) == 0 ||
            String.Compare(myOption, "help", true) == 0)
         {
            toPrintHelp = true;
            continue;
         }
         // Add the option encountered to the list of all options
         // encountered for the current assembly.
         myOptions.Add(myOption);
      }
      else
      {
         // Determine whether the assembly file exists.
         if(!File.Exists(args[i]))
         {
            // If assembly file doesn't exist then print error.
            Console.WriteLine("\nError : {0} - Assembly file doesn't exist.",
               args[i]);
            return;
         }

         // Create a instance of 'AssemblyInstaller' that installs the given assembly.
         myAssemblyInstaller = 
            new AssemblyInstaller(args[i], 
            (string[]) myOptions.ToArray(typeof(string)));
         // Add the instance of 'AssemblyInstaller' to the 'TransactedInstaller'.  
         myTransactedInstaller.Installers.Add(myAssemblyInstaller);
      }
   }
   // If user requested help or didn't provide any assemblies to install
   // then print help message.
   if(toPrintHelp || myTransactedInstaller.Installers.Count == 0)
   {
      PrintHelpMessage();
      return;
   }

   // Create a instance of 'InstallContext' with the options specified.
   myInstallContext = 
      new InstallContext("Install.log", 
      (string[]) myOptions.ToArray(typeof(string)));
   myTransactedInstaller.Context = myInstallContext;

   // Install or Uninstall an assembly depending on the option provided.
   if(!toUnInstall)
      myTransactedInstaller.Install(new Hashtable());
   else
      myTransactedInstaller.Uninstall(null);
}
catch(Exception e)
{
   Console.WriteLine("\nException raised : {0}", e.Message);
}  

.NET Framework
Disponible desde 1.1

Cualquier miembro ( Compartido en Visual Basic) estático público de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Volver al principio
Mostrar: