反射器的开源替代品? [关闭]

假装没事ソ 提交于 2020-02-26 08:31:22

只是想知道是否有人知道RedGate的Reflector的 开源替代品? 我很想知道一个类似于Reflector的工具是如何工作的。

请注意,如果您知道Reflector的免费但开源替代方案,您可以回答以下相关问题:

摘要 - 2011年5月11日更新

快速汇总已建议的各种开源项目和工具:

  1. 通用编译器基础结构 (CCI)
  2. 单声道塞西尔
  3. ILSpy
  4. dnSpy (ILSpy的分支,项目看起来比原来更活跃)
  5. Dotnet IL编辑器(DILE)
  6. IL.View
  7. Monoflector (截至2011年4月不再有效

以下资源也可能是有意义的:

  • TypeView.cs
  • Jason Haley关于拆解.NET的说明
  • Adrian Bank最近的博客文章总结了许多Reflector的替代方案,包括下面没有提到的几个选项。
  • Mark Lichtenberg的详细博客文章将几个开源替代品(DILE,ILSpy和使用MonoDevelop的Mono Cecil)与Reflector进行了比较。

#1楼

好吧,Reflector本身是一个.NET程序集,所以你可以在Reflector中打开Reflector.exe来检查它是如何构建的。


#2楼

Reflector工具使用Reflection。 - 显然这是不正确的。

你问了两件事 - 代码显示了反射器的作用,也是反射器的替代品。

这是一个例子,比Reflector的内容简化得多,但它显示了反射技术: TypeView.cs

我没有关于开源Reflector替换的建议。


#3楼

我知道的两个选项。

  • CCI
  • 单声道塞西尔

这些不会给你C#。


#4楼

2011年12月13日更新

以下开源工具可用:


#5楼

实际上,我很确定Reflector被认为是具有一些反编译功能的反汇编程序。 反汇编程序,因为它从程序集的文件中读取字节并将其转换为汇编语言(在本例中为ILasm)。 它通过将IL解析为众所周知的模式(如表达式和语句)提供的Decompiler功能,然后将其转换为更高级别的语言,如C#,VB.Net等.Reflector的addin api允许您编写自己的语言翻译器,如果你希望...但是它如何将IL解析为表达树的魔力是一个严密保密的秘密。

如果你想了解IL反汇编程序是如何工作的,我建议你查看上面提到的三个方面中的任何一个:Dile,CCI和Mono都是这个东西的好来源。

我也强烈推荐获得Ecma 335规范和Serge Lidin的书。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!