Uma abordagem seria travar a máquina inteira e obter um despejo de memória "Completo" quando você sabe que ela está desativada.
Você deve configurar o computador com antecedência para inicializar uma falha no teclado seguindo esta KBA:
Você também precisa configurar o computador para criar um despejo completo. Um rápido Google surgiu com:
De qualquer forma, eu vou assumir neste momento que você pode obter um arquivo memory.dmp quando o computador estava no estado suspenso, então você pode:
-
Faça o download do SDK do Windows para instalar apenas o Componente Ferramentas de Depuração. Isso gerará
Windbg
, ou seja,C:\Program Files (x86)\Windows Kits\Debuggers\x64\windbg.exe
-
Lance
Windbg
e carregue no arquivo de despejo. "File" → "Open Crash dump". -
Agora é onde ele pode ficar pesado, mas se você quiser apenas uma árvore de processo fácil de usar, você pode usar uma extensão chamada DbgKit . Para usá-lo, copie a dll de 64 bits para
C:\Program Files (x86)\Windows Kits\Debuggers\x64\winext\
-
Em
Windbg
, carregue a extensão usando o seguinte comando:.load dbgkit
O comando a seguir mostrará que está carregado:
.chain
-
Você pode então executar:
!dbgkit.ps
Isso lhe dará uma visualização do despejo do tipo Process Explorer para que você possa ver o que os processos estavam fazendo. Demorará um pouco para extrair várias informações, mas isso lhe dará o que você deseja.
Espero que seja um bom começo. Além disso, sugerimos que você analise alguns vídeos na série Defrag Tools no canal 9 sobre como depurar um despejo de memória para travar.