Dela via


Referens för spårningsloggning

Följande avsnitt innehåller information om API:et C/C++-spårningsloggning.

Not

Om du genererar händelser från C/C++-kod och händelserna definieras vid kompileringstillfället använder du de API:er som beskrivs i det här avsnittet. Om du genererar händelser från .NET-kod använder du annars klassen .NET EventSource. Om du använder Windows Runtime (WinRT) använder du annars LoggingChannel. Annars kanske du kan använda ett alternativ som stöds av communityn, till exempel TraceLoggingDynamic.

TraceLogging bygger på händelsespårning för Windows (ETW) och är enklare att använda än manifestbaserad ETW eller WPP. Med Spårningsloggning kan du generera händelser som innehåller strukturerade data, stöder händelsekorrelation med hjälp av ETW-aktiviteter och kräver inte en separat XML-fil för instrumentationsmanifest för avkodning.

TraceLoggingProvider.h är det rekommenderade API:et för C/C++-utvecklare i användar- eller kernelläge. Följande länkar beskriver C/C++-API:et.

Observera att värdet för WINVER (användarläge) påverkar hur TraceLoggingProvider.h fungerar:

  • Om WINVER inte har angetts innan du inkluderar <windows.h>anger <windows.h> WINVER till ett standardvärde som motsvarar SDK-versionen.
  • Om du använder TraceLoggingProvider.h med WINVER inställt på 0x0602 (Windows 8) eller senare kanske programmet inte körs på Windows Vista eller Windows 7 (TraceLoggingProvider.h försöker direkt använda EventSetInformation, som inte fanns i RTM-versioner av Windows Vista eller Windows 7).
  • Om du använder TraceLoggingProvider.h med WINVER inställt på 0x0600 (Windows Vista) eller 0x0601 (Windows 7) konfigureras programmet för kompatibilitet och fungerar på de angivna versionerna av Windows (TraceLoggingProvider.h anropar EventSetInformation via GetProcAddress om det är tillgängligt).