Megosztás a következőn keresztül:


TraceLogging-referencia

Az alábbi témakörök a C/C++ TraceLogging API-val kapcsolatos információkat tartalmaznak.

Jegyzet

Ha C/C++ kódból hoz létre eseményeket, és az események fordítási időben vannak definiálva, használja az ebben a szakaszban ismertetett API-kat. Ellenkező esetben, ha .NET-kódból hoz létre eseményeket, használja a .NET EventSource osztályt. Ellenkező esetben windowsos futtatókörnyezet (WinRT) használata esetén használja LoggingChannel. Ellenkező esetben előfordulhat, hogy használhat egy közösség által támogatott beállítást, például TraceLoggingDynamic.

A TraceLogging windowsos eseménykövetésre (ETW) épül, és könnyebben használható, mint a jegyzékalapú ETW vagy WPP. A TraceLogging lehetővé teszi strukturált adatokat tartalmazó események létrehozását, támogatja az eseménykorrelációt az ETW-tevékenységek használatával, és nem igényel külön rendszerállapot-jegyzék XML-fájlt a dekódoláshoz.

A TraceLoggingProvider.h a C/C++ fejlesztőinek ajánlott API felhasználói vagy kernel módban. Az alábbi hivatkozások a C/C++ API-t írják le.

Vegye figyelembe, hogy a WINVER (felhasználói mód) értéke befolyásolja a TraceLoggingProvider.h viselkedését:

  • Ha a WINVER nincs beállítva a <windows.h>hozzáadása előtt, akkor a <windows.h> az SDK-verziónak megfelelő alapértelmezett értékre állítja a WINVER-t.
  • Ha a TraceLoggingProvider.h-t 0x0602 (Windows 8) vagy újabb WINVER-sel használja, előfordulhat, hogy a program nem fut Windows Vista vagy Windows 7 rendszeren (a TraceLoggingProvider.h megpróbálja közvetlenül használni az EventSetInformation parancsot, amely nem volt jelen a Windows Vista vagy a Windows 7 RTM-verzióiban).
  • Ha a TraceLoggingProvider.h-t a WINVER 0x0600 (Windows Vista) vagy 0x0601 (Windows 7) értékre állítja, a program konfigurálva lesz a kompatibilitáshoz, és a Windows megadott verzióin fog működni (a TraceLoggingProvider.h meghívja az EventSetInformationt a GetProcAddressen keresztül, ha elérhető).