EventLogInstaller Klasse
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.
Ermöglicht Ihnen das Installieren und Konfigurieren eines Ereignisprotokolls, das die Anwendung während der Ausführung liest bzw. in das sie schreibt.
public ref class EventLogInstaller : System::Configuration::Install::ComponentInstaller
public class EventLogInstaller : System.Configuration.Install.ComponentInstaller
type EventLogInstaller = class
inherit ComponentInstaller
Public Class EventLogInstaller
Inherits ComponentInstaller
- Vererbung
Beispiele
Im folgenden Codebeispiel werden die Installationseigenschaften für eine neue Ereignisquelle festgelegt. Im Codebeispiel werden der Quellname und der Ereignisprotokollname festgelegt und der EventLogInstallerInstallers Auflistung hinzugefügt.
#using <System.dll>
#using <System.Configuration.Install.dll>
using namespace System;
using namespace System::Configuration::Install;
using namespace System::Diagnostics;
using namespace System::ComponentModel;
[RunInstaller(true)]
ref class MyEventLogInstaller: public Installer
{
private:
EventLogInstaller^ myEventLogInstaller;
public:
MyEventLogInstaller()
{
// Create an instance of an EventLogInstaller.
myEventLogInstaller = gcnew EventLogInstaller;
// Set the source name of the event log.
myEventLogInstaller->Source = "NewLogSource";
// Set the event log that the source writes entries to.
myEventLogInstaller->Log = "MyNewLog";
// Add myEventLogInstaller to the Installer collection.
Installers->Add( myEventLogInstaller );
}
};
using System;
using System.Configuration.Install;
using System.Diagnostics;
using System.ComponentModel;
[RunInstaller(true)]
public class MyEventLogInstaller: Installer
{
private EventLogInstaller myEventLogInstaller;
public MyEventLogInstaller()
{
// Create an instance of an EventLogInstaller.
myEventLogInstaller = new EventLogInstaller();
// Set the source name of the event log.
myEventLogInstaller.Source = "NewLogSource";
// Set the event log that the source writes entries to.
myEventLogInstaller.Log = "MyNewLog";
// Add myEventLogInstaller to the Installer collection.
Installers.Add(myEventLogInstaller);
}
public static void Main()
{
MyEventLogInstaller myInstaller = new MyEventLogInstaller();
}
}
Imports System.Configuration.Install
Imports System.Diagnostics
Imports System.ComponentModel
<RunInstaller(True)> _
Public Class MyEventLogInstaller
Inherits Installer
Private myEventLogInstaller As EventLogInstaller
Public Sub New()
' Create an instance of an EventLogInstaller.
myEventLogInstaller = New EventLogInstaller()
' Set the source name of the event log.
myEventLogInstaller.Source = "NewLogSource"
' Set the event log that the source writes entries to.
myEventLogInstaller.Log = "MyNewLog"
' Add myEventLogInstaller to the Installer collection.
Installers.Add(myEventLogInstaller)
End Sub
Public Shared Sub Main()
End Sub
Dim myInstaller As New EventLogInstaller()
End Class
Hinweise
Wird EventLogInstaller vom Installutil.exe (Installationstool) beim Installieren eines Ereignisprotokolls verwendet. Die EventLogInstaller -Klasse kann Ereignisprotokolle nur auf dem lokalen Computer installieren.
Verwenden Sie die EventLogInstaller -Klasse, wenn Ihre Anwendung in ein Ereignisprotokoll schreibt. Es ist nicht erforderlich, ein Ereignisprotokollinstallationsprogramm zu verwenden, damit Ihre Anwendung aus einem Ereignisprotokoll lesen kann. Anwendungen und Dienste sollten in das Anwendungsprotokoll oder ein benutzerdefiniertes Protokoll schreiben. Gerätetreiber sollten in das Systemprotokoll schreiben.
Hinweis
Das Sicherheitsprotokoll ist schreibgeschützt.
Das Installationsprogramm erstellt die Ereignisquelle, die Sie in der Source -Eigenschaft angeben, und registriert sie für das in Log der -Eigenschaft angegebene Ereignisprotokoll. Dieses Verhalten ähnelt dem Aufrufen CreateEventSource der EventLog Komponente.
Verwenden Sie die WriteEvent Methoden und WriteEntry , um Ereignisse in ein Ereignisprotokoll zu schreiben. Sie müssen eine Ereignisquelle angeben, um Ereignisse zu schreiben. Sie müssen die Ereignisquelle erstellen und konfigurieren, bevor Sie den ersten Eintrag mit der Quelle schreiben.
Erstellen Sie die neue Ereignisquelle während der Installation Ihrer Anwendung. Dadurch kann das Betriebssystem die Liste der registrierten Ereignisquellen und deren Konfigurationen aktualisieren. Wenn das Betriebssystem seine Liste der Ereignisquellen nicht aktualisiert hat und Sie versuchen, ein Ereignis mit der neuen Quelle zu schreiben, schlägt der Schreibvorgang fehl. Sie können eine neue Quelle mit oder EventLogInstallermit der CreateEventSource -Methode konfigurieren. Sie müssen über Administratorrechte auf dem Computer verfügen, um eine neue Ereignisquelle zu erstellen.
Sie können eine Ereignisquelle für ein vorhandenes Ereignisprotokoll oder ein neues Ereignisprotokoll erstellen. Wenn Sie eine neue Quelle für ein neues Ereignisprotokoll erstellen, registriert das System die Quelle für dieses Protokoll, aber das Protokoll wird erst erstellt, wenn der erste Eintrag in das Protokoll geschrieben wurde.
Um ein Ereignisprotokoll zu installieren, erstellen Sie eine Projektinstallationsprogrammklasse, die von Installererbt, und legen Sie für RunInstallerAttribute die -Klasse auf true
fest. Erstellen Sie innerhalb Ihres Projekts für EventLogInstaller jedes Ereignisprotokoll, in das Ihre Anwendung schreibt, und fügen Sie die Instanz ihrer Projektinstallationsprogrammklasse hinzu.
Wenn das Installutil.exe (Installer-Tool) aufgerufen wird, wird die RunInstallerAttributeangezeigt. Wenn dies der Wert ist true
, installiert das Tool alle Elemente in der Auflistung, die Installers Ihrem Projektinstallationsprogramm zugeordnet sind. Wenn RunInstallerAttribute dies der Wert ist false
, ignoriert das Tool das Projektinstallationsprogramm.
Sie ändern andere Eigenschaften eines EventLogInstaller entweder vor oder nach dem Hinzufügen der Instanz zur Installers Auflistung Ihres Projektinstallationsprogramms, aber bevor das Installationstool ausgeführt wird. Sie müssen die Source -Eigenschaft festlegen, wenn Ihre Anwendung in das Ereignisprotokoll schreibt.
Verwenden Sie EventLogInstaller , um eine neue Quelle für ein neues oder vorhandenes Ereignisprotokoll zu registrieren. Verwenden EventLogInstaller Sie nicht, um eine vorhandene Quelle zu ändern. Die EventLogInstaller -Klasse ändert die Konfigurationseigenschaften einer vorhandenen Quelle nicht so, dass sie den angegebenen Installationseigenschaften entsprechen. Die Install -Methode löst eine Ausnahme aus, wenn die Source Eigenschaft mit einem Quellnamen übereinstimmt, der für ein anderes Ereignisprotokoll auf dem Computer registriert ist. Die Install -Methode registriert die Quelle nicht, wenn die Source -Eigenschaft mit einem Quellnamen übereinstimmt, der bereits für dasselbe Ereignisprotokoll registriert ist, das in der Log -Eigenschaft angegeben ist.
Sie können die Ereignisquelle mit lokalisierten Ressourcendateien für Ihre Ereigniskategorie und Nachrichtenzeichenfolgen registrieren. Ihre Anwendung kann Ereignisprotokolleinträge mithilfe von Ressourcenbezeichnern schreiben, anstatt die tatsächliche Zeichenfolge anzugeben. Die Ereignisanzeige verwendet den Ressourcenbezeichner, um die entsprechende Zeichenfolge aus der lokalisierten Ressourcendatei basierend auf den aktuellen Spracheinstellungen zu suchen und anzuzeigen. Sie können eine separate Datei für Ereigniskategorien, Nachrichten und Parametereinfügungszeichenfolgen registrieren, oder Sie können dieselbe Ressourcendatei für alle drei Typen von Zeichenfolgen registrieren. Verwenden Sie die CategoryCountEigenschaften , CategoryResourceFile, MessageResourceFileund ParameterResourceFile , um die Quelle zum Schreiben lokalisierter Einträge in das Ereignisprotokoll zu konfigurieren. Wenn Ihre Anwendung Zeichenfolgenwerte direkt in das Ereignisprotokoll schreibt, müssen Sie diese Eigenschaften nicht festlegen.
Die Quelle muss entweder für das Schreiben lokalisierter Einträge oder für das Schreiben direkter Zeichenfolgen konfiguriert werden. Wenn Ihre Anwendung Einträge mit Ressourcenbezeichnern und Zeichenfolgenwerten schreibt, müssen Sie zwei separate Quellen registrieren. Konfigurieren Sie beispielsweise eine Quelle mit Ressourcendateien, und verwenden Sie diese Quelle in der WriteEvent -Methode, um Einträge mithilfe von Ressourcenbezeichnern in das Ereignisprotokoll zu schreiben. Erstellen Sie eine andere Quelle ohne Ressourcendateien, und verwenden Sie dann diese Quelle in der WriteEntry -Methode, um Zeichenfolgen mithilfe dieser Quelle direkt in das Ereignisprotokoll zu schreiben.
In der Regel rufen Sie die Methoden der -Klasse nicht in Ihrem Code auf. Sie werden in der EventLogInstaller Regel nur von Installutil.exe aufgerufen. Das Tool ruft die Install -Methode während des Installationsvorgangs automatisch auf. Fehler werden bei Bedarf durch Aufrufen der -Methode für das Rollback -Objekt, das die Ausnahme generiert hat, gesichert.
Konstruktoren
EventLogInstaller() |
Initialisiert eine neue Instanz der EventLogInstaller-Klasse. |
Eigenschaften
CanRaiseEvents |
Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann. (Geerbt von Component) |
CategoryCount |
Ruft die Anzahl der Kategorien in der Kategorieressourcendatei ab oder legt diese fest. |
CategoryResourceFile |
Ruft den Pfad der Ressourcendatei ab, die die Kategoriezeichenfolgen für die Quelle enthält, oder legt diesen fest. |
Container |
Ruft die IContainer ab, die in der Component enthalten ist. (Geerbt von Component) |
Context |
Ruft Informationen über die derzeitige Installation ab oder legt diese fest. (Geerbt von Installer) |
DesignMode |
Ruft einen Wert ab, der angibt, ob sich Component gegenwärtig im Entwurfsmodus befindet. (Geerbt von Component) |
Events |
Ruft die Liste der Ereignishandler ab, die dieser Component angefügt sind. (Geerbt von Component) |
HelpText |
Ruft den Hilfetext für alle in der entsprechenden Auflistung enthaltenen Installationsprogramme ab. (Geerbt von Installer) |
Installers |
Ruft die Auflistung von Installationsprogrammen ab, die dieses Installationsprogramm enthält. (Geerbt von Installer) |
Log |
Ruft den Namen des Protokolls ab, für das die Quelle festgelegt werden soll, oder legt diesen fest. |
MessageResourceFile |
Ruft den Pfad der Ressourcendatei ab, die die Meldungsformatzeichenfolgen für die Quelle enthält, oder legt diesen fest. |
ParameterResourceFile |
Ruft den Pfad der Ressourcendatei ab, die die Meldungsparameterzeichenfolgen für die Quelle enthält, oder legt diesen fest. |
Parent |
Ruft das Installationsprogramm ab, das die Auflistung mit diesem Installationsprogramm enthält, oder legt dieses fest. (Geerbt von Installer) |
Site |
Ruft den ISite von Component ab oder legt ihn fest. (Geerbt von Component) |
Source |
Ruft den im Protokoll zu registrierenden Namen der Quelle ab oder legt diesen fest. |
UninstallAction |
Ruft einen Wert ab, der angibt, ob das Installutil.exe (Installer-Tool) das Ereignisprotokoll löschen oder zum Zeitpunkt der Deinstallation im installierten Zustand belassen soll, oder legt diesen Wert fest. |
Methoden
Commit(IDictionary) |
Schließt beim Überschreiben in einer abgeleiteten Klasse die Installationstransaktion ab. (Geerbt von Installer) |
CopyFromComponent(IComponent) |
Kopiert die Eigenschaftswerte einer EventLog-Komponente, die bei der Installation für ein Ereignisprotokoll benötigt werden. |
CreateObjRef(Type) |
Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind. (Geerbt von MarshalByRefObject) |
Dispose() |
Gibt alle vom Component verwendeten Ressourcen frei. (Geerbt von Component) |
Dispose(Boolean) |
Gibt die von Component verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei. (Geerbt von Component) |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetLifetimeService() |
Veraltet.
Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert. (Geerbt von MarshalByRefObject) |
GetService(Type) |
Gibt ein Objekt zurück, das einen von der Component oder von deren Container bereitgestellten Dienst darstellt. (Geerbt von Component) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
InitializeLifetimeService() |
Veraltet.
Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab. (Geerbt von MarshalByRefObject) |
Install(IDictionary) |
Führt die Installation durch und schreibt Ereignisprotokollinformationen in die Registrierung. |
IsEquivalentInstaller(ComponentInstaller) |
Ermittelt, ob das Installationsprogramm und ein anderes angegebenes Installationsprogramm auf dieselbe Quelle verweisen. |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
MemberwiseClone(Boolean) |
Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts. (Geerbt von MarshalByRefObject) |
OnAfterInstall(IDictionary) |
Löst das AfterInstall-Ereignis aus. (Geerbt von Installer) |
OnAfterRollback(IDictionary) |
Löst das AfterRollback-Ereignis aus. (Geerbt von Installer) |
OnAfterUninstall(IDictionary) |
Löst das AfterUninstall-Ereignis aus. (Geerbt von Installer) |
OnBeforeInstall(IDictionary) |
Löst das BeforeInstall-Ereignis aus. (Geerbt von Installer) |
OnBeforeRollback(IDictionary) |
Löst das BeforeRollback-Ereignis aus. (Geerbt von Installer) |
OnBeforeUninstall(IDictionary) |
Löst das BeforeUninstall-Ereignis aus. (Geerbt von Installer) |
OnCommitted(IDictionary) |
Löst das Committed-Ereignis aus. (Geerbt von Installer) |
OnCommitting(IDictionary) |
Löst das Committing-Ereignis aus. (Geerbt von Installer) |
Rollback(IDictionary) |
Versetzt den Computer durch Rollback der Ereignisprotokollinformationen, die von der Installationsprozedur in die Registrierung geschrieben wurden, in den Zustand vor der Installation zurück. |
ToString() |
Gibt einen String zurück, der den Namen der Component enthält (sofern vorhanden). Diese Methode darf nicht überschrieben werden. (Geerbt von Component) |
Uninstall(IDictionary) |
Entfernt eine Installation durch Entfernen der Ereignisprotokollinformationen aus der Registrierung. |
Ereignisse
AfterInstall |
Tritt ein, nachdem die Install(IDictionary)-Methoden aller in der Installers-Eigenschaft enthaltenen Installationsprogramme ausgeführt wurden. (Geerbt von Installer) |
AfterRollback |
Tritt ein, nachdem ein Rollback aller Installationen der Installationsprogramme in der Installers-Eigenschaft ausgeführt wurde. (Geerbt von Installer) |
AfterUninstall |
Tritt ein, nachdem alle Installationsprogramme in der Installers-Eigenschaft ihre jeweiligen Deinstallationsvorgänge ausgeführt haben. (Geerbt von Installer) |
BeforeInstall |
Tritt ein, bevor die Install(IDictionary)-Methode aller in der Auflistung der Installationsprogramme enthaltenen Installationsprogramme ausgeführt worden ist. (Geerbt von Installer) |
BeforeRollback |
Tritt ein, bevor ein Rollback der Installationsprogramme in der Installers-Eigenschaft ausgeführt wird. (Geerbt von Installer) |
BeforeUninstall |
Tritt ein, bevor die Installationsprogramme in der Installers-Eigenschaft ihre jeweiligen Deinstallationsvorgänge ausführen. (Geerbt von Installer) |
Committed |
Tritt ein, nachdem alle Installationsprogramme in der Installers-Eigenschaft ein Commit für ihre Installationen ausgeführt haben. (Geerbt von Installer) |
Committing |
Tritt ein, bevor die Installationsprogramme in der Installers-Eigenschaft ein Commit für ihre Installationen ausführen. (Geerbt von Installer) |
Disposed |
Tritt auf, wenn die Komponente von einem Aufruf der Dispose()-Methode verworfen wird. (Geerbt von Component) |