CorDebugCodeInvokePurpose Enumeration

Describes why an exported function calls managed code.

Syntax

typedef enum CorDebugCodeInvokePurpose  
{  
    CODE_INVOKE_PURPOSE_NONE,  
    CODE_INVOKE_PURPOSE_NATIVE_TO_MANAGED_TRANSITION,
    CODE_INVOKE_PURPOSE_CLASS_INIT,  
    CODE_INVOKE_PURPOSE_INTERFACE_DISPATCH,  
} CorDebugCodeInvokePurpose;  

Members

Member Description
CODE_INVOKE_PURPOSE_NONE None or unknown.
CODE_INVOKE_PURPOSE_NATIVE_TO_MANAGED_TRANSITION The managed code will run any managed entry point, such as a reverse p-invoke. Any more detailed purpose is unknown by the runtime.
CODE_INVOKE_PURPOSE_CLASS_INIT The managed code will run a static constructor.
CODE_INVOKE_PURPOSE_INTERFACE_DISPATCH The managed code will run the implementation for some interface method that was called.

Remarks

This enumeration is used by the ICorDebugProcess6::GetExportStepInfo method to provide information about stepping through managed code.

Note

This enumeration is intended for use in .NET Native debugging scenarios only.

Requirements

Platforms: See System Requirements.

Header: CorDebug.idl, CorDebug.h

Library: CorGuids.lib

.NET Framework Versions: Available since 4.6, .NET Native only

See also