手里有个叫 ILSpy 的小工具,简直是给咱们这些天天跟 DLL 死磕的程序员准备的“后悔药”。它免费开源,最绝的是连安装步骤都省了,直接扔 U 盘里就能在任何电脑上跑,这便携程度简直是为那些到处出差或者电脑经常蓝屏的朋友量身定做的。以前遇到闭源的 .NET 程序,想看看里面到底写了啥,只能乖乖掏钱买 Reflector,现在好了,ILSpy 不仅能把 DLL 还原成 C# 或 VB 代码,连那些让人头大的 lambda 表达式、yield return 甚至 async/await 都能完美反编译出来,看着那行行代码从黑盒子里蹦出来,那种掌控感真的爽。它支持中文化界面,还能直接调试没有源码的程序集,这功能对于排查线上诡异 Bug 简直是救命稻草。虽然市面上工具不少,但 ILSpy 胜在轻量且强大,不仅能搜类型、看继承关系,还能把一堆 DLL 打包成项目文件一起反编译。最近版本更新支持了 C#8.0 的新特性,修复了不少导航报错的小毛病,感觉开发者们一直在用心维护。说实话,在这个闭源成风的年代,能遇到这么好用又完全免费的开源神器,真的得珍惜,它让咱们在理解别人代码时不再那么被动,毕竟看懂源码才是解决问题的根本,不是吗?

软件特色
1、反编译为C#
2、整个项目的反编译(csproj,不是sln!)
3、搜索类型/方法/属性(子字符串)
4、基于超链接的类型/方法/属性导航
5、基本/派生类型导航,历史记录
6、BAML到XAML反编译器
7、可通过插件(MEF)扩展
8、查看语言支持状态
ILSpy软件亮点
1、所有的对话框、菜单和提示均已中文化
2、预置了调试插件,支持在ILSpy中无源代码直接调试程序集
3、调整主程序编译平台为X86,以在64位系统中调试
4、支持C#和vb
5、可以将一个dll文件转换为C#或VB语言。
6、支持保存文件
7、对于单个文件可以保存为.cs文件或.vb文件,当文件较多时,可以选择保存为项目文件。
8、支持C#的反编译
9、C#语句可被反编译出来,并可支持yield return语句和 lambdas表达式的反编译。并且支持C# 5.0 中的"async"
软件功能
1、新语言功能
C#8.0:可为空的引用类型
C#7.3:unmanaged一般约束
C#7.3索引可移动固定缓冲区:无需先固定即可将固定缓冲区索引到。
使用不安全的内在函数表示无法用C#表示的IL操作。
C#7.0 广义异步返回类型
C#7.0 本地功能(#1586)
C#7.0 抛出表达式(#1600)
2、新功能
反编译一套组件到的溶液(#1550由@dymanoid)。
新的BAML反编译器。
用于Microsoft Store的MSIX:@onovotny添加了构建支持(包括Azure Pipelines)。
如果某个方法被标识为Windows Forms InitializeComponent,则生成与VS Windows Forms Designer兼容的代码。
添加了新RemoveDeadStores选项。
添加了新AlwaysShowEnumMemberValues选项。
更新日志
v10.0.1.8346版本
错误修复
修复#3723:导航到元数据->表->00模块节点时出现InvalidCastException
修复#3718:单击01 TypeRef表中的ResolutionScope链接时,当前行不正确
修复#3711:选择“加载…”节点时出现InvalidCastException
修复#3703:主构造函数是公共的
增强
#3715:添加编译器选项。使用Roslyn4_14_0
#3713:使用带有回退的releaseTag下载updates.xml中的URL
#3695: .NET 11测试版































共有 0条评论