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


!analyze (WinDbg)

Расширение !analyze отображает сведения о текущем исключении или проверке ошибок.

Режим пользователя

    !analyze [-v[0..99]] [-f | -hang]
    !analyze [-v[0..99]] -xml [-xmi] [-xcs] [-xmf OutputXmlFile]
    !analyze -c [-load KnownIssuesFile | -unload | -help ]

Режим ядра

    !analyze [-v[0..99]] [-f | -hang]
    !analyze -show BugCheckCode [BugParameters]
    !analyze [-v[0..99]] -xml [-xmi] [-xcs] [-xmf OutputXmlFile]
    !analyze -c [-load KnownIssuesFile | -unload | -help ]

Общие параметры

-v[0.99]

Отображает подробные выходные данные. Дополнительные сведения можно отобразить, указав число от 0 до 99. Если число не указано, значение по умолчанию равно 1. Вы также можете указать очень подробные сведения (-vv) для отображения всех доступных сведений.

В пользовательском режиме -v6 отображает то, что было обнаружено глобально и в каждом потоке.

-f

Создает выходные данные исключения !analyze . Используйте этот параметр для просмотра анализа исключений, даже если отладчик не обнаруживает исключение.

-вешать

Создает выходные данные <a1/>. Используйте этот параметр, если целевой объект испытал проверку ошибок или исключение. Тем не менее, анализ того, почему приложение зависается более актуально для вашей проблемы. В режиме ядра !analyze -hang анализирует блокировки, которые система держит, а затем сканирует цепочку очередей DPC. В пользовательском режиме !analyze -hang анализирует стек потоков, чтобы определить, блокируют ли потоки другие потоки.

Прежде чем запускать это расширение в пользовательском режиме, рассмотрите возможность изменения текущего потока на поток, который, по вашему мнению, перестал отвечать (т. е. висел). Это изменение необходимо сделать, так как исключение может изменить текущий поток на другой.

Показать параметр

-показывать BugCheckCode [BugParameters]

Отображает сведения о проверке ошибок, указанной в параметре BugCheckCode. BugParameters задает до четырех параметров проверки ошибок, разделенных пробелами. Эти параметры позволяют дополнительно уточнить поиск.

Продолжить параметры выполнения

-c

Продолжает выполнение, когда отладчик сталкивается с известной проблемой. Если проблема не является известной проблемой, отладчик остается разбитым на целевой объект.

Параметр -c можно использовать со следующими подпараметрами. Эти подпараметры настраивают список известных проблем. Они не вызывают само собой выполнение. Пока вы не запускаете !analyze -c-load **** по крайней мере один раз, !analyze -c не действует.

-груз KnownIssuesFile
Загружает указанный файл известных проблем. KnownIssuesFile указывает путь и имя файла этого файла. Этот файл должен быть в формате XML.

Список известных проблем в KnownIssuesFile файле используется для всех последующих команд -c, пока не будет использоваться -c-выгрузить или до тех пор, пока не будет использоваться -c -load еще раз (в какой момент новые данные заменяют старые данные).

-разгружать

Выгрузит текущий список известных проблем.

-help

Отображает справку по расширению команд расширения !analyze -c в окне команд отладчика.

Параметры параметра загрузки XML

-xml

Создает выходные данные анализа в формате XML.

-xmi

Добавляет сведения о модуле в выходные данные XML. Для этого параметра требуется -xml или -xmf.

-xcs

Добавляет контекст и кадры стека вызовов в выходные данные XML. Для этого параметра требуется -xml или -xmf.

-xmf OutputXmlFile

Записывает анализ в указанный OutputXmlFile в формате XML. Файл будет перезаписан, если он уже существует. Выходные данные анализа не будут создаваться в консоли или журнале, если параметр -xml также не указан.

DLL-библиотеки

ext.dll

Дополнительная информация

Пример анализа исключения в пользовательском режиме и ошибки остановки в режиме ядра (то есть сбоя), а также дополнительные сведения о том, как !analysis использует файл triage.ini, см. в разделе "Использование расширения !analysis".

Замечания

В пользовательском режиме !analyze отображает сведения о текущем исключении.

В режиме ядра !analyze отображает сведения о последней проверке ошибок. Если возникает ошибка, автоматически создается отображение !analyze . Вы можете использовать !analyze -v для отображения дополнительных сведений. Если вы хотите просмотреть только основные параметры проверки ошибок, можно использовать команду .bugcheck (отображение данных проверки ошибок).

Для драйверов, использующих среда выполнения платформы драйвера режима пользователя (UMDF) версии 2.15 или более поздней, !analyze предоставляет сведения о сбоях проверки UMDF и необработанных исключениях. Эта функция доступна при отладке в динамическом режиме ядра и при анализе файла дампа памяти в режиме пользователя. При сбое драйвера UMDF выполняется анализ попыток идентификации ответственного драйвера.

См. также