Ereignisquellen
Jedes Protokoll im Eventlog-Schlüssel enthält Unterschlüssel, die als Ereignisquellen bezeichnet werden. Die Ereignisquelle ist der Name der Software, die das Ereignis protokolliert. Dies ist häufig der Name der Anwendung oder der Name eines Teilkomponentens der Anwendung, wenn die Anwendung groß ist. Sie können der Registrierung maximal 16.384 Ereignisquellen hinzufügen. Das Sicherheitsprotokoll ist nur für die Systemverwendung vorgesehen. Gerätetreiber sollten ihre Namen dem Systemprotokoll hinzufügen. Anwendungen und Dienste sollten ihre Namen dem Anwendungsprotokoll 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. Außerdem können Quellnamen nicht hierarchisch sein. Das heißt, sie dürfen den umgekehrten Schrägstrich ("\") nicht enthalten.
Jede Ereignisquelle enthält Informationen (z. B . eine Nachrichtendatei), die für die Software spezifisch sind, die die Ereignisse protokolliert, wie in der folgenden Tabelle gezeigt.
Registrierungswert | BESCHREIBUNG |
---|---|
CategoryCount | Anzahl der unterstützten Ereigniskategorien. Dieser Wert ist vom Typ REG_DWORD. |
CategoryMessageFile | Pfad zur Kategoriemeldungsdatei. Eine Kategoriemeldungsdatei enthält sprachabhängige Zeichenfolgen, die die Kategorien beschreiben. Dieser Wert kann vom Typ REG_SZ oder REG_EXPAND_SZ sein. |
EventMessageFile | Pfad zu mindestens einer Ereignismeldungsdatei; verwenden Sie ein Semikolon, um mehrere Dateien zu trennen. Eine Ereignismeldungsdatei enthält sprachabhängige Zeichenfolgen, die die Ereignisse beschreiben. Dieser Wert kann vom Typ REG_SZ oder REG_EXPAND_SZ sein. |
ParameterMessageFile | Pfad zur Parametermeldungsdatei. Eine Parametermeldungsdatei enthält sprachunabhängige Zeichenfolgen, die in die Ereignisbeschreibungszeichenfolgen eingefügt werden sollen. Dieser Wert kann vom Typ REG_SZ oder REG_EXPAND_SZ sein. |
TypenUnterstützt | Bitmaske unterstützter Typen. Dieser Wert ist vom Typ REG_DWORD. Es kann sich um einen oder mehrere der folgenden Werte handeln:
EVENTLOG_AUDIT_SUCCESS (0x0008) EVENTLOG_ERROR_TYPE (0x0001) EVENTLOG_INFORMATION_TYPE (0x0004) EVENTLOG_WARNING_TYPE (0x0002) |
Wenn eine Anwendung die Funktion RegisterEventSource oder OpenEventLog 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 dem Quellnamen Application, SQL oder Excel verwendet, gibt der Ereignisprotokollierungsdienst ein Handle an das Anwendungsprotokoll zurück.
Eine Anwendung kann das Anwendungsprotokoll verwenden, ohne der Registrierung eine neue Ereignisquelle hinzuzufügen. Wenn die Anwendung RegisterEventSource aufruft und einen Quellnamen übergibt, der nicht in der Registrierung gefunden werden kann, verwendet der Ereignisprotokollierungsdienst standardmäßig das Anwendungsprotokoll . Da jedoch keine Nachrichtendateien vorhanden sind, kann der Ereignisanzeige keine Ereignisbezeichner oder Ereigniskategorien einer Beschreibungszeichenfolge zuordnen und zeigt einen Fehler an. Aus diesem Grund sollten Sie der Registrierung Ihrer Anwendung eine eindeutige Ereignisquelle hinzufügen und eine Nachrichtendatei angeben.