ProcessDump — различия между версиями

Материал из wiki.drweb.com
Перейти к: навигация, поиск
м (procdump-у нужны права администратора)
м (Не нужны procdump-у права администратора. Вернее нужны, но не всегда)
Строка 18: Строка 18:
  
  
'''Примечание:''' В операционных системах Vista и выше для успешного создания дампов, procdump-у нужны права администратора. Т.е. если включен UAC надо предварительно запустить командную строку через элевацию.
+
'''Примечание:''' В операционных системах Vista и выше для успешного создания дампов, procdump-у нужны права на запись в тот каталог, где будут созданы дампы. Например файл *.dmp в корне диска C: (см. примеры) не удастся создать без прав администратора.
 +
 
 +
Для снятия дампов с некоторых процессов (например сервисов) в Висте и выше нужны права администратора.
  
  

Версия 17:29, 11 января 2010

Эта статья описывает, как создать дамп-файл (.dmp файл) процесса режима пользователя в ОС Windows. Он нужен, если надо разобраться в причинах завершения процесса с ошибкой, зависания или загрузки процессора.


Дамп памяти — содержимое рабочей памяти процесса, которое операционная система позволяет сохранить для отладки программы. Кроме содержимого памяти, дамп может включать дополнительную информацию о состоянии программы (например значения регистров процессора и содержимое стека).


ProcDump (Mark Russinovich)

Для создания минидампа блокнота (PID=1276), введите в командной строке или "Пуск" -> "Выполнить" (в примере procdump.exe находится в каталоге C:\tools)

C:\tools\procdump notepad.exe C:\notepad.dmp

Для создания полного дампа добавьте параметр -ma

C:\tools\procdump -ma notepad.exe C:\notepad_full.dmp

Если в системе есть несколько процессов с одинаковым именем (яркий пример - svchost.exe), то описанные способ не сработает.

В этом случае вместо имени исполняемого файла процесса (notepad.exe) укажите его PID (1276).


Примечание: В операционных системах Vista и выше для успешного создания дампов, procdump-у нужны права на запись в тот каталог, где будут созданы дампы. Например файл *.dmp в корне диска C: (см. примеры) не удастся создать без прав администратора.

Для снятия дампов с некоторых процессов (например сервисов) в Висте и выше нужны права администратора.


Системные требования

  • Клиет: Windows XP и выше.
  • Сервер: Windows Server 2003 и выше.


Диспетчер задач Windows (Windows Vista и выше)

На вкладке "Processes" в контекстном меню нужного процесса выбираем "Создать файл дампа памяти"

TaskManager Dump.png


Диспетчер задач Windows может создавать только полные дампы.

Дампы сохраняются в каталог %TEMP%.


DebugDiag (Microsoft)

Тредуется установка Debug Diagnostic Tool v1.1

На вкладке "Processes" в контекстном меню нужного процесса выбираем один из вариантов: "Full UserDump" или "Mini UserDump".

DebugDiag Dump.PNG


Дампы сохраняются в каталог %DebugDiag%\Logs\Misc


Системные требования

  • Клиент: Windows XP и выше (на Windows 2000 скорее всего работать не будет).
  • Сервер: Windows Server 2003 и выше.


Ссылки