Condividi tramite


DkmClrInstructionAddress.Create Method

Definition

Create a new DkmClrInstructionAddress object instance.

public:
 static Microsoft::VisualStudio::Debugger::Clr::DkmClrInstructionAddress ^ Create(Microsoft::VisualStudio::Debugger::Clr::DkmClrRuntimeInstance ^ RuntimeInstance, Microsoft::VisualStudio::Debugger::Clr::DkmClrModuleInstance ^ ModuleInstance, Microsoft::VisualStudio::Debugger::Clr::DkmClrMethodId MethodId, System::UInt32 NativeOffset, System::UInt32 ILOffset, Microsoft::VisualStudio::Debugger::DkmInstructionAddress::CPUInstruction ^ CPUInstruction);
public static Microsoft.VisualStudio.Debugger.Clr.DkmClrInstructionAddress Create (Microsoft.VisualStudio.Debugger.Clr.DkmClrRuntimeInstance RuntimeInstance, Microsoft.VisualStudio.Debugger.Clr.DkmClrModuleInstance ModuleInstance, Microsoft.VisualStudio.Debugger.Clr.DkmClrMethodId MethodId, uint NativeOffset, uint ILOffset, Microsoft.VisualStudio.Debugger.DkmInstructionAddress.CPUInstruction CPUInstruction);
public static Microsoft.VisualStudio.Debugger.Clr.DkmClrInstructionAddress Create (Microsoft.VisualStudio.Debugger.Clr.DkmClrRuntimeInstance RuntimeInstance, Microsoft.VisualStudio.Debugger.Clr.DkmClrModuleInstance ModuleInstance, Microsoft.VisualStudio.Debugger.Clr.DkmClrMethodId MethodId, uint NativeOffset, uint ILOffset, Microsoft.VisualStudio.Debugger.DkmInstructionAddress.CPUInstruction? CPUInstruction);
static member Create : Microsoft.VisualStudio.Debugger.Clr.DkmClrRuntimeInstance * Microsoft.VisualStudio.Debugger.Clr.DkmClrModuleInstance * Microsoft.VisualStudio.Debugger.Clr.DkmClrMethodId * uint32 * uint32 * Microsoft.VisualStudio.Debugger.DkmInstructionAddress.CPUInstruction -> Microsoft.VisualStudio.Debugger.Clr.DkmClrInstructionAddress
Public Shared Function Create (RuntimeInstance As DkmClrRuntimeInstance, ModuleInstance As DkmClrModuleInstance, MethodId As DkmClrMethodId, NativeOffset As UInteger, ILOffset As UInteger, CPUInstruction As DkmInstructionAddress.CPUInstruction) As DkmClrInstructionAddress

Parameters

RuntimeInstance
DkmClrRuntimeInstance

[In] Represents a CLR instance running in a target process.

ModuleInstance
DkmClrModuleInstance

[In] The module containing the InstructionPointer.

MethodId
DkmClrMethodId

[In] The version/token pair for this method.

NativeOffset
UInt32

[In] For the standard .NET Framework, NativeOffset is a byte offset relative to start of the method where the CPU instruction can be found. For the purpose of this value, the method should be treated as a contiguous block of bytes. If the method has not been Just-in-time compiled or if this address is being used to refer purely to the IL address, NativeOffset will be set to UInt32.MaxValue.

For native-compiled .NET Framework modules, this value is the RVA of the native instruction in the module.

ILOffset
UInt32

[In] ILOffset is the index of the IL instruction that this address represents. This value may be set to UInt32.MaxValue for an instruction that is within the given method, but not tied to a particular IL instruction. This is used for CLR native instructions that don't map to an IL instruction. (ICorDebugILFrame::GetIP indicates MAPPING_UNMAPPED_ADDRESS).

CPUInstruction
DkmInstructionAddress.CPUInstruction

[In,Optional] CPUInstruction provides the address that the CPU will execute. This is always provided for native instructions. It may be provided for CLR or custom addresses depending on how the address object was created.

Returns

[Out] Result of this method call.

Applies to