Share via


_CrtSetDumpClient

설치를 덤프 하려면 응용 프로그램 정의 함수 _CLIENT_BLOCK 메모리 블록 (디버그 버전에만 해당)를 입력 합니다.

_CRT_DUMP_CLIENT _CrtSetDumpClient( 
   _CRT_DUMP_CLIENT dumpClient 
);

매개 변수

  • dumpClient
    C 런타임 디버그 메모리 덤프 프로세스에 연결 하려면 새 클라이언트 정의 메모리 덤프 함수입니다.

반환 값

미리 정의 된 클라이언트 블록 반환 함수를 덤프 합니다.

설명

_CrtSetDumpClient 함수를 응용 프로그램에 저장 된 개체를 덤프 하는 자체 함수를 후크 할 수 있습니다 _CLIENT_BLOCK 메모리 블록으로 C 런타임 메모리 덤프 프로세스를 디버깅 합니다.따라서 때마다 디버그 함수 같은 덤프 _CrtMemDumpAllObjectsSince 또는 _CrtDumpMemoryLeaks 덤프는 _CLIENT_BLOCK 메모리 블록을 응용 프로그램의 덤프 함수 호출도 있습니다._CrtSetDumpClient응용 프로그램의 메모리 누수를 탐지 하 고 유효성을 검사 하거나 저장 된 데이터의 내용을 보고를 손쉽게 처리할 수 _CLIENT_BLOCK 블록입니다.때 _DEBUG 정의 되지 않은, 호출 하려면 _CrtSetDumpClient 전처리 하는 동안 제거 됩니다.

_CrtSetDumpClient 함수에 지정 된 새 응용 프로그램 정의 dump 함수를 설치 dumpClient 와 이전에 정의 된 덤프 함수를 반환 합니다.클라이언트 블록 덤프 함수의 예는 다음과 같습니다.

void DumpClientFunction( void *userPortion, size_t blockSize );

userPortion 인수는 사용자 데이터 부분 메모리 블록의 시작 부분에 대 한 포인터입니다 및 blockSize 지정 할당 된 메모리의 크기 (바이트)를 차단 합니다.클라이언트 블록 덤프 함수 반환 해야 void.클라이언트 덤프 함수에 전달 된 포인터 _CrtSetDumpClient 형식인 _CRT_DUMP_CLIENT, crtdbg.h에 정의 된:

typedef void (__cdecl *_CRT_DUMP_CLIENT)( void *, size_t );

덤프 응용 프로그램 정의 함수를 구현 하는 방법의 예제를 보려면 crt_dbg2 샘플: C 런타임 디버깅 후크 함수.작동 하는 함수에 대 한 자세한 내용은 _CLIENT_BLOCK 메모리 블록을 입력 합니다. 자세한 내용은 클라이언트 블록 후크 함수.해당 _CrtReportBlockType 기능을 사용 하 여 블록 형식 및 하위 형식에 대 한 정보를 반환 합니다.

요구 사항

루틴

필수 헤더

_CrtSetDumpClient

<crtdbg.h>

더 많은 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

라이브러리

디버그 버전의 C 런타임 라이브러리 만 합니다.

예제

샘플을 사용 하는 방법에 대 한 _CrtSetDumpClient를 참조 하십시오 crt_dbg2.

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.

참고 항목

참조

루틴을 디버깅 합니다.

_CrtReportBlockType

_CrtGetDumpClient