O que é um arquivo PDB e como posso excluí-lo da pasta de liberação quando reconstruo minha solução?
O que é um arquivo PDB e como posso excluí-lo da pasta de liberação quando reconstruo minha solução?
Respostas:
Um arquivo PDB contém informações para o depurador trabalhar. Há menos informações em uma versão do que em uma versão de depuração. Mas se você não deseja que ele seja gerado, acesse as propriedades de compilação do seu projeto, selecione a configuração Release, clique em "Advanced ..." e, em "Debug Info", escolha "None".
Originalmente, eu me fiz a pergunta " Preciso de um arquivo PDB implantado na máquina do meu cliente? " E, depois de ler esta postagem, decidi excluir o arquivo.
Tudo funcionou bem, até hoje, quando eu estava tentando descobrir por que uma caixa de mensagem contendo um Exception.StackTrace
estava faltando as informações de número de arquivo e linha - necessárias para solucionar a exceção. Reli este post e encontrei o principal número de informações: embora o PDB não seja necessário para a execução do aplicativo, é necessário que os números de arquivo e linha estejam presentes na StackTrace
string. Incluí o arquivo PDB na pasta executável e agora está tudo bem.
accepted answer
aqui não menciona.
APO é uma abreviatura para P rogram D ATA B ase. Como o nome sugere, é um repositório (armazenamento persistente, como bancos de dados) para manter as informações necessárias para executar seu programa no modo de depuração. Ele contém muitas informações relevantes importantes necessárias durante a depuração do código (no Visual Studio), por exemplo, em quais pontos você inseriu pontos de interrupção nos quais espera que o depurador seja interrompido no Visual Studio.
Esse é o motivo pelo qual muitas vezes o Visual Studio falha nos pontos de interrupção se você remover os *.pdb
arquivos das pastas de depuração. O depurador do Visual Studio também pode informar o número exato da linha do arquivo de código no qual ocorreu uma exceção no rastreamento da pilha com a ajuda dos *.pdb
arquivos. Portanto, os arquivos pdb efetivamente são um benefício para os desenvolvedores durante a depuração de um programa.
Geralmente, não é recomendável excluir a geração de *.pdb
arquivos. Do ponto de vista do release de produção, o que você deve fazer é criar os arquivos pdb, mas não os envie para o site do cliente no instalador do produto. Preserve todos os arquivos PDB gerados em um servidor de símbolos de onde possa ser usado / referenciado no futuro, se necessário. Especialmente nos casos em que você depura problemas como falha no processo. Quando você começa a analisar os arquivos de despejo de memória e se os *.pdb
arquivos originais criados durante o processo de compilação não forem preservados, o Visual Studio não poderá distinguir a linha exata de código que está causando a falha .
Se você ainda deseja desativar *.pdb
completamente a geração de arquivos para qualquer release, vá para as propriedades do projeto -> Guia Build -> Clique no Advancedbotão -> Escolha none
na caixa suspensa "Informações de depuração" -> pressione OKconforme mostrado na captura de tela abaixo .
Nota : Essa configuração deverá ser feita separadamente para as configurações de compilação "Debug" e "Release".
Um arquivo PDB contém informações usadas pelo depurador. Não é necessário executar seu aplicativo e não precisa ser incluído na sua versão lançada.
Você pode desativar a criação de arquivos pdb no Visual Studio. Se você estiver construindo a partir da linha de comando ou de um script, omita a /Debug
opção.
O arquivo de banco de dados de depuração do programa (pdb) é um formato de arquivo da Microsoft para armazenar informações de depuração.
Quando você cria um projeto usando o Visual Studio ou o prompt de comando, o compilador cria esses arquivos de símbolo.
Verifique o Microsoft Docs