C#的DLL反編譯


Reflector這個強大反編譯工具,我用的版本是7.4.1.193。圍繞Reflecto開發的插件也很非常多:

Reflector.FileDisassembler
Reflector.CodeMetrics
Reflector.SQL2005Browser
Reflector.DelphiLanguage
Reflector.McppLanguage
Reflector.ChromeLanguage
Reflector.Diff
Reflector.VisualStudio
Reflector.ClassView
Reflector.CodeModelView
Reflector.FileGenerator
Reflector.Graph
Reflector.OpenRunningAssembly


大家可以到Reflector官方網站(http://www.aisto.com/roeder/dotnet/)下載最新版本下載后解壓縮會用一個Reflector.exe直接雙擊它,就可以運行,
點擊file->open 選擇需要反編譯的DLL,打開后控件的命名空間會出現在左邊的列表中。
反編譯后的代碼和原代碼基本上沒有什么區別。

Reflector本身沒有將代碼導入到文件功能,需要用到相關插件,下面介紹一個插件用法及用途:
(1) Reflector.FileDisassembler和Reflector.FileGenerator這兩個插件的用的用途都是一樣的,將反編譯后的代碼導出到相關文件,這里只介紹Reflector.FileDisassemble的用法,Reflector.FileGenerator用法類似Reflector.FileDisassemble
下截地址: http://www.denisbauer.com/Download.aspx?File=Reflector.FileDisassembler.zip
(a) 啟動Reflector,點擊view---add-ins….. 選擇Reflector.FileDisassembler.dll (下載Reflector. FileDisassembler解壓后有這個文件)添加成功后,在tools菜單中會有file disassembler選項。
(b) 選擇需要導出的類再選擇toolsàfile disassembler 出現以下對話框。
(c) 在文本框中,輸入導出文件的目錄,然后點擊genrate生成文件。
(2) Reflector.VisualStudio插件,將Reflector工具嵌入到vs.net里.下載Reflector.VisualStudio后,將解壓后的文件和Reflector.exe放在一起,點擊Reflector.VisualStudio.exe,即可導入.這時我們運行vs.net,可以通過菜單欄里的"外部程序- Reflector"運行Reflector。


下截地址: http://www.testdriven.net/downloads/ReflectorVsAddin.zip

(3) Reflector.SQL2005Browser 添加方法同(1)該插件用來查看SQL Server 2005 (Yukon) database中的存儲集合.
下截地址: http://www.denisbauer.com/Download.aspx?File=Reflector.SQL2005Browser.zip

(4) Reflector.CodeMetrics插件,添加方法同(1)該插件用來分析.net assemblies 和顯示該組件的性能參數
下截地址: http://projectdistributor.net/GetFile.aspx?type=b&id=55

(5) Reflector.Graph插件添加方法同(1)該插件用來繪制集合的結構圖.
下截地址: http://projectdistributor.net/GetFile.aspx?type=b&id=56

我這里只介紹了五個插件的應用.有什么說的不對的,大家可以指出. 不過Reflector對那些防反編譯的好像就沒有辦法,僅僅使作這個工具是不行的,還需要更扎實的計算機基礎知識.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM