Pergunta

Eu tenho um programa em que eu perdi o código fonte C ++. Há algum decompilers boa C ++ lá fora?

Eu já corri em toda Boomerang .

Foi útil?

Solução

Você pode usar IDA Pro por Hex-Rays . Você normalmente não terá boa C ++ a partir de um binário a menos que você compilado em informações de depuração. Prepare-se para passar um muito do trabalho manual reverter o código.

Se você não tira os binários há alguma esperança como IDA Pro pode produzir código C-alike para você trabalhar. Normalmente, é no entanto muito difícil, pelo menos quando eu usei um par de anos atrás.

Outras dicas

informação é descartado no processo de compilação. Mesmo que um decompiler poderia produzir o código equivalente lógico com classes e tudo (ele provavelmente não pode), a parte de auto-documentando está desaparecido no código de liberação otimizado. Não há nomes de variáveis, há nomes de rotina, há nomes de classe -. Apenas endereços

Sim, mas nenhum deles conseguirá produzir um código bastante legível para a pena o esforço. Você vai gastar mais tempo tentando ler a fonte compilado com blocos de assembler para dentro, do que reescrever seu aplicativo de idade a partir do zero.

Eu não vi nenhum decompilers que geram código C ++. Eu vi algumas experimentais que fazem uma tentativa razoável no código C gerando, mas eles tendem a ser dependente de combinar os padrões de geração de código de um compilador particular (que pode ter mudado, já faz algum tempo desde a última vez olhei para isso ). É claro que qualquer informação simbólica será ido. Google por "decompiler".

Dependendo de como grande e como bem-escrito o código original, pode valer a pena começar de novo na sua língua favorita (que ainda pode ser C ++) e aprender com os erros cometidos na última versão. não uma vez alguém dizer sobre a escrita de um para jogar fora?

NB. Claramente, se este é um grande produto, então ele pode não valer a pena o tempo.

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