Cette documentation est archivée et n’est pas conservée.

Installer.BeforeRollback, événement

Se produit avant la restauration des programmes d'installation de la propriété Installers.

Espace de noms : System.Configuration.Install
Assembly : System.Configuration.Install (dans system.configuration.install.dll)

public event InstallEventHandler BeforeRollback
/** @event */
public void add_BeforeRollback (InstallEventHandler value)

/** @event */
public void remove_BeforeRollback (InstallEventHandler value)

JScript prend en charge l'utilisation d'événements mais pas la déclaration de nouveaux événements.

L'exemple suivant illustre l'événement BeforeRollback. Il substitue la méthode Install et lève une exception ArgumentException de manière explicite, entraînant l'appel à Rollback. Lorsque Rollback est terminé, l'événement BeforeRollback se produit et un message s'affiche.

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

// Set 'RunInstaller' attribute to true.
[RunInstaller(true)]
public class MyInstallerClass: Installer
{
   public MyInstallerClass() :base()
   {
      // Attach the 'BeforeRollback' event.
      this.BeforeRollback += new InstallEventHandler(MyInstaller_BeforeRollBack);
      // Attach the 'AfterRollback' event.
      this.AfterRollback += new InstallEventHandler(MyInstaller_AfterRollback);
   }
   // Event handler for 'BeforeRollback' event.
   private void MyInstaller_BeforeRollBack(object sender, InstallEventArgs e)
   {
      Console.WriteLine("");
      Console.WriteLine("BeforeRollback Event occured.");
      Console.WriteLine("");        
   }
   // Event handler for 'AfterRollback' event.
   private void MyInstaller_AfterRollback(object sender, InstallEventArgs e)
   {
      Console.WriteLine("");
      Console.WriteLine("AfterRollback Event occured.");
      Console.WriteLine("");        
   }
   // Override the 'Install' method.
   public override void Install(IDictionary savedState)
   {
      base.Install(savedState);
      // Explicitly throw an exception so that roll back is called.
      throw new ArgumentException("Arg Exception");
   }
   // 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 static void Main()
   {
      Console.WriteLine("Usage : installutil.exe Installer_BeforeRollback.exe ");      
   }
}

import System.*;
import System.Collections.*;
import System.ComponentModel.*;
import System.Configuration.Install.*;

// Set 'RunInstaller' attribute to true.
/** @attribute RunInstaller(true)
 */
public class MyInstallerClass extends Installer
{
    public MyInstallerClass()
    {
        // Attach the 'BeforeRollback' event.
        this.add_BeforeRollback(
            new InstallEventHandler(MyInstaller_BeforeRollBack));

        // Attach the 'AfterRollback' event.
        this.add_AfterRollback(
            new InstallEventHandler(MyInstaller_AfterRollback));
    } //MyInstallerClass

    // Event handler for 'BeforeRollback' event.
    private void MyInstaller_BeforeRollBack(Object sender, InstallEventArgs e)
    {
        Console.WriteLine("");
        Console.WriteLine("BeforeRollback Event occured.");
        Console.WriteLine("");
    } //MyInstaller_BeforeRollBack

    // Event handler for 'AfterRollback' event.
    private void MyInstaller_AfterRollback(Object sender, InstallEventArgs e)
    {
        Console.WriteLine("");
        Console.WriteLine("AfterRollback Event occured.");
        Console.WriteLine("");
    } //MyInstaller_AfterRollback

    // Override the 'Install' method.
    public void Install(IDictionary savedState)
    {
        super.Install(savedState);

        // Explicitly throw an exception so that roll back is called.
        throw new ArgumentException("Arg Exception");
    } //Install

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

    // Override the 'Rollback' method.
    public void Rollback(IDictionary savedState)
    {
        super.Rollback(savedState);
    } //Rollback

    public static void main(String[] args)
    {
        Console.WriteLine("Usage : installutil.exe"
            +" Installer_BeforeRollback.exe ");
    } //main
} //MyInstallerClass

  • Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez .

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0
Afficher: