Depurando WOW64

Os aplicativos em execução em WOW64 podem ser depurados de duas maneiras:

  • Use um depurador hospedado em x86, como NTSD, WinDbg ou Visual Studio. O NTSD de 32 bits é instalado em %systemroot%\syswow64 em instalações de varejo. Observe que os depuradores x86 podem ser usados para depurar o código x86, mas não podem ser usados para desmontar ou definir pontos de interrupção dentro da camada thunk WOW64 porque é um código nativo de 64 bits.
  • Use um depurador nativo, como CDB, NTSD ou WinDbg e a extensão de depurador WOW64, Wow64exts.dll. Se o depurador nativo for interrompido enquanto o processador estiver no modo x86, o depurador apresentará o processo como um processo x86. Se o processador estiver no modo nativo, o depurador apresentará o processo como nativo.

CDB, NTSD e WinDbg estão incluídos nas Ferramentas de Depuração para Windows. Para obter mais informações, consulte a documentação Ferramentas de Depuração para Windows .

A extensão de depurador Wow64exts é instalada com WinDbg. Use o comando !load wow64exts para carregar a extensão do depurador. A tabela a seguir lista os comandos de extensão do depurador !wow64exts.

Comando Descrição
!wow64exts.sw Alterna entre o modo x86 e o modo nativo.
!wow64exts.k count Despeja um rastreamento de pilha combinado de 32 bits/64 bits. Se count for especificado, o comando despejará os primeiros endereços de contagem em cada rastreamento de pilha.
!wow64exts.info Despeja informações básicas sobre o PEB do processo, o TEB do thread atual e os slots de TLS (armazenamento local de thread) usados pelo WOW64.
!wow64exts.r address Despejos de contexto para o endereço especificado. Se o endereço não for especificado, o comando despejará o contexto para o processador.