Pergunta

Será que é sábio para redistribuir os arquivos PDB juntamente com uma aplicação comercial?

Ocasionalmente, eu estou usando o rastreamento de pilha para obter um erro mais detalhado relato registros dos aplicativos implementados; pode esta funcionalidade ser alcançado sem depender a esses arquivos?

Além disso, a quantidade de pistas do código-fonte original não esses arquivos contêm? Seria mais fácil fazer engenharia reversa a minha candidatura a usá-lo?

Foi útil?

Solução

É basicamente acrescenta informações para:

  • Todos não públicas tipos, as interfaces, estruturas, aulas
  • As variáveis ??locais em funções
  • nomes de arquivo de origem para o código relevante e números de linha correspondentes no código-fonte.

que todas as marcas combinadas engenharia reversa muito fácil para código nativo.

Felizmente, você pode criar uma versão simplificada dos seus arquivos PDB que contém apenas informações públicas com / PDBSTRIPPED parâmetro.

Oh você editado para adicionar C # /. NET, então eu não tenho certeza se "PDBSTRIPPED" é aplicável. No entanto aplicações .NET são muito fáceis de engenharia reversa mesmo sem qualquer informação símbolo. Eu não me importaria de incluí-los em um projeto .NET.

Outras dicas

Você pode tentar usar dia2dump para olhar para o conteúdo.

Os ficheiros.pdb gerenciados conter as seguintes informações:

  • Os nomes de todas as variáveis ??locais
  • Os nomes de todos os arquivos de código fonte e o mapeamento de instruções IL em linhas dentro desses arquivos.

Tudo o resto está contida no próprio binário, incluindo os nomes de todos os tipos, membros e argumentos da função.

Fonte: arquivos PDB:. o que todo desenvolvedor deve saber

Os PDB-arquivos também incluir todos os comentários de seus arquivos de origem. Então, com E PDB-arquivo EXE é possível gerar um 1:.-1 cópia do seu código fonte original

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top