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
크래시 덤프 파일에 포함할 주석 문자열을 지정합니다. 이 문자열은 덤프 파일이 로드될 때 디버거 콘솔에 표시됩니다. 일부 덤프 파일 형식은 주석 문자열 저장을 지원하지 않습니다.
반환 값
이 메서드는 오류 값을 반환할 수도 있습니다. 자세한 내용은 반환 값을 참조하세요 .
반환 코드 | Description |
---|---|
|
메서드를 성공적으로 수행했습니다. |
설명
DEBUG_FORMAT_XXX 비트 플래그는 WriteDumpFile2 및 WriteDumpFileWide 에서 크래시 덤프 파일의 형식을 확인하고 사용자 모드 Minidumps의 경우 파일에 포함할 정보를 결정하는 데 사용됩니다.
다음 비트 플래그는 모든 크래시 덤프 파일에 적용됩니다.
값 | Description |
---|---|
DEBUG_FORMAT_WRITE_CAB | CAB 파일에 크래시 덤프 파일을 패키지합니다. 제공된 파일 이름 또는 파일 핸들은 CAB 파일에 사용됩니다. 크래시 덤프는 CAB 파일로 이동하기 전에 먼저 임시 파일에서 만들어집니다. |
DEBUG_FORMAT_CAB_SECONDARY_FILES |
|
DEBUG_FORMAT_NO_OVERWRITE | 기존 파일을 덮어쓰지 마세요. |
사용자 모드 Minidump에 대해 다음 비트 플래그를 포함할 수도 있습니다.
값 | Description |
---|---|
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으로 설정합니다. 이렇게 하면 불필요한 정보를 제거하여 Minidump를 더 효율적으로 압축하고 개인 정보를 늘릴 수 있습니다. |
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 |
|
DEBUG_FORMAT_USER_SMALL_FULL_MEMORY_INFO | 모든 기본 메모리 정보를 추가합니다. QueryVirtual 메서드에서 반환하는 정보입니다. 디버거가 Minidump에서 전체 가상 메모리 레이아웃을 재구성할 수 있도록 유효한 메모리뿐만 아니라 모든 메모리에 대한 정보가 포함됩니다. |
DEBUG_FORMAT_USER_SMALL_THREAD_INFO | 실행 시간, 시작 시간, 종료 시간, 시작 주소 및 종료 상태 포함하는 추가 스레드 정보를 추가합니다. |
DEBUG_FORMAT_USER_SMALL_CODE_SEGMENTS | 실행 파일을 사용하여 모든 코드 세그먼트를 추가합니다. |
크래시 덤프 파일에 대한 자세한 내용은 덤프 파일 대상을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | dbgeng.h(Dbgeng.h 포함) |