CreateTraceInstanceId-Funktion (evntrace.h)

Ein RegisterTraceGuids-basierter Ereignisanbieter ("Classic") kann die CreateTraceInstanceId-Funktion verwenden, um einen eindeutigen Transaktionsbezeichner zu erstellen und ihn einem Registrierungshandle zuzuordnen. Der Anbieter verwendet dann den Transaktionsbezeichner beim Aufrufen der TraceEventInstance-Funktion , um Ereignisse als zur angegebenen Transaktion gehören zu markieren. Der Transaktionsbezeichner kann von Ablaufverfolgungsanalysetools verwendet werden, um Ereignisse zu gruppieren.

Syntax

ULONG WMIAPI CreateTraceInstanceId(
  [in]  HANDLE               RegHandle,
  [out] PEVENT_INSTANCE_INFO InstInfo
);

Parameter

[in] RegHandle

Behandeln sie eine registrierte Ereignisablaufverfolgungsklasse. Die Funktion RegisterTraceGuids gibt dieses Handle im RegHandle-Member der TRACE_GUID_REGISTRATION-Struktur zurück.

[out] InstInfo

Zeiger auf eine EVENT_INSTANCE_INFO-Struktur . Das InstanceId-Element dieser Struktur enthält den Transaktionsbezeichner.

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 sind einige häufige Fehler und deren Ursachen aufgeführt.

  • ERROR_INVALID_PARAMETER

    Es trifft eine der folgenden Bedingungen zu:

    • RegHandle ist NULL.
    • pInstInfo ist NULL.

Hinweise

RegisterTraceGuids-basierte Anbieter ("Classic") rufen diese Funktion auf. Verwenden Sie EventActivityIdControl für ähnliche Funktionen mit einem EventRegister-basierten Anbieter ("Crimson").

ETW erstellt den Bezeichner im Benutzermodusprozess, sodass er möglicherweise dieselbe Anzahl für verschiedene Instanzen in verschiedenen Prozessen zurückgibt. Der Wert beginnt von vorn, 1 wenn InstanceId den Maximalwert für eine ULONG erreicht. Nur Benutzermodusanbieter können die CreateTraceInstanceId-Funktion aufrufen (Treiber können diese Funktion nicht aufrufen).

Beispiele

Ein Beispiel, das CreateTraceInstanceId verwendet, finden Sie unter Ablaufverfolgungsereignisinstanzen.

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 Advapi32.lib
DLL Advapi32.dll

Weitere Informationen

RegisterTraceGuids

TraceEventInstance