TraceLoggingProviderEnabled-Funktion (traceloggingprovider.h)
TraceLogging-Makro, um zu bestimmen, ob ein Ablaufverfolgungs-Consumer auf ein Ereignis dieses Anbieters lauscht.
Syntax
TLG_PFORCEINLINE BOOLEAN TraceLoggingProviderEnabled(
TraceLoggingHProvider hProvider,
UCHAR eventLevel,
ULONGLONG eventKeyword
);
Parameter
hProvider
Das Handle für den zu überprüfenden TraceLogging-Anbieter.
eventLevel
Die Ereignisebene, die Sie überprüfen möchten. Die Ereignisebene 0 gibt alle Ereignisse an.
eventKeyword
Die Schlüsselwort (keyword), die Sie überprüfen möchten. Eine Schlüsselwort (keyword) von 0 gibt keine spezifischen Schlüsselwörter an.
Rückgabewert
Gibt TRUE zurück, wenn eine Ablaufverfolgungs-Consumersitzung Ereignisse lauscht, die den angegebenen Kriterien entsprechen, andernfalls FALSE .
Hinweise
Diese API bietet eine einfache Möglichkeit, zu bestimmen, ob ein Ereignis aktiviert ist, d. h. ob Ereignis-Consumersitzungen am Empfang eines Ereignisses vom angegebenen Anbieter mit der angegebenen Ebene und Schlüsselwort (keyword) interessiert sind.
Hinweis
Diese API führt einen konservativen Schnelltest durch. Es ist möglich, dass diese API true in bestimmten Fällen zurückgibt, in denen eine nachfolgende ausführliche Filterung feststellt, dass das Ereignis tatsächlich von keiner Sitzung erfasst werden muss.
Die meisten Ereignisanbieter rufen TraceLoggingProviderEnabled nicht direkt auf. Das TraceLoggingWrite-Makro führt einen eigenen TraceLoggingProviderEnabled-Test durch und gibt sofort zurück, wenn das Ereignis nicht aktiviert ist. Es kann jedoch hilfreich sein, dass ein Anbieter TraceLoggingProviderEnabled aufruft , bevor er komplexe Vorbereitungen ausführt, bevor ein TraceLoggingWrite-Makro aufgerufen wird.
Beispiele
// Skip GetMyInformation() if nobody is listening for MyInformationEvent:
if (TraceLoggingProviderEnabled(MyProvider, MyEventLevel, MyEventKeyword))
{
MY_INFORMATION info;
GetMyInformation(&info);
TraceLoggingWrite(
MyProvider,
"MyInformationEvent",
TraceLoggingLevel(MyEventLevel),
TraceLoggingKeyword(MyEventKeyword),
TraceLoggingValue(info.Val1),
TraceLoggingValue(info.Val2));
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Kopfzeile | traceloggingprovider.h |