.dump (создание файла дампа)
Команда .dump создает файл аварийного дампа в пользовательском режиме или режиме ядра.
.dump [options] FileName
.dump /?
Параметры
Параметры
Представляет один или несколько из следующих параметров.
/a
Создание дампов для всех процессов (требуется -u).
/b[a]
Упаковка дампа в CAB и удаление дампа. Дополнительные сведения включаются , если указан параметр .
Комментарий /c <>
Добавьте комментарий (не поддерживается во всех форматах).
/j <addr>
Укажите адрес JIT_DEBUG_INFO.
/O
Перезаписывает существующий файл дампа с тем же именем. Если этот параметр не используется и имеется файл с таким же именем, файл дампа не записывается.
/u
Добавьте уникальный идентификатор в имя дампа.
/f[FullOptions]
(Режим ядра:) Создает полный дамп памяти.
(Пользовательский режим:) Не поддерживается. Ранее этот параметр создавал полный дамп пользовательского режима, который является устаревшим форматом с меньшим количеством сведений, чем в новом формате минидампа. Дополнительные сведения см. в разделе Варианты файлов дампа User-Mode.
Чтобы изменить содержимое файла дампа, можно добавить следующие FullOptions . параметр учитывает регистр.
FullOption | Действие |
---|---|
y | Добавляет сведения о регистрации AVX в файл дампа. |
/m[MiniOptions]
Создает небольшой дамп памяти (в режиме ядра) или минидамп (в пользовательском режиме). Дополнительные сведения см. в разделе Файлы дампа в пользовательском режиме. Если ни /f , ни /m не указаны, по умолчанию используется параметр /m .
В пользовательском режиме за параметром /m могут следовать дополнительные мини-параметры , указывающие дополнительные данные, которые должны быть включены в дамп. Если miniOptions не включены, дамп будет включать сведения о модуле, потоке и стеке, но не будут добавлены дополнительные данные. Чтобы изменить содержимое файла дампа, можно добавить любой из следующих мини-вариантов : в них учитывается регистр.
MiniOption | Действие |
---|---|
а | Создает минидамп со всеми необязательными дополнениями. Параметр /ma эквивалентен параметру /mfFhut. Он добавляет данные о полной памяти, данные обработки, сведения о выгруженном модуле, основные сведения о памяти и время потока в минидамп. Любой сбой чтения недоступной памяти приводит к прекращению создания минидампа. |
A | Параметр /mA эквивалентен параметру /ma, за исключением того, что он игнорирует все ошибки чтения недоступной памяти и продолжает создавать минидамп. |
f | Добавляет данные полной памяти в минидамп. Будут включены все доступные зафиксированные страницы, принадлежащие целевому приложению. |
F | Добавляет все основные сведения о памяти в минидамп. Это добавляет поток в минидамп, который содержит все основные сведения о памяти, а не только сведения о допустимой памяти. Это позволяет отладчику воссоздать полный макет виртуальной памяти процесса при отладке минидампа. |
h | Добавляет данные о дескрипторах, связанных с целевым приложением, в минидамп. |
u | Добавляет в минидамп сведения о выгруженных модулях. |
t | Добавляет дополнительные сведения о потоке в минидамп. Сюда входит время потока, которое можно отобразить с помощью расширения !runaway или команды .ttime (Display Thread Times) при отладке минидампа. |
i | Добавляет в минидамп вспомогательную память. Вторичная память — это любая память, на которую ссылается указатель на стек или резервное хранилище, а также небольшая область вокруг этого адреса. |
p | Добавляет в минидамп данные блока среды обработки (PEB) и блока среды потока (TEB). Это может быть полезно, если вам нужен доступ к системной информации Windows, касающейся процессов и потоков приложения. |
w | Добавляет все зафиксированные частные страницы для чтения и записи в минидамп. |
d | Добавляет все сегменты данных для чтения и записи в исполняемом образе в минидамп. |
с | Добавляет разделы кода в изображения. |
r | Удаляет из минидампы те части стека и память хранения, которые не полезны для повторного создания трассировки стека. Локальные переменные и другие значения типов данных также удаляются. Этот параметр не делает минидампа меньше (так как эти разделы памяти просто обнуляются), но он полезен, если вы хотите защитить конфиденциальность других приложений. |
R | Удаляет полные пути к модулю из минидампа. Будут включены только имена модулей. Это удобно, если вы хотите защитить конфиденциальность структуры каталогов пользователя. |
y | Добавляет сведения о регистрации AVX в файл дампа. |
Параметры режима ядра
В режиме ядра доступны следующие параметры.
/K
Создайте дамп только с памятью ядра.
/Ка
Создайте дамп с активным ядром и памятью пользовательского режима.
Дополнительные сведения
Описание файлов дампа в режиме ядра и объяснение их использования см. в разделе Файлы дампа режима ядра. Описание файлов дампа в пользовательском режиме и объяснение их использования см. в разделе Файлы дампа пользовательского режима.
Комментарии
Эту команду можно использовать в различных ситуациях:
Во время динамической отладки в пользовательском режиме эта команда направляет целевое приложение на создание файла дампа, но целевое приложение не завершает работу.
Во время динамической отладки в режиме ядра эта команда направляет целевой компьютер на создание файла дампа, но при этом не происходит сбой.
Во время отладки аварийного дампа эта команда создает новый файл аварийного дампа из старого. Это полезно, если у вас есть большой файл аварийного дампа и вы хотите создать файл меньшего размера.
Вы можете управлять типом создаваемого файла дампа:
В режиме ядра для создания полного дампа памяти используйте параметр /f . Чтобы создать небольшой дамп памяти, используйте параметр /m (или без параметров). Команда .dump не может создать дамп памяти ядра.
В пользовательском режиме лучшим выбором является .dump/m[MiniOptions] . Хотя "m" означает "minidump", файлы дампа, созданные с помощью этого miniOption, могут различаться по размеру от очень маленького к очень большому. Указав правильные miniOptions , вы можете точно контролировать, какие сведения будут включены. Например, .dump /ma создает дамп с большими сведениями. Старая команда .dump /f создает файл "стандартный дампа" умеренно большого размера и не может быть настроен.
Невозможно указать, какой процесс является дампом. Все запущенные процессы будут дампами.
Параметры /xc, /xr, /xp и /xt используются для хранения сведений об исключении и контексте в файле дампа. Это позволяет выполнять команду .ecxr (Display Exception Context Record) в этом файле дампа.
В следующем примере создается минидамп пользовательского режима, содержащий полную память и сведения о дескрипторе:
0:000> .dump /mfh myfile.dmp
Сведения о дескрипторе можно считывать с помощью команды расширения !handle .
См. также:
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по