ICorDebugRegisterSet Interface
Represents the set of registers available on the computer that is currently executing code.
interface ICorDebugRegisterSet : IUnknown {
typedef enum CorDebugRegister {
REGISTER_INSTRUCTION_POINTER = 0,
REGISTER_STACK_POINTER,
REGISTER_FRAME_POINTER,
REGISTER_X86_EIP = 0,
REGISTER_X86_ESP,
REGISTER_X86_EBP,
REGISTER_X86_EAX,
REGISTER_X86_ECX,
REGISTER_X86_EDX,
REGISTER_X86_EBX,
REGISTER_X86_ESI,
REGISTER_X86_EDI,
REGISTER_X86_FPSTACK_0,
REGISTER_X86_FPSTACK_1,
REGISTER_X86_FPSTACK_2,
REGISTER_X86_FPSTACK_3,
REGISTER_X86_FPSTACK_4,
REGISTER_X86_FPSTACK_5,
REGISTER_X86_FPSTACK_6,
REGISTER_X86_FPSTACK_7,
REGISTER_AMD64_RIP = 0,
REGISTER_AMD64_RSP,
REGISTER_AMD64_RBP,
REGISTER_AMD64_RAX,
REGISTER_AMD64_RCX,
REGISTER_AMD64_RDX,
REGISTER_AMD64_RBX,
REGISTER_AMD64_RSI,
REGISTER_AMD64_RDI,
REGISTER_AMD64_R8,
REGISTER_AMD64_R9,
REGISTER_AMD64_R10,
REGISTER_AMD64_R11,
REGISTER_AMD64_R12,
REGISTER_AMD64_R13,
REGISTER_AMD64_R14,
REGISTER_AMD64_R15,
REGISTER_AMD64_XMM0,
REGISTER_AMD64_XMM1,
REGISTER_AMD64_XMM2,
REGISTER_AMD64_XMM3,
REGISTER_AMD64_XMM4,
REGISTER_AMD64_XMM5,
REGISTER_AMD64_XMM6,
REGISTER_AMD64_XMM7,
REGISTER_AMD64_XMM8,
REGISTER_AMD64_XMM9,
REGISTER_AMD64_XMM10,
REGISTER_AMD64_XMM11,
REGISTER_AMD64_XMM12,
REGISTER_AMD64_XMM13,
REGISTER_AMD64_XMM14,
REGISTER_AMD64_XMM15,
REGISTER_IA64_BSP = REGISTER_FRAME_POINTER,
REGISTER_IA64_R0 = REGISTER_IA64_BSP + 1,
REGISTER_IA64_F0 = REGISTER_IA64_R0 + 128,
} CorDebugRegister;
HRESULT GetRegisters (
[in] ULONG64 mask,
[in] ULONG32 regCount,
[out, size_is(regCount), length_is(regCount)]
CORDB_REGISTER regBuffer[]
);
HRESULT GetRegistersAvailable (
[out] ULONG64 *pAvailable
);
HRESULT SetRegisters (
[in] ULONG64 mask,
[in] ULONG32 regCount,
[in, size_is(regCount)] CORDB_REGISTER regBuffer[]
);
HRESULT SetThreadContext (
[in] ULONG32 contextSize,
[in, length_is(contextSize),
size_is(contextSize)] BYTE context[]
);
}
Methods
Method |
Description |
---|---|
Gets the value of each register (on the computer that is currently executing code) that is specified by the bit mask. |
|
Gets a bit mask indicating which registers in this ICorDebugRegisterSet are currently available. |
|
Gets the context of the current thread. |
|
Not implemented for the .NET Framework version 2.0. |
|
Not implemented for the .NET Framework 2.0. |
Remarks
The ICorDebugRegisterSet interface supports only 32-bit registers. Use the ICorDebugRegisterSet2 interface on platforms such as IA-64 that require additional registers.
Requirements
Platforms: Windows 2000, Windows XP, Windows Server 2003 family
Header: CorDebug.idl
Library: CorGuids.lib
.NET Framework Version: 2.0, 1.1, 1.0