หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
Retrieves the value of the specified register.
Syntax
HRESULT get_registerValue(
DWORD index,
DWORD cbData,
DWORD* pcbData,
BYTE* pbData
);
Parameters
index
[in] A value from the CV_HREG_e enumeration specifying which register to get the value from. This parameter value is primarily intended for the ARM64 SVE registers.
cbData
[in] Size, in bytes, of the buffer pointed to by pbData. May be 0 when pbData is nullptr.
pcbData
[out] Receives the size, in bytes, of the register value. When pbData is nullptr and cbData is 0, pcbData is set to the required size for the register value.
pbData
[out, optional] Caller-allocated buffer that receives the register value. May be nullptr to query the required size only.
Return Value
If successful, returns S_OK; otherwise, returns an error code.
Remarks
You can pass pbData = nullptr with cbData = 0 to query only the required size of the register value. The method sets pcbData to the number of bytes needed. Allocate a buffer of that size and call again to retrieve the value.
Register sizes can differ between CPU architectures. This method supports variable-sized registers, including large vector registers such as ARM64 SVE.
For registers 64-bits or less (for example, 1-8 bytes), use get_registerValue and put_registerValue in IDiaStackWalkHelper.