Freigeben über


Ereignisquellen

Jedes Protokoll im Eventlog-Schlüssel enthält Unterschlüssel, die Ereignisquellengenannt werden. Die Ereignisquelle ist der Name der Software, die das Ereignis protokolliert. Es ist häufig der Name der Anwendung oder der Name einer Unterkomponente der Anwendung, wenn die Anwendung groß ist. Sie können der Registrierung maximal 16.384 Ereignisquellen hinzufügen. Das Security-Protokoll ist nur für die Systemverwendung vorgesehen. Gerätetreiber sollten ihre Namen dem System--Protokoll hinzufügen. Anwendungen und Dienste sollten ihre Namen dem protokoll Application hinzufügen oder ein benutzerdefiniertes Protokoll erstellen.

Die Struktur der Ereignisquellen lautet wie folgt:

HKEY_LOCAL_MACHINE
   SYSTEM
      CurrentControlSet
         Services
            EventLog
               Application
                  AppName
               Security
               System
                  DriverName
               CustomLog
                  AppName

Sie können keinen Quellnamen verwenden, der bereits als Protokollname verwendet wurde. Darüber hinaus können Quellnamen nicht hierarchisch sein; das heißt, sie können das umgekehrte Schrägstrichzeichen ("\") nicht enthalten.

Jede Ereignisquelle enthält Informationen (z. B. eine Nachrichtendatei), die für die Software spezifisch ist, die die Ereignisse protokolliert, wie in der folgenden Tabelle dargestellt.

Registrierungswert Beschreibung
CategoryCount- Anzahl der unterstützten Ereigniskategorien. Dieser Wert ist vom Typ REG_DWORD.
CategoryMessageFile- Pfad zur Nachrichtendatei der Kategorie. Eine Kategorienachrichtendatei enthält sprachabhängige Zeichenfolgen, die die Kategorien beschreiben. Dieser Wert kann vom Typ REG_SZ oder REG_EXPAND_SZsein.
EventMessageFile- Pfad zu einer oder mehreren Ereignisnachrichtendateien; verwenden Sie ein Semikolon, um mehrere Dateien zu trennen. Eine Ereignisnachrichtendatei enthält sprachabhängige Zeichenfolgen, die die Ereignisse beschreiben. Dieser Wert kann vom Typ REG_SZ oder REG_EXPAND_SZsein.
ParameterMessageFile- Pfad zur Parameternachrichtendatei. Eine Parameternachrichtendatei enthält sprachunabhängige Zeichenfolgen, die in die Ereignisbeschreibungszeichenfolgen eingefügt werden sollen. Dieser Wert kann vom Typ REG_SZ oder REG_EXPAND_SZsein.
TypesSupported- Bitmaske unterstützter Typen. Dieser Wert ist vom Typ REG_DWORD. Dabei kann es sich um einen oder mehrere der folgenden Werte handeln:
EVENTLOG_AUDIT_FAILURE (0x0010)
EVENTLOG_AUDIT_SUCCESS (0x0008)
EVENTLOG_ERROR_TYPE (0x0001)
EVENTLOG_INFORMATION_TYPE (0x0004)
EVENTLOG_WARNING_TYPE (0x0002)

 

Wenn eine Anwendung die RegisterEventSource- oder OpenEventLog--Funktion verwendet, um ein Handle für ein Ereignisprotokoll abzurufen, sucht der Ereignisprotokollierungsdienst nach der angegebenen Ereignisquelle in der Registrierung. Beispielsweise kann das -Anwendungsprotokoll Ereignisquellen für Microsoft SQL Server und Microsoft Excel enthalten. Wenn eine Anwendung RegisterEventSource- oder OpenEventLog- mit einem Quellnamen von Application, SQL oder Excel verwendet, gibt der Ereignisprotokollierungsdienst ein Handle an das Application-Protokoll zurück.

Eine Anwendung kann das protokoll Application verwenden, ohne der Registrierung eine neue Ereignisquelle hinzuzufügen. Wenn die Anwendung RegisterEventSource- aufruft und einen Quellnamen übergibt, der in der Registrierung nicht gefunden werden kann, verwendet der Ereignisprotokollierungsdienst standardmäßig das protokoll Application. Da jedoch keine Nachrichtendateien vorhanden sind, kann die Ereignisanzeige keine Ereignisbezeichner oder Ereigniskategorien einer Beschreibungszeichenfolge zuordnen und zeigt einen Fehler an. Aus diesem Grund sollten Sie der Registrierung für Ihre Anwendung eine eindeutige Ereignisquelle hinzufügen und eine Nachrichtendatei angeben.