Installer.AfterRollback Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Tritt ein, nachdem ein Rollback aller Installationen der Installationsprogramme in der Installers-Eigenschaft ausgeführt wurde.
public:
event System::Configuration::Install::InstallEventHandler ^ AfterRollback;
public event System.Configuration.Install.InstallEventHandler AfterRollback;
member this.AfterRollback : System.Configuration.Install.InstallEventHandler
Public Custom Event AfterRollback As InstallEventHandler
Ereignistyp
Beispiele
Das folgende Beispiel veranschaulicht das AfterRollback Ereignis. Es überschreibt die Install -Methode und löst explizit ein aus ArgumentException , sodass die Rollback -Methode aufgerufen wird. Wenn abgeschlossen Rollback ist, tritt das AfterRollback Ereignis auf, und es wird eine Meldung angezeigt.
#using <System.dll>
#using <System.Configuration.Install.dll>
using namespace System;
using namespace System::Collections;
using namespace System::ComponentModel;
using namespace System::Configuration::Install;
// Set 'RunInstaller' attribute to true.
[RunInstaller(true)]
ref class MyInstallerClass: public Installer
{
private:
// Event handler for 'AfterRollback' event.
void MyInstaller_AfterRollBack( Object^ sender, InstallEventArgs^ e )
{
Console::WriteLine( "AfterRollBack Event occurred." );
}
public:
MyInstallerClass()
{
// Attach the 'AfterRollback' event.
this->AfterRollback += gcnew InstallEventHandler( this, &MyInstallerClass::MyInstaller_AfterRollBack );
}
// Override the 'Install' method.
virtual void Install( IDictionary^ savedState ) override
{
Installer::Install( savedState );
// Explicitly throw an exception so that roll back is called.
throw gcnew ArgumentException( "Arg Exception" );
}
// 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 );
}
};
int main()
{
Console::WriteLine( "Usage : installutil.exe Installer_AfterRollback.exe " );
}
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 'AfterRollback' event.
this.AfterRollback += new InstallEventHandler(MyInstaller_AfterRollBack);
}
// Event handler for 'AfterRollback' event.
private void MyInstaller_AfterRollBack(object sender, InstallEventArgs e)
{
Console.WriteLine("AfterRollBack Event occurred.");
}
// 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_AfterRollback.exe ");
}
}
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 'AfterRollback' event.
AddHandler Me.AfterRollback, AddressOf MyInstaller_AfterRollBack
End Sub
' Event handler for 'AfterRollback' event.
Private Sub MyInstaller_AfterRollBack(sender As Object, e As InstallEventArgs)
Console.WriteLine("")
Console.WriteLine("AfterRollBack Event occurred.")
Console.WriteLine("")
End Sub
' 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
' 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 Shared Sub Main()
Console.WriteLine("Usage : installutil.exe Installer_AfterRollback.exe ")
End Sub
End Class