EventDescriptor Structure

 

Contains the metadata that defines an event.

Namespace:   System.Diagnostics.Eventing
Assembly:  System.Core (in System.Core.dll)

[HostProtectionAttribute(SecurityAction.LinkDemand, MayLeakOnAbort = true)]
public struct EventDescriptor

NameDescription
System_CAPS_pubmethodEventDescriptor(Int32, Byte, Byte, Byte, Byte, Int32, Int64)

Initializes a new instance of the EventDescriptor class.

NameDescription
System_CAPS_pubpropertyChannel

Retrieves the channel value from the event descriptor.

System_CAPS_pubpropertyEventId

Retrieves the event identifier value from the event descriptor.

System_CAPS_pubpropertyKeywords

Retrieves the keyword value from the event descriptor.

System_CAPS_pubpropertyLevel

Retrieves the level value from the event descriptor.

System_CAPS_pubpropertyOpcode

Retrieves the operation code value from the event descriptor.

System_CAPS_pubpropertyTask

Retrieves the task value from the event descriptor.

System_CAPS_pubpropertyVersion

Retrieves the version value from the event descriptor.

NameDescription
System_CAPS_pubmethodEquals(Object)

Indicates whether this instance and a specified object are equal.(Inherited from ValueType.)

System_CAPS_pubmethodGetHashCode()

Returns the hash code for this instance.(Inherited from ValueType.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodToString()

Returns the fully qualified type name of this instance.(Inherited from ValueType.)

This class represents an event defined in the manifest. After writing your manifest, you use the Message Compiler (MC.exe) to generate a resource file. A byproduct of the process is a header file that contains the event descriptor in C, as shown in the following example.

EXTERN_C __declspec(selectany) const EVENT_DESCRIPTOR ReadEvent = {0x1, 0x0, 0x10, 0x4, 0x0, 0x0, 0x8000000000000005};

Use the values of the descriptor to create an instance of this class, as shown in the following example. The keyword is an unsigned long value and cannot be cast directly to a long; you must use the unchecked language keyword to allow the assignment.

unchecked
{
    readEvent = new EventDescriptor(0x1, 0x0, 0x10, 0x4, 0x0, 0x0, (long)0x8000000000000005);
}

You use the descriptor when calling the EventProvider.WriteEvent or EventProvider.WriteEvent method.

For more information on writing the manifest and using the message compiler, see Developing Event Publishers

.NET Framework
Available since 3.5

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: