SetTraceCallback-Funktion (evntrace.h)
Wichtig
Verwenden Sie diese Funktion nicht. In nachfolgenden Versionen ist sie möglicherweise nicht verfügbar. Filtern Sie stattdessen nach der Ereignisablaufverfolgungsklasse in Ihrer EventRecordCallback-Funktion .
Die SetTraceCallback-Funktion gibt eine EventCallback-Funktion zum Verarbeiten von Ereignissen für die angegebene Ereignisablaufverfolgungsklasse an.
Syntax
ULONG WMIAPI SetTraceCallback(
[in] LPCGUID pGuid,
[in] PEVENT_CALLBACK EventCallback
);
Parameter
[in] pGuid
Zeiger auf die Klassen-GUID einer Ereignisablaufverfolgungsklasse, für die Sie Ereignisse empfangen möchten. Eine Liste der GUIDs der Kernelanbieterklasse finden Sie unter NT-Kernelprotokollierungskonstanten.
[in] EventCallback
Zeiger auf eine EventCallback-Funktion , die zum Verarbeiten von Ereignissen verwendet wird, die zur Ereignisablaufverfolgungsklasse gehören.
Rückgabewert
Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.
Wenn die Funktion fehlschlägt, ist der Rückgabewert einer der Systemfehlercodes. Im Folgenden finden Sie einige häufige Fehler und deren Ursachen.
ERROR_INVALID_PARAMETER
Es trifft eine der folgenden Bedingungen zu:
- pGuid ist NULL.
- EventCallback ist NULL.
Hinweise
Consumer rufen diese Funktion auf.
Sie können nur eine Rückruffunktion für eine Ereignisablaufverfolgungsklasse angeben. Wenn Sie mehr als eine Rückruffunktion für die Ereignisablaufverfolgungsklasse angeben, empfängt die letzte Rückruffunktion die Ereignisse für diese Ereignisablaufverfolgungsklasse.
Um zu verhindern, dass die Rückruffunktion Ereignisse für die Ereignisablaufverfolgungsklasse empfängt, rufen Sie die RemoveTraceCallback-Funktion auf. Der Rückruf beendet automatisch den Empfang von Rückrufen, wenn Sie die Ablaufverfolgung schließen.
Sie können diese Funktion verwenden, um Ereignisse zu empfangen, die mit einer der TraceEvent-Funktionen geschrieben wurden. Sie können diese Funktion nicht verwenden, um Ereignisse von einem Anbieter zu nutzen, der eine der EventWrite-Funktionen zum Protokollieren von Ereignissen verwendet hat.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | evntrace.h |
Bibliothek | Sechost.lib auf Windows 8.1 und Windows Server 2012 R2; Advapi32.lib unter Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista und Windows XP |
DLL | Sechost.dll auf Windows 8.1 und Windows Server 2012 R2; Advapi32.dll unter Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista und Windows XP |