다음을 통해 공유


IDebugClient3::WriteDumpFile2 메서드(dbgeng.h)

WriteDumpFile2 메서드는 사용자 모드 또는 커널 모드 크래시 덤프 파일을 만듭니다.

통사론

HRESULT WriteDumpFile2(
  [in]           PCSTR DumpFile,
  [in]           ULONG Qualifier,
  [in]           ULONG FormatFlags,
  [in, optional] PCSTR Comment
);

매개 변수

[in] DumpFile

만들 덤프 파일의 이름을 지정합니다. DumpFile 파일 이름 확장명을 포함해야 합니다. DumpFile 상대 또는 절대 경로를 포함할 수 있습니다. 상대 경로는 디버거가 시작된 디렉터리를 기준으로 합니다.

[in] Qualifier

만들 덤프 파일의 형식을 지정합니다. 가능한 값은 DEBUG_DUMP_XXX참조하세요.

[in] FormatFlags

덤프 파일의 형식을 결정하는 플래그와 사용자 모드 미니덤프의 경우 파일에 포함할 정보를 지정합니다. 자세한 내용은 비고를 참조하세요.

[in, optional] Comment

크래시 덤프 파일에 포함할 주석 문자열을 지정합니다. 이 문자열은 덤프 파일이 로드될 때 디버거 콘솔에 표시됩니다. 일부 덤프 파일 형식은 주석 문자열 저장을 지원하지 않습니다.

반환 값

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

반환 코드 묘사
S_OK
메서드가 성공했습니다.

발언

DEBUG_FORMAT_XXX 비트 플래그는 WriteDumpFile2WriteDumpFileWide 사용하여 크래시 덤프 파일의 형식을 확인하고 사용자 모드 Minidumps의 경우 파일에 포함할 정보를 결정합니다.

다음 비트 플래그는 모든 크래시 덤프 파일에 적용됩니다.

묘사
DEBUG_FORMAT_WRITE_CAB CAB 파일에 크래시 덤프 파일을 패키지합니다. 제공된 파일 이름 또는 파일 핸들은 CAB 파일에 사용됩니다. 크래시 덤프는 CAB 파일로 이동하기 전에 먼저 임시 파일에서 만들어집니다.
DEBUG_FORMAT_CAB_SECONDARY_FILES
CAB 파일에 현재 기호 및 매핑된 이미지를 포함합니다.
DEBUG_FORMAT_WRITE_CAB 설정되지 않은 경우 이 플래그는 무시됩니다.
DEBUG_FORMAT_NO_OVERWRITE 기존 파일을 덮어쓰지 마세요.
 

사용자 모드 Minidump에 대해 다음 비트 플래그를 포함할 수도 있습니다.

묘사
DEBUG_FORMAT_USER_SMALL_FULL_MEMORY 전체 메모리 데이터를 추가합니다. 대상 애플리케이션이 소유한 액세스 가능한 커밋된 모든 페이지가 포함됩니다.
DEBUG_FORMAT_USER_SMALL_HANDLE_DATA 대상 애플리케이션과 연결된 핸들에 대한 데이터를 추가합니다.
DEBUG_FORMAT_USER_SMALL_UNLOADED_MODULES 언로드된 모듈 정보를 추가합니다. 이 정보는 Windows Server 2003 이상 버전의 Windows에서만 사용할 수 있습니다.
DEBUG_FORMAT_USER_SMALL_INDIRECT_MEMORY 간접 메모리를 추가합니다. 스택 또는 백업 저장소의 포인터에서 참조하는 모든 주소를 둘러싸는 작은 메모리 영역이 포함됩니다.
DEBUG_FORMAT_USER_SMALL_DATA_SEGMENTS 실행 이미지 내의 모든 데이터 세그먼트를 추가합니다.
DEBUG_FORMAT_USER_SMALL_FILTER_MEMORY 스택 추적을 다시 만드는 데 유용하지 않은 스택 및 백업 저장소의 모든 메모리를 0으로 설정합니다. 이렇게 하면 미니덤프를 더 효율적으로 압축하고 불필요한 정보를 제거하여 개인 정보를 늘릴 수 있습니다.
DEBUG_FORMAT_USER_SMALL_FILTER_PATHS 모듈 이름만 남기고 모듈 경로를 제거합니다. 이는 사용자의 이름을 포함할 수 있는 디렉터리 구조를 숨기면 개인 정보를 보호하는 데 유용합니다.
DEBUG_FORMAT_USER_SMALL_PROCESS_THREAD_DATA PEB(프로세스 환경 블록) 및 TEB(스레드 환경 블록)를 추가합니다. 이 플래그는 스레드 및 프로세스에 대한 Windows 시스템 정보를 제공하는 데 사용할 수 있습니다.
DEBUG_FORMAT_USER_SMALL_PRIVATE_READ_WRITE_MEMORY 커밋된 모든 프라이빗 읽기/쓰기 메모리 페이지를 추가합니다.
DEBUG_FORMAT_USER_SMALL_NO_OPTIONAL_DATA
개인 정보 보호에 중요한 데이터가 Minidump에 포함되지 않도록 합니다. 현재 이 플래그는 다음 플래그가 설정되어 추가되었을 미니덤프 데이터에서 제외됩니다.
DEBUG_FORMAT_USER_SMALL_PROCESS_THREAD_DATA
DEBUG_FORMAT_USER_SMALL_FULL_MEMORY,
DEBUG_FORMAT_USER_SMALL_INDIRECT_MEMORY
DEBUG_FORMAT_USER_SMALL_PRIVATE_READ_WRITE_MEMORY.
DEBUG_FORMAT_USER_SMALL_FULL_MEMORY_INFO 모든 기본 메모리 정보를 추가합니다. QueryVirtual 메서드에서 반환되는 정보입니다. 디버거가 미니덤프에서 전체 가상 메모리 레이아웃을 다시 구성할 수 있도록 하는 유효한 메모리뿐만 아니라 모든 메모리에 대한 정보가 포함됩니다.
DEBUG_FORMAT_USER_SMALL_THREAD_INFO 실행 시간, 시작 시간, 종료 시간, 시작 주소 및 종료 상태를 포함하는 추가 스레드 정보를 추가합니다.
DEBUG_FORMAT_USER_SMALL_CODE_SEGMENTS 실행 이미지가 있는 모든 코드 세그먼트를 추가합니다.
 

크래시 덤프 파일에 대한 자세한 내용은 Dump-File 대상참조하세요.

요구 사항

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

참고 항목

.dump(덤프 파일 만들기)

IDebugClient2

IDebugClient3

IDebugClient4

IDebugClient5

WriteDumpFileWide