C#的应用也比较多,有时候,我们想要研究一下别人的优秀的项目,可能会借助一些非常规手段来学习。下面,我就分享几款开源的C#反编译工具。
dnSpy 是一个用C#开发,开源的调试器和.NET 汇编编辑器。 即使您没有任何可用的源代码,也可以使用它来编辑和调试程序集。
源码地址:https://Github.com/dnSpy/dnSpy.git
ILSpy 是基于MIT协议开源的 .NET 程序集浏览器和反编译器,通过ILSpy反编译工具用户能够在ILSpy中无源代码直接调试程序集,还能够将单个文件保存为.cs文件或.vb文件。再结合开源插件Reflexil,还可以实现简单的编辑能力
源码地址:https://github.com/icsharpcode/ILSpy.git
插件源码地址:https://github.com/sailro/Reflexil.git
除了上面这个两个强大的工具外,还有其他的反编译工具,如JetBrains dotPeek、Telerik JustDecompile、.NET Reflector等。一般的程序,我们可以通过这些工具来探索、学习。但是安全意识比较强的产品,会通过混淆加密等方式来加固自己的应用,使难度增加。