ILSpy是一款开源的.NET程序反编译工具,由SharpDevelop团队开发,常被视为商业工具.NET Reflector的替代方案。它能够将已编译的程序集还原为可读的C#或IL代码,且在某些情况下,处理加密程序集的能力优于Reflector。该工具基于.NET Framework 4.0运行,界面风格与Reflector相似,易于上手。

1、 界面左侧以树形结构展示程序集及其类型,右侧显示对应的源代码
2、 基础反编译功能与Reflector不相上下,甚至对部分加密程序集也能成功反编译
3、 当前支持将代码反编译为C#和IL语言,暂不支持VB输出
4、 如需查看.NET框架自带程序集,可通过菜单File—Open from GAC直接加载
- 在选中某个类型后,File—Save Code可将该类型的反编译结果保存为单个文件
- 在选中整个程序集时,Save Code会生成一个包含所有类型的项目文件(.csproj)
- 保存功能对代码整理和二次开发十分实用,避免手动复制粘贴
- 调试功能以插件形式存在,需确保ILSpy.Debugger插件已启用
- 对于可执行文件(EXE),可选用Debug an executable方式启动调试
- 对于动态库(DLL),可选用Attach to running application附加到运行中的进程
- 调试操作与Visual Studio类似,支持Step into、Step over和Continue,状态栏会提示就绪、运行中或调试中
- 调试时也可查看IL代码层面的执行情况,有助于深入理解底层逻辑
- 调试经过编译器优化的代码时,监视窗口可能无法获取某些变量的值,官方推荐使用Debug an executable方式
- ILSpy不生成PDB文件,且无法调试ASP.NET Web应用或Web服务
- 该工具尤其适合学习IL代码和程序集内部机制,以及替代已停止免费版的Reflector进行日常反编译任务
(您的评论需要经过审核才能显示)
0条评论