다음을 통해 공유


IDebugSymbols3::SetScope 메서드(dbgeng.h)

SetScope 메서드는 현재 scope 설정합니다.

구문

HRESULT SetScope(
  [in]           ULONG64            InstructionOffset,
  [in, optional] PDEBUG_STACK_FRAME ScopeFrame,
  [in, optional] PVOID              ScopeContext,
  [in]           ULONG              ScopeContextSize
);

매개 변수

[in] InstructionOffset

scope 현재 명령에 대한 프로세스의 가상 주소 공간에 있는 위치를 지정합니다. ScopeFrame과 ScopeContext가 모두 NULL인 경우에만 사용됩니다. 그렇지 않으면 무시됩니다.

[in, optional] ScopeFrame

scope 스택 프레임을 지정합니다. 이 구조에 대한 자세한 내용은 DEBUG_STACK_FRAME.

[in, optional] ScopeContext

scope 스레드 컨텍스트를 지정합니다. 스레드 컨텍스트의 형식은 대상의 유효 프로세서에 대한 CONTEXT 구조입니다. 버퍼 ScopeContext 는 이 구조를 보유할 수 있을 만큼 커야 합니다. ScopeContextNULL이면 현재 레지스터 컨텍스트가 대신 사용됩니다.

[in] ScopeContextSize

버퍼 ScopeContext의 크기를 지정합니다.

반환 값

이 메서드는 오류 값을 반환할 수도 있습니다. 자세한 내용은 반환 값을 참조하세요.

반환 코드 Description
S_OK
InstructionOffset, ScopeFrameScopeContext로 식별되는 scope 이전 scope 동일합니다.
S_FALSE
scope 변경되었습니다.

설명

InstructionOffset만 제공된 경우 scope 사용하여 기호 이름을 조회할 수 있지만 이러한 기호의 값은 사용할 수 없습니다.

scope 이전 상태로 설정하려면 ScopeContext를 제공해야 합니다. 항상 필요한 것은 아닙니다(예: 레지스터가 아닌 기호에만 액세스하려는 경우). scope 현재 스택의 프레임으로 설정하려면 SetScopeFrameByIndex를 사용할 수 있습니다.

범위에 대한 자세한 내용은 범위 및 기호 그룹을 참조하세요.

요구 사항

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

추가 정보

GetScope

IDebugSymbols

IDebugSymbols2

IDebugSymbols3

ResetScope

SetScopeFrameByIndex