Export (0) Print
Expand All

Installer.BeforeRollback Event

Occurs before the installers in the Installers property are rolled back.

Namespace: System.Configuration.Install
Assembly: System.Configuration.Install (in system.configuration.install.dll)

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

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

In JScript, you can handle the events defined by a class, but you cannot define your own.
Not applicable.

The following example demonstrates the BeforeRollback event. It overrides the Install method and explicitly throws an ArgumentException so that the Rollback method is called. When the Rollback is complete, the BeforeRollback event occurs and a message is displayed.

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

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft