ICorDebugRegisterSet2::GetRegisters 메서드
제공된 비트 마스크로 지정된 각 레지스터(코드가 현재 실행 중인 플랫폼용)의 값을 가져옵니다.
구문
HRESULT GetRegisters (
[in] ULONG32 maskCount,
[in, size_is(maskCount)] BYTE mask[],
[in] ULONG32 regCount,
[out, size_is(regCount)] CORDB_REGISTER regBuffer[]
);
매개 변수
maskCount
[in] mask
배열의 크기(바이트)입니다.
mask
[in] 각 비트가 레지스터에 해당하는 바이트 배열입니다. 비트가 1이면 해당 레지스터의 값이 검색됩니다.
regCount
[in] 검색할 레지스터 값의 수입니다.
regBuffer
[out] 각각 레지스터의 값을 받는 CORDB_REGISTER
개체의 배열입니다.
설명
GetRegisters
메서드는 마스크로 지정된 레지스터의 값 배열을 반환합니다. 배열에는 마스크 비트가 설정되지 않은 레지스터의 값이 포함되지 않습니다. 따라서 regBuffer
배열의 크기는 마스크에 있는 1의 개수와 같아야 합니다. regCount
값이 마스크로 표시된 레지스터 수에 비해 너무 작으면 더 높은 번호가 매겨진 레지스터의 값이 집합에서 잘립니다. regCount
가 너무 크면 사용되지 않는 regBuffer
요소는 수정되지 않습니다.
사용할 수 없는 레지스터가 마스크로 표시되면 해당 레지스터에 대해 확정되지 않은 값이 반환됩니다.
레지스터가 64개 이상인 플랫폼에는 ICorDebugRegisterSet2::GetRegisters
메서드가 필요합니다. 예를 들어 IA64에는 128개의 범용 레지스터와 128개의 부동 소수점 레지스터가 있으므로 비트 마스크에 64비트보다 많이 필요합니다.
x86과 같은 플랫폼의 경우처럼 레지스터가 64개 이하인 경우 GetRegisters
메서드는 mask
바이트 배열의 바이트를 ULONG64
로 변환하고 ULONG64
마스크를 사용하는 합니다. ICorDebugRegisterSet::GetRegisters 메서드를 호출합니다.
요구 사항
플랫폼:시스템 요구 사항을 참조하세요.
헤더: CorDebug.idl, CorDebug.h
라이브러리: CorGuids.lib
.NET Framework 버전: 2.0부터 사용 가능
참고 항목
.NET