O aplicativo de desktop C # na edição expressa funcionou e não funcionou 5 segundos depois.
Eu tentei o seguinte:
- Verifique se a configuração de depuração, o sinalizador de depuração e as informações completas de depuração estão definidas em todos os assemblies.
- Exclua todas as pastas bin e obj e todas as DLLs relacionadas ao projeto de toda a minha máquina.
- Recrie projetos que causam o problema do zero.
- Reinicie.
Eu tenho dois projetos WinForms na solução. Um deles carrega as informações de depuração, um não. Ambos se referem ao assembly no qual estou tentando obter informações de depuração exatamente da mesma maneira no arquivo do projeto. Alguma ideia?
Quero adicionar aqui, principalmente para mim, quando voltar para revisar esta pergunta, que os símbolos não serão carregados até que o assembly seja carregado e o assembly não será carregado até que seja necessário. Se o ponto de interrupção estiver em uma biblioteca usada apenas em uma função em sua montagem principal, os símbolos não serão carregados (e mostrará o ponto de interrupção como não sendo atingido) até que essa função seja chamada.
fonte
<DebugSymbols>true</DebugSymbols>
no VS2015, eu a adicionei manualmente e funcionou bem.Respostas:
Inicie a depuração, assim que chegar a um ponto de interrupção ou usado
Debug > Break All
, useDebug > Windows > Modules
. Você verá uma lista de todos os assemblies carregados no processo. Localize o que você deseja obter informações de depuração. Clique com o botão direito do mouse e selecione Symbol Load Information. Você receberá uma caixa de diálogo que lista todos os diretórios em que procurou o arquivo .pdb para o assembly. Verifique essa lista com o local .pdb real. Verifique se ele não encontra um antigo.Em projetos normais, o assembly e seu arquivo .pdb sempre devem ter sido copiados pelo IDE na mesma pasta que o seu .exe. A pasta bin \ Debug do seu projeto. Remova um do GAC se você estiver jogando com ele.
fonte
Primeiro, tente reconstruir seu projeto clicando com o botão direito do mouse no projeto> Reconstruir. Se isso não funcionar, tente limpar o projeto (clique com o botão direito do mouse no projeto> limpar)
Se isso não funcionar, verifique isto:
(a etapa 6 gera os arquivos .pdb, esses são os símbolos de depuração)
fonte
Properties > Build > Optimize code
estava desmarcada .Apenas algo simples de tentar - você já deve ter tentado. Clique com o botão direito do mouse em Solution in Solution Explorer, clique em "clean solution" e exclui todos os arquivos compilados e temporários associados a uma solução .
Faça uma reconstrução da solução e tente depurar novamente.
Também tive problemas com pontos de interrupção de vários projetos em uma solução - alguns compilados como x86, outros como x64.
fonte
Desative a opção "Just My Code" nas configurações de depuração / geral.
fonte
Cross postando esta correção de Hans K que eu encontrei no segmento semelhante >> AQUI << :
fonte
A resposta selecionada me levou a resolver meu problema. Mas preciso fazer mais algumas coisas:
Mesmo com "Debug" selecionado no menu suspenso:
E no projeto Propriedades> Compilar:
O Visual Studio não estava carregando símbolos para um projeto específico. Então, nesse menu suspenso, selecione "Configuration Manager" e vi que as configurações do meu projeto da web estavam incorretas:
Então eu defino isso como "Debug" e ele começou a gerar o
.pdb
arquivo. MAS preciso copiar manualmente o PDB e a DLL e colocar na pasta que o VS estava procurando (aqui é onde a resposta selecionada me ajudou):fonte
release
modo. Obrigado !!Debug
>Windows
>Modules
Para ver o que os módulos foram sendo carregado me colocar na direção certa.No meu caso, o IIS Express parecia estar carregando uma DLL diferente dos arquivos temporários do ASP.NET.
A solução?
C:\Users\<YOUR USER>\AppData\Local\Temp\Temporary ASP.NET Files\vs
fonte
Consegui corrigir o erro simplesmente definindo a opção na opção 'Anexar ao processo' como 'Determinar automaticamente o tipo de código a depurar', como mostra a captura de tela anexada.
Basta seguir os passos abaixo:
fonte
Às vezes, mesmo que esse erro
breakpoint
seja causado, o erro ainda é atingido, então ignore o erro. Isso acontece com bastante frequência naViews
de umMVC web app
.fonte
Verifique se o seu arquivo .pbd está ausente na sua pasta bin / Debug. Se for, vá para "Propriedades" do seu projeto, selecione "Construir" e depois "Avançado" na parte inferior. Escolha "completo" em "Informações de depuração" na nova janela que apareceu. Esse foi o meu problema e o resolvi para mim.
fonte
No meu caso, "Otimizar código" foi verificado nas propriedades do meu projeto. Isso fez com que o VS visse meu assembly como "não meu código" e, por sua vez, não carregava símbolos para ele.
A solução foi desmarcar isso.
fonte
Basta verificar se sua solução está no modo de liberação.
fonte
Tente executar o visual studio como administrador no Windows.
fonte
No meu caso, estou tentando depurar no modo relase. Depois de alterá-lo para o modo de depuração. Está funcionando
fonte
Você precisa habilitar "Gerar informações de depuração" nas configurações do compilador
fonte
->
Opções de depuração->
Geral->
Desmarque a opção "Enable Just My Code
"Isso funcionou para mim.
fonte
Encontramos a causa do nosso problema. Esse código estava usando o atributo "CodeBehind" na diretiva Page do arquivo .aspx, em vez do atributo "CodeFile" (ASP.NET 2.0 e posterior). Após dias de desespero, uma simples busca e substituição resolveu o problema.
fonte
A opção "Iniciar depuração, depuração + Windows + módulos" não existe na edição do Microsoft Visual Studio Express 2013.
Desmarcar "Usar modo de compatibilidade gerenciada" em Ferramentas Opções de depuração corrige isso.
fonte
Verifique sua
Solution Configuration
lista suspensa. Certifique-se de selecionarDebug
, nãoRelease
.fonte
Eu tentei de tudo mencionado acima, mas nada funcionou. [Solução limpa e verifique arquivos PDB etc.]
Mesmo publicar a mesma solução não resolveu o problema.
Depois voltei ao que costumo fazer para resolver (enganar esse teimoso Visual Studio)
Tudo o que fiz foi fazer uma alteração deliberada no código e publicar a solução. Então eu reverti a alteração e publiquei novamente.
Voila [arquivos PDB livram-se de maus espíritos] .. Não é uma resolução inteligente, mas funcionou ..: - |
fonte
Apenas aplicativos da Web (IIS Express):
fonte
Nenhuma dessas respostas resolveu meu problema. Tentei outra coisa com base no fato de que o projeto com a parada não era, na realidade, o projeto carregado. Descobri, como Hans Passant, que o arquivo .dll em que eu quero parar o depurador e os arquivos .pdb associados, copiados perto do arquivo .exe. Esses arquivos tiveram uma data mais antiga, então eu pensei que eles não foram atualizados no tempo de execução. Eu os excluí manualmente, o Visual Studio cria outro par E coloca esse novo par perto do .exe. Agora o breakpoins funciona!
Talvez o Visual Studio não possa copiar e substituir arquivos existentes (.dll e .pdb) perto do .exe, pois há outro lá. Portanto, se eu excluísse manualmente, o VS poderia criar um novo próximo ao .exe.
Eu acho que outras alterações (verificações e assim por diante - das outras respostas) acionaram algo e o Visual Studio copiou e substituiu a dll e o pdb da pasta do projeto para a pasta perto do exe, de modo que foi uma solução.
Eu acho que a causa raiz do problema é que o Visual Studio usa outro arquivo em tempo de execução, não o arquivo do projeto, com a parada.
Talvez esta resposta ajude alguém!
fonte
Pontos a serem verificados para ficar claro: verifique se a configuração está definida como 'Debug' e não 'Release'. Você pode depurar o projeto de inicialização no modo 'Release', mas não uma biblioteca de classes referenciada.
fonte
Propriedades do projeto (selecione sua configuração de compilação)> Guia Compilação> Avançado ...> Informações sobre depuração (suspenso)
Defina como 'all' ou 'pdb-only' e depois reconstrua
fonte
Em vez de fazer todas essas coisas apenas
Feche e reabra
a solução irá corrigir o problema
fonte
Eu tive um problema semelhante e fiz o seguinte: Depuração => Opções => Geral => Remova a marca de seleção "Ativar apenas meu código" Isso funcionou para mim ..
fonte
Demorei um pouco para tentar outras opções acima e, por algum motivo estranho, a depuração parou de funcionar.
fonte
fonte
Verifique as duas configurações a seguir no Visual Studio:
Clique com o botão direito do mouse no projeto de teste, vá para Propriedades, guia Compilar e veja o Destino da plataforma
Os meus estão todos definidos como "Qualquer CPU", então x64
Na barra do menu principal, vá para Teste, Configurações de teste, Arquitetura padrão do processador
O meu foi definido como X86
Alterar isso para X64 para corresponder à configuração acima fez com que o menu “Debug Test (s)” do Visual Studio funcionasse e atingisse pontos de interrupção que eram ignorados anteriormente com a mensagem “O ponto de interrupção não será atingido no momento. Nenhum símbolo foi carregado para este documento ”.
Atualizar:
Para o Visual Studio 2019, os menus foram movidos um pouco:
fonte
Sei que estou atrasado anos, mas pensei que tinha feito algo errado e segui as etapas acima, então percebi que definiria a configuração da solução como 'Liberar' por engano :)
fonte