欢迎来到 Dotnet 工具箱!在这里,你可以发现各种令人惊喜的开源项目!
什么是编译和反编译? .NET 中的编译是把开发人员写的 C# 代码转化为计算机可理解的代码的过程,也就是中间语言代码(IL代码)。在这个过程中,C# 源代码被转换为可执行文件(exe或者dll 文件)。
而反编译则和编译相反,它是把可执行文件的 IL 代码转换为源代码,这样可以对软件方便进行分析,理解以及修改。
下面介绍几个流行的 .NET 反编译工具。
ILSpy 是一个开源免费的反编译工具, 在 github 上面拥有 15k 的 star,用户非常多。
它可以反编译 C# ,支持整个项目的反编译,并且 ILSpy 已经支持集成在了 Visual Studio 开发工具中。
同时 ILSpy 也上架了微软应用商店。
Github:https://github.com/dnSpy/dnSpy
DnSpy 是一个开源免费的 .NET 反编译工具,它支持了 C#、VB、F# 代码等,同时支持 .NET Core 和 .NET Framework。
DnSpy 拥有现代化的 UI 界面,包含了蓝色、浅色和深色主题,颜值很高!
Github: https://github.com/dnSpy/dnSpy
dotPeek 可以把 .NET 程序集反编译为等效的 C# 代码,这个软件由 JetBrains 公司开发,软件是免费的并且功能非常丰富。
另外 dotPeek 也支持和 Visual Studio 一样的一组颜色主题。
这个软件还可以可视化查看程序集之间的依赖关系,非常方便!