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)

'Declaration
Public Event BeforeRollback As InstallEventHandler
'Usage
Dim instance As Installer
Dim handler As InstallEventHandler

AddHandler instance.BeforeRollback, handler

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

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

JScript supports the use of events, but not the declaration of new ones.

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.

Imports System
Imports System.Collections
Imports System.ComponentModel
Imports System.Configuration.Install

' Set 'RunInstaller' attribute to true.
<RunInstaller(True)>  _
Public Class MyInstallerClass
   Inherits Installer

   Public Sub New()
      MyBase.New()
      ' Attach the 'BeforeRollback' event.
      AddHandler Me.BeforeRollback, AddressOf MyInstaller_BeforeRollBack
      ' Attach the 'AfterRollback' event.
      AddHandler Me.AfterRollback, AddressOf MyInstaller_AfterRollback
   End Sub 'New


   ' Event handler for 'BeforeRollback' event.
   Private Sub MyInstaller_BeforeRollBack(sender As Object, e As InstallEventArgs)
      Console.WriteLine("")
      Console.WriteLine("BeforeRollback Event occured.")
      Console.WriteLine("")
   End Sub 'MyInstaller_BeforeRollBack

   ' Event handler for 'AfterRollback' event.
   Private Sub MyInstaller_AfterRollback(sender As Object, e As InstallEventArgs)
      Console.WriteLine("")
      Console.WriteLine("AfterRollback Event occured.")
      Console.WriteLine("")
   End Sub 'MyInstaller_AfterRollback

   ' Override the 'Install' method.
   Public Overrides Sub Install(savedState As IDictionary)
      MyBase.Install(savedState)
      ' Explicitly throw an exception so that roll back is called.
      Throw New ArgumentException("Arg Exception")
   End Sub 'Install

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

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

   Public Shared Sub Main()
      Console.WriteLine("Usage : installutil.exe Installer_BeforeRollback.exe ")
   End Sub 'Main

End Class 'MyInstallerClass

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

  • Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see .

Windows 98, Windows 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 .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

Community Additions

ADD
Show: