다음을 통해 공유


PWINDBG_OUTPUT_ROUTINE 콜백 함수(wdbgexts.h)

콜백 함수는 서식이 지정된 문자열을 디버거 명령 창에 인쇄하는 기능을 구현합니다.

wdbgexts.h 헤더는 서식이 지정된 문자열을 인쇄하는 dprintf 매크로를 선언합니다. printf C 언어 루틴처럼 작동합니다.

통사론

PWINDBG_OUTPUT_ROUTINE PwindbgOutputRoutine;

void PwindbgOutputRoutine(
  [in] PCSTR lpFormat,
  [in] ... unnamedParam2
)
{...}

매개 변수

[in] lpFormat

printf형식 문자열을 지정합니다. 일반적으로 변환 문자는 C에서와 동일하게 작동합니다. 부동 소수점 변환 문자의 경우 l 한정자를 사용하지 않는 한 64비트 인수는 32비트 부동 소수점 숫자로 해석됩니다.

%p 변환 문자는 지원되지만 대상의 가상 주소 공간에 있는 포인터를 나타냅니다. 한정자가 없을 수 있으며 디버거의 내부 주소 서식을 사용합니다. 다음과 같은 추가 변환 문자가 지원됩니다.

문자 인수 형식 논쟁 인쇄된 텍스트
%p ULONG64 대상의 가상 주소 공간 포인터 포인터의 값입니다.
%N DWORD_PTR(호스트의 아키텍처에 따라 32비트 또는 64비트) 호스트의 가상 주소 공간 포인터 포인터의 값입니다. 표준 C %p 문자와 같습니다.
%I ULONG64 모든 64비트 값 지정된 값입니다. 이 값이 64비트 주소로 인쇄되는 0xFFFFFFFF 크면 32비트 주소로 인쇄됩니다.
%ma ULONG64 대상의 가상 주소 공간에서 NULL로 종료된 ASCII 문자열의 주소 지정된 문자열입니다.
%mu ULONG64 대상의 가상 주소 공간에서 NULL로 종료된 유니코드 문자열의 주소 지정된 문자열입니다.
%msa ULONG64 대상의 가상 주소 공간에 있는 ANSI_STRING 구조체의 주소 지정된 문자열입니다.
%msu ULONG64 대상의 가상 주소 공간에 있는 UNICODE_STRING 구조체의 주소 지정된 문자열입니다.
%y ULONG64 대상의 가상 주소 공간에 있는 디버거 기호의 주소 지정된 기호의 이름(및 변위(있는 경우)이 포함된 문자열입니다.
%ly ULONG64 대상의 가상 주소 공간에 있는 디버거 기호의 주소 지정된 기호의 이름(및 변위(있는 경우)과 사용 가능한 소스 줄 정보를 포함하는 문자열입니다.

[in] unnamedParam2

[arguments] - printf같이 형식 문자열에 대한 인수를 지정합니다. 지정된 인수 수는 FormatString변환 문자 수와 일치해야 합니다. 각 인수는 기본 식 계산기(MASM 또는 C++)에서 계산되는 식입니다. 자세한 내용은 숫자 식 구문 참조하세요.

반환 값

없음

발언

매우 큰 출력 문자열을 생성할 때 디버거 엔진 또는 운영 체제의 제한에 도달할 수 있습니다. 예를 들어 디버거 엔진의 일부 버전에는 단일 출력에 대해 16K 문자 제한이 있습니다. 매우 큰 출력이 잘리는 것을 발견하면 출력을 여러 요청으로 분할해야 할 수 있습니다.

요구 사항

요구
대상 플랫폼 바탕 화면
헤더 wdbgexts.h(Wdbgexts.h, Dbgeng.h 포함)