Поделиться через


Метод IDebugClient5::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

Задает флаги, определяющие формат файла дампа и -for user-mode minidumps-то, какие сведения следует включить в файл. Дополнительные сведения см. в разделе "Примечания".

[in, optional] Comment

Указывает строку комментария, которая будет включена в файл аварийного дампа. Эта строка отображается в консоли отладчика при загрузке файла дампа. Некоторые форматы файлов дампа не поддерживают хранение строк комментариев.

Возвращаемое значение

Этот метод также может возвращать значения ошибок. Дополнительные сведения см. в возвращаемых значений.

Возвращаемый код Описание
S_OK
Метод был успешным.

Замечания

DEBUG_FORMAT_XXX битовые флаги используются WriteDumpFile2 и WriteDumpFileWide для определения формата файла аварийного дампа и для пользовательских мини-dumps, какие сведения следует включить в файл.

Следующие битовые флаги применяются ко всем файлам аварийного дампа.

Ценность Описание
DEBUG_FORMAT_WRITE_CAB Упаковайте файл аварийного дампа в CAB-файл. Указанное имя файла или дескриптор файла используется для CAB-файла; Аварийный дампов сначала создается во временном файле перед перемещением в CAB-файл.
DEBUG_FORMAT_CAB_SECONDARY_FILES
Включите текущие символы и сопоставленные изображения в CAB-файл.
Если DEBUG_FORMAT_WRITE_CAB не задано, этот флаг игнорируется.
DEBUG_FORMAT_NO_OVERWRITE Не перезаписывать существующие файлы.
 

Следующие битовые флаги также можно включить для мини-приложений в режиме пользователя.

Ценность Описание
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 Установите значение нулю всей памяти в стеке и в резервном хранилище, которое не полезно для повторного восстановления трассировки стека. Это может сделать сжатие Мини-dump более эффективным и повысить конфиденциальность, удалив ненужные сведения.
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. В настоящее время этот флаг исключается из данных 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. Сведения для всей памяти включены, а не только допустимая память, которая позволяет отладчику восстановить полный макет виртуальной памяти из Minidump.
DEBUG_FORMAT_USER_SMALL_THREAD_INFO Добавьте дополнительные сведения о потоке, включая время выполнения, время начала, время выхода, адрес начала и состояние выхода.
DEBUG_FORMAT_USER_SMALL_CODE_SEGMENTS Добавьте все сегменты кода с исполняемыми изображениями.
 

Дополнительные сведения о файлах аварийного дампа см. в разделе Dump-File Целевые объекты.

Требования

Требование Ценность
целевая платформа Настольный
заголовка dbgeng.h (include Dbgeng.h)

См. также

.dump (создание файла дампа)

IDebugClient2

IDebugClient3

IDebugClient4

IDebugClient5

WriteDumpFileWide