Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Ao usar a janela Pilha de Chamadas, você pode exibir chamadas de função ou procedimento que estão na pilha atualmente. A janela Pilha de Chamadas mostra a ordem em que os métodos e as funções são chamados. A pilha de chamadas é uma boa maneira de examinar e entender o fluxo de execução de um aplicativo.
Ao depurar símbolos que não estão disponíveis para a parte de uma pilha de chamadas, a janela Pilha de chamadas não poderá exibir as informações corretas dessa parte da pilha de chamadas, sendo exibido no lugar:
[Frames below may be incorrect and/or missing, no symbols loaded for name.dll]
Nota
As caixas de diálogo e os comandos de menu que você vê podem ser diferentes daqueles descritos aqui, dependendo de suas configurações ativas ou edição. Para alterar suas configurações, selecione Configurações de Importação e Exportação no menu Ferramentas. Consulte Redefinir todas as configurações. A janela Pilha de Chamadas é semelhante à perspectiva de Depuração em alguns IDEs, como o Eclipse.
Exibir a pilha de chamadas enquanto estiver no depurador
Durante a depuração, no menu Depurar, selecione Pilha de Chamadas do Windows > ou pressione ctrl
+alt
+C
.
Uma seta identifica o registro de ativação em que o ponteiro de execução está localizado no momento. Por padrão, as informações desse registro de ativação aparecem nas janelas de origem, Locais, Automáticas, Inspeção e Desmontagem. Para alterar o contexto do depurador para outro quadro na pilha, alterne para outro registro de ativação.
Uma seta amarela identifica o registro de ativação onde o ponteiro de execução está localizado atualmente. Por padrão, as informações desse registro de ativação aparecem nas janelas de origem, Locais, Automáticas, Inspeção e Desmontagem. Para alterar o contexto do depurador para outro quadro na pilha, alterne para outro registro de ativação.
Você também pode exibir quadros de pilha de exceção na pilha de chamadas durante a depuração. Para obter mais informações, consulte Exibir a pilha de chamadas no Auxiliar de exceção.
Exibir código que não é de usuário na janela Pilha de Chamadas
Para exibir o código externo ou que não é de usuário, alterne o botão Mostrar Código Externo, clique com o botão direito do mouse na janela Pilha de Chamadas e selecione Mostrar Código Externo.
Para exibir o código externo ou não pertencente ao usuário, alterne o botão Mostrar Código Externo na barra de ferramentas da pilha de chamadas ou clique com o botão direito do mouse na janela pilha de chamadas e selecione Mostrar Código Externo.
Código que não é de usuário é qualquer código que não é mostrado quando Apenas Meu Código está habilitado. No código gerenciado, os quadros de código não usuário são ocultos por padrão. A notação a seguir aparece no lugar dos quadros de código que não são de usuário:
[<External Code>]
Alternar para outro registro de ativação (alterar o contexto do depurador)
Na janela Pilha de chamadas, clique com o botão direito do mouse no quadro de pilha cujos dados e código você deseja exibir.
Ou você pode clicar duas vezes em um quadro na janela Pilha de Chamadas para alternar para esse quadro.
Selecione Alternar para Quadro.
Uma seta verde com uma parte final encaracolada aparece ao lado do quadro de pilha que você selecionou. O ponteiro de execução permanece no quadro original, que ainda está marcado com a seta amarela. Se você selecionar Etapa ou Continuar no menu Depurar, a execução continuará no quadro original, não no quadro selecionado.
Exibir todos os threads relacionados
Alterne o botão Exibir todos os threads para ver todos os threads relacionados na janela Pilha Paralela. A janela Pilhas Paralelas fornece visualizações das pilhas de chamadas para aplicativos multiencadeados.
Pesquisa da Pilha de Chamadas
Você pode pesquisar quadros de pilha de chamadas relevantes digitando termos de pesquisa relevantes na caixa de pesquisa localizada no canto superior esquerdo da janela da pilha de chamadas. Os quadros da pilha de chamadas pertinentes serão realçados.
Exibir o código-fonte de uma função na pilha de chamadas
Na janela Pilha de Chamadas, clique com o botão direito do mouse na função cujo código-fonte você deseja ver e selecione Ir para Código-Fonte.
Executar em uma função específica da janela de pilha de chamadas
Na janela Pilha de Chamadas, selecione a função, clique com o botão direito do mouse e escolha Executar para Cursor.
Definir um ponto de interrupção no ponto de saída de uma chamada de função
Consulte Definir um ponto de interrupção em uma função de pilha de chamadas.
Exibir chamadas de ou para outro tópico
Clique com o botão direito do mouse na janela Pilha de Chamadas e selecione Incluir chamadas para/de outros threads.
Rastrear visualmente a pilha de chamadas
No Visual Studio Enterprise (somente), você pode exibir mapas de código para a pilha de chamadas durante a depuração.
Na janela Pilha de Chamadas, abra o menu de atalho. Escolha Mostrar Pilha de Chamadas no Mapa de Código (Ctrl + Shift + `).
Para obter mais informações, consulte Mapear métodos na pilha de chamadas durante a depuração.
Exibir o código de desmontagem de uma função na pilha de chamadas (C#, C++, Visual Basic, F#)
Na janela Pilha de Chamadas, clique com o botão direito do mouse na função cujo código de desmontagem você deseja ver e selecione Ir para Desmontagem.
Alterar as informações opcionais exibidas
Clique com o botão direito do mouse na janela Pilha de Chamadas e defina ou desmarque Mostrar <as informações desejadas>.
Descompilar automaticamente o código externo do .NET
A partir do Visual Studio 2022 versão 17.7, você pode descompilar automaticamente o código .NET clicando duas vezes no código externo na janela Pilha de Chamadas. Para obter mais informações, consulte Gerar código-fonte a partir de assemblies .NET durante a depuração.
Carregar símbolos para um módulo (C#, C++, Visual Basic, F#)
Na janela Pilha de Chamadas, você pode carregar símbolos de depuração para o código que atualmente não tem símbolos carregados. Esses símbolos podem ser símbolos do .NET ou do sistema baixados dos servidores públicos de símbolo da Microsoft ou de símbolos em um caminho de símbolo no computador que você está depurando.
Confira Especificar arquivos de símbolo (.pdb) e de origem.
Para carregar símbolos
Na janela Pilha de Chamadas, clique com o botão direito do mouse no registro de ativação para o qual os símbolos não foram carregados. O quadro ficará menos iluminado.
Aponte para Carregar Símbolos e selecione Servidores de Símbolos da Microsoft (se disponíveis) ou navegue até o caminho do símbolo.
Para definir o caminho do símbolo
Na janela Pilha de Chamadas, escolha Configurações de Símbolo no menu de atalho.
A caixa de diálogo Opções é aberta e a página Símbolos é exibida.
Selecione Configurações de Símbolo.
Na caixa de diálogo Opções, clique no ícone Pasta.
Na caixa Locais do arquivo de símbolo (.pdb), um cursor será exibido.
Digite um nome de caminho de diretório no local do símbolo no computador que você está depurando. Para depuração local e remota, esse é um caminho no computador local.
Selecione OK para fechar a caixa de diálogo Opções.