!analyze (WinDbg)
A extensão !analyze exibe informações sobre a exceção atual ou a verificação de bug.
Modo de usuário
!analyze [-v[0..99]] [-f | -hang]
!analyze [-v[0..99]] -xml [-xmi] [-xcs] [-xmf OutputXmlFile]
!analyze -c [-load KnownIssuesFile | -unload | -help ]
Modo kernel
!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 ]
Parâmetros gerais
-v[0..99]
Exibe a saída detalhada. Você pode exibir mais informações especificando um número de 0 a 99. Se você não especificar um número, o valor padrão será 1. Você também pode especificar Muito detalhado (-vv) para exibir todas as informações disponíveis.
Para o modo de usuário, -v6 exibe o que foi descoberto globalmente e em cada thread.
-f
Gera a saída de exceção !analyze . Use esse parâmetro para ver uma análise de exceção, mesmo quando o depurador não detectar uma exceção.
-pendurar
Gera a saída do aplicativo suspenso !analyze . Use esse parâmetro quando o destino tiver passado por uma verificação de bug ou exceção. No entanto, uma análise do motivo pelo qual um aplicativo travou é mais relevante para o seu problema. No modo kernel, !analyze -hang investiga bloqueios que o sistema mantém e, em seguida, verifica a cadeia de filas DPC. No modo de usuário, !analyze -hang analisa a pilha de threads para determinar se algum thread está bloqueando outros threads.
Antes de executar essa extensão no modo de usuário, considere alterar o thread atual para o thread que você acha que parou de responder (ou seja, travado). Você deve fazer essa alteração porque a exceção pode ter alterado o thread atual para um diferente.
Mostrar parâmetro
-programa BugCheckCode
[BugParameters]
Exibe informações sobre a verificação de bugs especificada pelo BugCheckCode
. BugParameters
Especifica até quatro parâmetros de verificação de bugs separados por espaços. Esses parâmetros permitem que você refine ainda mais sua pesquisa.
Parâmetros de execução de continuação
-c
Continua a execução quando o depurador encontra um problema conhecido. Se o problema não for conhecido, o depurador permanecerá quebrado no destino.
Você pode usar a opção -c com os subparâmetros a seguir. Esses subparâmetros configuram a lista de problemas conhecidos. Eles não fazem com que a execução ocorra por si mesmos. Até que você execute !analyze -c-load **** pelo menos uma vez, !analyze -c não terá efeito.
-carga KnownIssuesFile
Carrega o arquivo de problemas conhecidos especificado. KnownIssuesFile
Especifica o caminho e o nome do arquivo desse arquivo. Esse arquivo deve estar no formato XML.
A lista de problemas conhecidos no KnownIssuesFile
arquivo é usada para todos os comandos -c posteriores até que você use -c -unload ou até que você use -c -load novamente (nesse ponto, os novos dados substituem os dados antigos).
-descarregar
Descarrega a lista atual de problemas conhecidos.
ajuda
Exibe a ajuda para a extensão de comandos de extensão !analyze -c na janela de comando do Depurador.
Parâmetros de opção de carregamento XML
-XML
Gera a saída da análise no formato XML.
-Xmi
Adiciona informações do módulo à saída xml. Essa opção requer -xml ou -xmf.
-xcs
Adiciona os quadros de pilha de contexto e chamada à saída xml. Essa opção requer -xml ou -xmf.
-xmf OutputXmlFile
Grava a análise no especificado OutputXmlFile
no formato XML. O arquivo será substituído se ele já existir. Nenhuma saída de análise será gerada para o console ou log, a menos que a opção -xml também seja especificada.
DLL
ext.dll
Informações Adicionais
Para obter uma análise de exemplo de uma exceção no modo de usuário e de um erro de parada no modo kernel (ou seja, falha) e para obter mais informações sobre como !analyze usa o arquivo triage.ini, consulte Usando a extensão !analyze.
Comentários
No modo de usuário, !analyze exibe informações sobre a exceção atual.
No modo kernel, !analyze exibe informações sobre a verificação de bug mais recente. Se ocorrer uma verificação de bug, a exibição !analyze será gerada automaticamente. Você pode usar !analyze -v para mostrar informações adicionais. Se você quiser ver apenas os parâmetros básicos de verificação de bugs, você pode usar o comando .bugcheck (exibir dados de verificação de bugs).
Para drivers que usam o UMDF (User-Mode Driver Framework) versão 2.15 ou posterior, !analyze fornece informações sobre falhas do verificador UMDF e exceções sem tratamento. Essa funcionalidade está disponível ao executar a depuração no modo kernel ao vivo e ao analisar um arquivo de despejo de memória do modo de usuário. Para falhas de driver UMDF, !analyze tenta identificar o driver responsável.