比 .NET Reflector 更好的东西?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/2646707/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Something better than .NET Reflector?
提问by Josh Stodola
I used to love .NET Reflector back in the day, but ever since Red Gate Software took over it has gone downhill dramatically. Now it forces me to update (which is absolutely ridiculous), half the time the update doesn't go smoothly, and it is increasingly hindering my productivity with each update. I am sick of it, and I am ready for something better. Is there a better disassembler?
过去我曾经很喜欢 .NET Reflector,但自从 Red Gate Software 接管它后,它就急剧下滑。现在它迫使我更新(这绝对是荒谬的),有一半的时间更新并不顺利,而且每次更新都越来越妨碍我的工作效率。我厌倦了,我已经准备好接受更好的了。有没有更好的反汇编器?
Update:
更新:
List of various alternatives mentioned in answers -
答案中提到的各种替代方案列表 -
回答by Druid
Also take a look at ILSpy by SharpDevelop. It's in early stages of development and they just made a release on the 24th of February. That in itself works pretty good for me. From their website:
还可以看看SharpDevelop 的 ILSpy。它处于开发的早期阶段,他们刚刚于 2 月 24 日发布。这本身对我来说效果很好。从他们的网站:
ILSpy is the open-source .NET assembly browser and decompiler.
Development started after Red Gate announced that the free version of .NET Reflector would cease to exist by end of February 2011.
ILSpy 是开源的 .NET 程序集浏览器和反编译器。
在 Red Gate 宣布 .NET Reflector 的免费版本将在 2011 年 2 月底停止存在之后,开发工作就开始了。
Update: JetBrains has released dotPeek, its free .NET decompiler.
更新:JetBrains 发布了 dotPeek,它的免费 .NET 反编译器。
Update 2: Telerik also has a free decompiler: JustDecompile.
更新 2:Telerik 还有一个免费的反编译器:JustDecompile。
回答by gor
JetBrains is going to add a decompiler to its ReSharper, and release a stand-alone decompiler too.
JetBrains 将在其 ReSharper 中添加一个反编译器,并发布一个独立的反编译器。
The good news is that we're preparing a standalone binary-as-a-source application, i.e. a decompiler + assembly browser to explore whatever .NET compiled code is legal to explore. We don't have any specific date for release, but it's going to be released this year, and it's going to be free of charge. And by saying “free”, we actually mean “free”.
好消息是我们正在准备一个独立的二进制源应用程序,即一个反编译器 + 汇编浏览器来探索任何合法的 .NET 编译代码。我们没有任何具体的发布日期,但它会在今年发布,而且是免费的。说“免费”,我们实际上是指“免费”。
Hereis more information.
这里有更多信息。
UPDATE:JetBrains has now released the product called dotPeekand it can be found here.
回答by adrianbanks
In my opinion, there are three serious alternatives to keep an eye on, all of which are free:
在我看来,有三个值得关注的严肃替代方案,所有这些都是免费的:
- ILSpy: This is from the same people who make the (also free) SharpDevelop IDE. As well as being free, it is also open source. An additional extension they are working on is the ability to debug decompiled code(something which the pro version of Reflector can do), which works surprisingly well.
- JustDecompile: A standalone decompiler from Telerik (announced today, currently in Beta).
- dotPeek: A standalone decompiler from JetBrains (available standalone as part of an EAP at the moment).
- ILSpy:这是来自制作(也是免费的)SharpDevelop IDE 的同一个人。除了免费,它也是开源的。他们正在开发的另一个扩展是调试反编译代码的能力(专业版的 Reflector 可以做到这一点),效果出奇地好。
- JustDecompile:来自 Telerik 的独立反编译器(今天宣布,目前处于 Beta 版)。
- dotPeek:来自 JetBrains 的独立反编译器(目前作为 EAP 的一部分独立提供)。
All of these approach the problem in slightly different ways with differing UIs. I would suggest giving them all a try and seeing which one you prefer.
所有这些都通过不同的 UI 以略有不同的方式解决问题。我建议大家都尝试一下,看看你更喜欢哪一个。
回答by akjoshi
Some others not mentioned here -
这里没有提到的其他一些 -
Mono Cecil: With Cecil, you can load existing managed assemblies, browse all the contained types, modify them on the fly and save back to the disk the modified assembly.
Kaliro: This is a tool for exploring the content of applications built using the Microsoft.Net framework.
Dotnet IL Editor (DILE): Dotnet IL Editor (DILE) allows disassembling and debugging .NET 1.0/1.1/2.0/3.0/3.5 applications without source code or .pdb files. It can debug even itself or the assemblies of the .NET Framework on IL level.
Common Compiler Infrastructure: Microsoft Research Common Compiler Infrastructure (CCI) is a set of libraries and an application programming interface (API) that supports some of the functionality that is common to compilers and related programming tools. CCI is used primarily by applications that create, modify or analyze .NET portable executable (PE) and debug (PDB) files.
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) 文件的应用程序使用。
回答by Hun1Ahpu
The .NET source code is available now.
.NET 源代码现已可用。
Or if you look for a decompiler, I was using DisSharper. It was good enough for me.
或者,如果您寻找反编译器,我使用的是DisSharper。这对我来说已经足够了。
回答by Jo?o Angelo
The latest version from Red Gate is 6.1. However the 5.1 version cannot automatically update to version 6 because there were changes to the Terms of Service, so instead you are redirected to the site to download the 6.1 version. This is mostly because of legal reasons as you can check in the following post:
Red Gate 的最新版本是 6.1。但是,5.1 版本无法自动更新到版本 6,因为服务条款发生了变化,因此您将被重定向到该站点以下载 6.1 版本。这主要是由于法律原因,您可以查看以下帖子:
Oi! What's going on with the .NET Reflector update mechanism?
After you manually update to 6.1 you will no longer experience any problems.
手动更新到 6.1 后,您将不再遇到任何问题。
回答by mookie
Instead of using the autoupdater, we just set the properties of the EXE file to read-only. That way it doesn't delete the file.
我们不使用自动更新程序,而是将 EXE 文件的属性设置为只读。这样它就不会删除文件。
回答by Graviton
I am not sure what you really want here. If you want to see the .NET framework source code, you may try Netmassdownloader. It's free.
我不确定你在这里真正想要什么。如果您想查看 .NET 框架源代码,您可以尝试使用Netmassdownloader。免费。
If you want to see any assembly's code (not just .NET), you can use ReSharper. Although it's not free.
如果您想查看任何程序集的代码(不仅仅是 .NET),您可以使用ReSharper。虽然不是免费的。
回答by Daniel Dolz
9Rays used to have a decompiler, but I haven't checked in a while. It was not free, I remember...
9Rays曾经有一个反编译器,但我有一段时间没有检查过。它不是免费的,我记得......
There is also a new one (at least for me) named Dis#.
还有一个新的(至少对我而言)名为 Dis#。

