过去我曾经很喜欢 .NET Reflector,但自从 Red Gate Software 接手后,它就急剧走下坡路。现在它迫使我更新(这绝对是荒谬的),有一半的时间更新不顺利,而且每次更新都越来越妨碍我的工作效率。我已经厌倦了,我已经准备好迎接更好的事情了。有没有更好的反汇编程序?
更新:
答案中提到的各种替代方案列表 -
还可以看看SharpDevelop 的 ILSpy。它处于开发的早期阶段,他们刚刚在 2 月 24 日发布。这本身对我来说效果很好。从他们的网站:
ILSpy 是开源的 .NET 程序集浏览器和反编译器。
在 Red Gate 宣布 .NET Reflector 的免费版本将在 2011 年 2 月底停止存在之后,开发开始了。
更新:JetBrains 发布了 dotPeek,它的免费 .NET 反编译器。
更新 2:Telerik 还有一个免费的反编译器:JustDecompile。
在我看来,有三个值得关注的严肃选择,所有这些都是免费的:
所有这些都以略微不同的方式使用不同的 UI 解决问题。我建议给他们一个尝试,看看你更喜欢哪一个。
其他一些这里没有提到——
Mono Cecil:使用 Cecil,您可以加载现有的托管程序集,浏览所有包含的类型,即时修改它们并将修改后的程序集保存回磁盘。
Kaliro:这是一个用于探索使用 Microsoft.Net 框架构建的应用程序内容的工具。
Dotnet IL Editor (DILE):Dotnet IL Editor (DILE) 允许在没有源代码或 .pdb 文件的情况下反汇编和调试 .NET 1.0/1.1/2.0/3.0/3.5 应用程序。它甚至可以在 IL 级别调试自身或 .NET Framework 的程序集。
通用编译器基础结构:Microsoft Research 通用编译器基础结构 (CCI) 是一组库和一个应用程序编程接口 (API),它支持编译器和相关编程工具所共有的一些功能。CCI 主要由创建、修改或分析 .NET 可移植可执行 (PE) 和调试 (PDB) 文件的应用程序使用。
Red Gate 的最新版本是 6.1。但是 5.1 版本无法自动更新到版本 6,因为服务条款发生了变化,因此您将被重定向到该站点以下载 6.1 版本。这主要是由于法律原因,您可以查看以下帖子:
手动更新到 6.1 后,您将不再遇到任何问题。
我们没有使用自动更新程序,而是将 EXE 文件的属性设置为只读。这样它就不会删除文件。
我不确定你在这里真正想要什么。如果您想查看 .NET 框架源代码,您可以尝试Netmassdownloader。免费。
如果您想查看任何程序集的代码(不仅仅是 .NET),您可以使用ReSharper。虽然不是免费的。
9Rays曾经有一个反编译器,但我有一段时间没有检查。不是免费的,我记得...
还有一个新的(至少对我而言)名为 Dis#。