다음을 통해 공유


IDebugControl4::OutputContextStackTrace 메서드(dbgeng.h)

OutputContextStackTrace 메서드는 스택 프레임 및 해당 레지스터 컨텍스트의 배열로 지정된 호출 스택을 인쇄합니다.

구문

HRESULT OutputContextStackTrace(
  [in] ULONG              OutputControl,
  [in] PDEBUG_STACK_FRAME Frames,
  [in] ULONG              FramesSize,
  [in] PVOID              FrameContexts,
  [in] ULONG              FrameContextsSize,
  [in] ULONG              FrameContextsEntrySize,
  [in] ULONG              Flags
);

매개 변수

[in] OutputControl

출력을 보낼 위치를 지정합니다. 가능한 값은 DEBUG_OUTCTL_XXX 참조하세요.

[in] Frames

출력할 스택 프레임의 배열을 지정합니다. 이 배열의 요소 수는 FramesSize입니다. Frames가NULL이면 현재 스택 프레임이 사용됩니다.

[in] FramesSize

출력할 프레임 수를 지정합니다.

[in] FrameContexts

스택의 각 프레임에 대한 레지스터 컨텍스트를 지정합니다. 이 배열의 항목은 Frames 배열의 항목에 해당합니다. 스레드 컨텍스트의 형식은 대상의 유효 프로세서에 대한 CONTEXT 구조입니다.

[in] FrameContextsSize

FrameContexts가 가리키는 메모리의 크기(바이트)를 지정합니다. 스택 프레임 수는 컨텍스트 수와 같아야 하며 FrameContextsSize는 FramesSizeFrameContextsEntrySize를 곱한 값과 같아야 합니다.

[in] FrameContextsEntrySize

FrameContexts에서 각 프레임 컨텍스트의 크기(바이트)를 지정합니다.

[in] Flags

각 프레임에 대해 출력할 정보를 결정하는 비트 플래그를 지정합니다. 플래그 는 다음 표의 값 조합일 수 있습니다.

플래그 설명
DEBUG_STACK_ARGUMENTS 각 호출의 프레임에 처음 세 개의 스택 메모리를 표시합니다. 인수가 스택에 전달되고 프레임의 코드가 스택 인수를 사용하는 플랫폼에서 이러한 값은 함수에 대한 인수가 됩니다.
DEBUG_STACK_FUNCTION_INFO 프레임에 해당하는 함수에 대한 정보를 표시합니다. 여기에는 호출 규칙 및 FPO(프레임 포인터 누락) 정보가 포함됩니다.
DEBUG_STACK_SOURCE_LINE 스택 추적의 각 프레임에 대한 소스 줄 정보를 표시합니다.
DEBUG_STACK_FRAME_ADDRESSES 각 프레임의 반환 주소, 이전 프레임 주소 및 기타 관련 주소를 표시합니다.
DEBUG_STACK_COLUMN_NAMES 열 이름을 표시합니다.
DEBUG_STACK_NONVOLATILE_REGISTERS 각 프레임에 대한 비휘발성 레지스터 컨텍스트를 표시합니다. 이는 일부 플랫폼에만 의미가 있습니다.
DEBUG_STACK_FRAME_NUMBERS 프레임 번호를 표시합니다.
DEBUG_STACK_PARAMETERS 기호 정보에 지정된 대로 매개 변수 이름과 값을 표시합니다.
DEBUG_STACK_FRAME_ADDRESSES_RA_ONLY 스택 프레임 주소에 반환 주소만 표시합니다.
DEBUG_STACK_FRAME_MEMORY_USAGE 프레임을 구분하는 바이트 수를 표시합니다.
DEBUG_STACK_PARAMETERS_NEWLINE 각 매개 변수와 해당 형식 및 값을 새 줄에 표시합니다.

반환 값

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

반환 코드 Description
S_OK
메서드를 성공적으로 수행했습니다.

설명

스택 프레임의 배열은 GetContextStackTrace를 사용하여 가져올 수 있습니다.

요구 사항

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

추가 정보

GetContextStackTrace

IDebugControl4

OutputStackTrace

k, kb, kc, kd, kp, kP, kv(디스플레이 스택 백트레이스)