我有一個項目,我試圖從一個離開(離開)我公司的人那裏解決。他違反了軟件工程的每一個基本原則,不使用源代碼控制,在做出更多更改之前不備份源代碼等等。是否有可以在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