EVENT_TRACE structure (evntrace.h)

The EVENT_TRACE structure is used to deliver event information to an event trace consumer.

Syntax

typedef struct _EVENT_TRACE {
  EVENT_TRACE_HEADER Header;
  ULONG              InstanceId;
  ULONG              ParentInstanceId;
  GUID               ParentGuid;
  PVOID              MofData;
  ULONG              MofLength;
  union {
    ULONG              ClientContext;
    ETW_BUFFER_CONTEXT BufferContext;
  } DUMMYUNIONNAME;
} EVENT_TRACE, *PEVENT_TRACE;

Members

Header

An EVENT_TRACE_HEADER structure that contains standard event tracing information.

InstanceId

Instance identifier. Contains valid data when the provider calls the TraceEventInstance function to generate the event. Otherwise, the value is zero.

ParentInstanceId

Instance identifier for a parent event. Contains valid data when the provider calls the TraceEventInstance function to generate the event. Otherwise, the value is zero.

ParentGuid

Class GUID of the parent event. Contains valid data when the provider calls the TraceEventInstance function to generate the event. Otherwise, the value is zero.

MofData

Pointer to the beginning of the event-specific data for this event.

MofLength

Number of bytes to which MofData points.

DUMMYUNIONNAME

DUMMYUNIONNAME.ClientContext

Reserved.

DUMMYUNIONNAME.BufferContext

Provides information about the event such as the session identifier and processor number of the CPU on which the provider process ran. For details, see the ETW_BUFFER_CONTEXT structure.

Prior to Windows Vista: Not supported.

Remarks

ProcessTrace passes this structure to the consumer's EventCallback callback function.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Header evntrace.h

See also

EventCallback