??
??
? 編譯和反編譯??
.NET 中的編譯是把開發人員寫的 C# 代碼轉化為計算機可理解的代碼的過程,也就是中間語言代碼(IL代碼)。在這個過程中,C# 源代碼被轉換為可執行文件(exe或者dll 文件)。

反編譯則和編譯相反,它是把可執行文件的 IL 代碼轉換為源代碼,這樣可以對軟件方便進行分析,理解以及修改。

下面是幾個流行的 .NET 反編譯工具。
? Ildasm.exe??
Ildasm.exe 是一個免費的反編譯工具,當您安裝了 Visual Studio 開發工具之后,Ildasm.exe 會自動安裝。
你可以在下面的目錄中找到這個工具。
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin

? IlSpy .NET??
ILSpy 是一個開源免費的反編譯工具, 在 github 上面有 15k 的 star。
可以反編譯 C# ,包括整個項目的反編譯,并且 ILSpy 支持集成在 Visual Studio 開發工具中。

另外 ILSpy 也上架了微軟應用商店。

Github:https://github.com/dnSpy/dnSpy
? DnSpy??
DnSpy 也是一個開源免費的 .NET 反編譯工具,支持 C#、VB、F# 代碼等,支持 .NET Core 和 .NET Framework。
DnSpy 擁有現代化的 UI 界面,包括藍色、淺色和深色主題。
Github: https://github.com/dnSpy/dnSpy
? JetBrains dotPeek??
dotPeek 可以把任何 .NET 程序集反編譯為等效的 C# 代碼,由 JetBrains 公司開發,軟件是免費的并且功能豐富。

同時 dotPeek 也支持和 Visual Studio 一樣的一組顏色主題。

還可以可視化查看程序集之間的依賴關系。

END
做了一個 .NET 的學習網站,內容涵蓋了分布式系統,數據結構與算法,設計模式,操作系統,計算機網絡等,以及工作推薦和面試經驗分享,歡迎來撩。
回復 dotnet 獲取網站地址。
回復 面試題 獲取 .NET 面試題。
回復 程序員副業?獲取適合程序員的副業指南。