Freigeben über


EtwActivityIdControl-Funktion (wdm.h)

Die EtwActivityIdControl--Funktion erstellt, abfragen und legt den aktuellen Aktivitätsbezeichner fest.

Syntax

NTSTATUS EtwActivityIdControl(
  [in]      ULONG  ControlCode,
  [in, out] LPGUID ActivityId
);

Parameter

[in] ControlCode

Der ControlCode Parameter kann einer der folgenden definierten Werte sein.

Wert Bedeutung
EVENT_ACTIVITY_CTRL_GET_ID Gibt den Aktivitätsbezeichner des aktuellen Threads im ActivityId--Parameter zurück.
EVENT_ACTIVITY_CTRL_SET_ID Legt den Aktivitätsbezeichner des aktuellen Threads auf den in ActivityIdangegebenen Wert fest. Beachten Sie, dass die ActivityId, die Sie an diese Funktion übergeben, nicht notwendigerweise eine von EVENT_ACTIVITY_CTRL_CREATE_ID oder EVENT_ACTIVITY_CTRL_CREATE_SET_ID Steuerelementcode erstellt werden muss. Sie können jeden Wert verwenden, der in eine GUID passt, einschließlich aller verfügbaren lokalen Werte, die Ihren Anforderungen für einen Bestimmten Aktivitätsbezeichner dienen.
EVENT_ACTIVITY_CTRL_CREATE_ID Erstellt einen neuen Bezeichner und legt den parameter ActivityId auf den Wert des neuen Bezeichners fest.
EVENT_ACTIVITY_CTRL_GET_SET_ID Legt den Aktivitätsbezeichner des aktuellen Threads auf den in ActivityIdangegebenen Wert fest und gibt dann ActivityId mit dem Wert des Aktivitätsbezeichners des Threads vor dem Funktionsaufruf zurück.
EVENT_ACTIVITY_CTRL_CREATE_SET_ID Kopiert den Aktivitätsbezeichner des aktuellen Threads. Erstellt einen neuen Bezeichner und legt den Aktivitätsbezeichner des aktuellen Threads auf den neuen Wert fest. Gibt ActivityId mit dem Wert des Aktivitätsbezeichners des Threads vor dem Funktionsaufruf zurück.

[in, out] ActivityId

Der Bezeichner, der die dem Ereignis zugeordnete Aktivität angibt. Der parameter ActivityId bietet eine Möglichkeit zum Gruppieren verwandter Ereignisse und wird in der End-to-End-Ablaufverfolgung verwendet.

Rückgabewert

EtwActivityIdControl gibt STATUS_SUCCESS oder einen entsprechenden NTSTATUS-Wert zurück.

Bemerkungen

Aktivitätsbezeichner stellen eine Methode zum Verknüpfen separater Ereignisse in einem gemeinsamen Thread der Berechnung bereit. Eine Aktivität ist eine Arbeitsaufgabe, die von einer Anwendung und einem Treiber ausgeführt wird. Das Konzept der Aktivität ist eine Kernkomponente bei der End-to-End-Ablaufverfolgung.

Aufrufer von EtwActivityIdControl- müssen bei IRQL-< DISPATCH_LEVEL ausgeführt werden, es sei denn, die ControlCode- ist EVENT_ACTIVITY_CTRL_CREATE_ID, in diesem Fall kann die Funktion bei jedem IRQL aufgerufen werden.

Verwenden Sie die EtwActivityIdControlKernel--Funktion, um Kernelthreads abzufragen oder festzulegen.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- wdm.h (include Wdm.h, Ntddk.h)
Library NtosKrnl.lib
DLL- NtosKrnl.exe; Ntdll.dll
IRQL- Siehe Abschnitt "Kommentare"

Siehe auch

EtwActivityIdControlKernel