다음을 통해 공유


ICorDebugRegisterSet2::GetRegisters 메서드

지정된 비트 마스크로 지정된 각 레지스터(코드가 현재 실행 중인 플랫폼의 경우)의 값을 가져옵니다.

Syntax

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 않는 요소는 수정되지 않습니다.

사용할 수 없는 레지스터가 마스크로 표시되면 해당 레지스터에 대해 확정되지 않은 값이 반환됩니다.

ICorDebugRegisterSet2::GetRegisters 메서드는 레지스터가 64개 이상인 플랫폼에 필요합니다. 예를 들어 IA64에는 128개의 범용 레지스터와 128개의 부동 소수점 레지스터가 있으므로 비트 마스크에 64비트 이상이 필요합니다.

x86 GetRegisters 과 같은 플랫폼의 경우처럼 64개 이상의 레지스터가 없는 경우 메서드는 바이트 배열의 바이트를 mask a ULONG64 로 변환한 다음 마스크를 사용하는 ULONG64ICorDebugRegisterSet::GetRegisters 메서드를 호출합니다.

요구 사항

플랫폼:.NET 지원 운영 체제를 참조하세요.

머리글: CorDebug.idl, CorDebug.h

도서관: CorGuids.lib

.NET 버전: .NET Framework 2.0 이후 사용 가능

참고하십시오