The VSAStandardParameter values describe names of the system-defined event parameters. These parameters provide additional information about an event. Specify the parameter values you want in the sKeys or rgKeys array before you call FireEvent. You can use the VSAEventFlags parameter in your call to FireEvent to set either the Source or the Target parameters to default values.
Visual C++ Syntax:
typedef [v1_enum] enum VSAStandardParameter
{
cVSAStandardParameterSourceMachine=0,
cVSAStandardParameterSourceProcess=1,
cVSAStandardParameterSourceThread=2,
cVSAStandardParameterSourceComponent=3,
cVSAStandardParameterSourceSession=4,
cVSAStandardParameterTargetMachine=5,
cVSAStandardParameterTargetProcess=6,
cVSAStandardParameterTargetThread=7,
cVSAStandardParameterTargetComponent=8,
cVSAStandardParameterTargetSession=9,
cVSAStandardParameterSecurityIdentity=10,
cVSAStandardParameterCausalityID=11,
cVSAStandardParameterSourceProcessName=12,
cVSAStandardParameterTargetProcessName=13
cVSAStandardParameterNoDefault=0x4000,
cVSAStandardParameterSourceHandle=0x4000,
cVSAStandardParameterTargethandle=0x4001,
cVSAStandardParameterArguments=0x4002,
cVSAStandardParameterReturnValues=0x4003,
cVSAStandardParameterException=0x4004,
cVSAStandardParameterCorrelationID=0x4005
} VSAStandardParameter;
v1_enum is an Interface Definition Language (IDL) attribute that describes how the enumerated type is transmitted. See v1_enum in the MIDL Language Reference for a complete description.
Elements
cVSAStandardParameterSourceMachine, SourceMachine
The machine name of this event's original source. The default value for this parameter is the current machine name. Although this parameter is optional, if you know that the event source machine name is different from the current machine name, you should supply it.
cVSAStandardParameterSourceProcess, SourceProcess
The process ID of this event's original source. The default value for this parameter is the current process ID. Although this parameter is optional, if you know that the event source process ID is different from the current process ID, you should supply it.
cVSAStandardParameterSourceThread, SourceThread
The thread ID of this event's original source. The default value for this parameter is the current thread ID. Although this parameter is optional, if you know that the event source thread ID is different from the current thread ID, you should supply it.
cVSAStandardParameterSourceComponent, SourceComponent
The GUID (from RegisterSource) of the component that generated this event. The default value for this parameter is the current GUID. Although this parameter is optional, if you know that the component GUID is different from the current GUID, you should supply it.
cVSAStandardParameterSourceSession, SourceSession
The session identifier (from BeginSession) that identifies this instance of the component that generated the event. The default value for this parameter is the current session identifier. Although this parameter is optional, if you know that the component session identifier is different from the current session identifier, you should supply it.
cVSAStandardParameterSourceHandle, SourceHandle
A handle to the component that generated the event that is unique for this instance of the component. There is no default value for this parameter. This parameter is optional if other information (such as machine, process, thread, component, or session) is known about the component; if other information is unknown, synthesize a unique value for this parameter. The synthesized value must remain constant for all calls to ISystemDebugFireEvent that are for the same instance of this component.
cVSAStandardParameterTargetMachine, TargetMachine
The machine name of this event's final target. The default value for this parameter is the current machine name. Although this parameter is optional, if you know that the event target machine name is different from the current machine name, you should supply it.
cVSAStandardParameterTargetProcess, TargetProcess
The process ID of this event's final target. The default value for this parameter is the current process ID. Although this parameter is optional, if you know that the event target process ID is different from the current process ID, you should supply it.
cVSAStandardParameterTargetThread, TargetThread
The thread ID of this event's final target. The default value for this parameter is the current thread ID. Although this parameter is optional, if you know that the event target thread ID is different from the current thread ID, you should supply it.
cVSAStandardParameterTargetComponent, TargetComponent
The GUID (from RegisterSource) for this event's final target. The default value for this parameter is the current GUID. Although this parameter is optional, if you know that the event target GUID is different from the current GUID, you should supply it.
cVSAStandardParameterTargetSession, TargetSession
The session identifier (from BeginSession) for this event's final target. The default value is the current session identifier. Although this parameter is optional, if you know that the event target session identifier is different from the current session identifier, you should supply it.
cVSAStandardParameterTargetHandle, TargetHandle
A handle to the final target that is unique for this instance of this source. There is no default value for this parameter. This parameter is optional if other information (such as machine, process, thread, component, or session) is known about the target; if nothing is known about the target, the component should synthesize a unique value for this parameter. The synthesized value must remain constant for all calls to ISystemDebugEventFire that are for the same target.
cVSAStandardParameterArguments, Arguments
The arguments to the function or the text of the query. This parameter has meaning during function or query start only. There is no default value for this parameter, and this parameter is optional.
cVSAStandardParameterReturnValue, ReturnValue
The return value from the function or query. This parameter has meaning on function or query end only. There is no default value for this parameter, and this parameter is optional.
cVSAStandardParameterCorrelationID, CorrelationID
An ID used to match up pairs of inbound and outbound events, such as calls and returns, or enters and leaves. There is no default value for this parameter, and this parameter is optional, but if you want events to be correlated, you should supply this parameter. See Determining the Relationships Between Events for more information on correlation.
cVSAStandardParameterCausalityID, CausalityID
A value used to match up sequences of subactions. The default value for this parameter is provided by COM and is generally applicable. Replace this value only if you are sure.
cVSAStandardParameterSourceProcessName, SourceProcessName
The process name of this event's original source. The default value for this parameter is the current process name. Although this parameter is optional, if you know that the event source process name is different from the current process name, you should supply it.
cVSAStandardParameterTargetProcessName, TargetProcessName
The process name of this event's target. The default value for this parameter is the current process name. Although this parameter is optional, if you know that the event target process name is different from the current process name, you should supply it.
cVSAStandardParameterSecurityIdentity, Security Identity
The security context in use. The default value for this parameter is the user name of the logged on user. This parameter is optional.
Remarks
The parameter keys in the preceding list are defined by the system. It is possible to define additional custom parameters. You may choose any key name you wish, as long as it is always a string and either unique or with a unique prefix.