我有一个项目,我试图从一个离开(离开)我公司的人那里解决。他违反了软件工程的每一个基本原则,不使用源代码控制,在做出更多更改之前不备份源代码等等。是否有可以在Visual Studio 6上运行的反编译器C++
我需要对字段中的应用程序进行更改,没有原始的源代码,但我有一个可执行文件。我需要的是一个反编译器,它将反编译Visual Studio 6 C++应用程序并为我提供某种类型的源代码。任何人有任何想法.....
我有一个项目,我试图从一个离开(离开)我公司的人那里解决。他违反了软件工程的每一个基本原则,不使用源代码控制,在做出更多更改之前不备份源代码等等。是否有可以在Visual Studio 6上运行的反编译器C++
我需要对字段中的应用程序进行更改,没有原始的源代码,但我有一个可执行文件。我需要的是一个反编译器,它将反编译Visual Studio 6 C++应用程序并为我提供某种类型的源代码。任何人有任何想法.....
那么有从十六进制霞光闪客:http://www.hex-rays.com/decompiler.shtml
这是一个事实,即它正在创建从汇编的C代码,但它的工作原理相当不错不错。这也是非常昂贵的
编辑:另外注意它是结合IDA Pro从他们非常着名的反汇编。这已经可以向你展示与反编译器结合的大量信息,它更容易反转代码。
+1 IDA Pro + Hexrays更糟,因为它利用了win32的知识来帮助反编译并提供更好的代码。 – 2010-10-13 22:10:53
昂贵,但如果它做得好,这可能是值得的。我不明白为什么ARM版本比x86版本多1美元(或1欧元)? – 2010-10-14 01:01:31
在德语里会有一个很好的笑话:'Die wollen uns wohl auf den ARM nehmen'不幸的是,它翻译得不太好。我能想象的唯一原因是他们想表明这不包括在内,而且两者的价格都不一样。 (只是一个疯狂的猜测) – Vinzenz 2010-10-14 01:05:04
反编译到什么 - 汇编?
没有任何东西会给你从EXE有意义的C。
正如Vinzenz指出的 - 至少有一种产品可以做到这一点(公平 - 我不希望生成的代码与原始C++源代码一样有意义)。 – 2010-10-13 22:06:32
@Doc Brown:在分析变量和函数名称并写出注释之后,您可以从中获得很多变体和函数名称。只需在链接的页面上观看简短的反编译演示。但它当然不会像原来的那样,但基本上只是'翻译失败';-)但它仍然能够产生惊人的效果。 – Vinzenz 2010-10-13 22:13:59
这是非常令人印象深刻的(至少对于它们显示的示例),反编译器曾经比阅读asm – 2010-10-13 23:15:13
我已经使用RecStudio(rec22)和IDAPro来尝试和反编译一个C++项目,它们可能不会足以完成我所做的工作,除非我制定了该程序基于的演示项目所以他们给出了足够的信息,我可以再次做出类似于相同的项目。
最后我做的另一件事是编译我认为匹配的代码,并检查我在反编译器中得到了相同的结果。
祝你好运。
你有没有想过使用21世纪的编译器? – AshleysBrain 2010-10-13 22:20:16
理解反编译的程序通常不是一项简单的任务。如果源代码完全丢失,重写程序(并使用适当的源代码管理)可能更有价值,而不是试图对现有可执行文件进行反向工程。特别是如果这是贵公司在可预见的将来需要维护的计划,那么应该考虑这一点。 – TheUndeadFish 2010-10-13 22:34:06
如果你的公司没有资源,不要责怪程序员,如果他还在你的公司,就责怪他的前任老板! – 2010-10-13 22:46:05