다음을 통해 공유


IDebugRegisters::SetValue 메서드(dbgeng.h)

SetValue 메서드는 대상의 레지스터 중 하나의 값을 설정합니다.

구문

HRESULT SetValue(
  [in] ULONG        Register,
  [in] PDEBUG_VALUE Value
);

매개 변수

[in] Register

값을 설정할 레지스터의 인덱스를 지정합니다.

[in] Value

레지스터를 설정할 값을 지정합니다. 이 매개 변수 형식에 대한 설명은 DEBUG_VALUE 참조하세요.

반환 값

이 목록에 발생할 수 있는 모든 오류가 포함되어 있지는 않습니다. 가능한 오류 목록은 HRESULT 값을 참조하세요.

반환 코드 Description
S_OK
메서드를 성공적으로 수행했습니다.
E_UNEXPECTED
대상에 액세스할 수 없거나 레지스터에 액세스할 수 없습니다.
E_INVALIDARG
Register 값이 대상 컴퓨터의 레지스터 수보다 큽니다.

설명

엔진은 Value 값을 레지스터 형식으로 강제 변환하기 위해 최선을 다합니다. 이 강제 변환은 CoerceValue에서 수행하는 것과 동일합니다. 값이 레지스터가 보유할 수 있는 것보다 크면 가장 중요하지 않은 비트가 삭제됩니다. 필요한 경우 부동 소수점 및 정수 변환도 수행됩니다.

하위 등록을 변경하면 하위 등록을 포함하는 레지스터도 변경됩니다.

여러 레지스터의 값을 설정하려면 SetValues 메서드를 대신 사용합니다.

IDebugRegisters 인터페이스 및 기타 레지스터 관련 메서드에 대한 개요는 레지스터를 참조하세요.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 dbgeng.h(DbgEng.h 포함)

추가 정보

IDebugRegisters

IDebugRegisters2

SetValues

SetValues2