存在哪些CLR/.NET字节码工具?

存在哪些CLR/.NET字节码工具?,.net,clr,bytecode,il,.net,Clr,Bytecode,Il,我非常了解用于操作、生成和反编译JVM字节码的Java工具(ASM、cglib、jad等)。CLR字节码有哪些类似的工具?人们对CLR进行字节码操作吗 记住。反射器总是好的,但是Mono.Cecil是你可能要求的最好的工具。它对于以任何方式操作CIL都是非常宝贵的。字节码是一种二进制格式。NET程序集在存储执行指令的方式上有很大的不同 NET语言不是编译成类似字节码的结构,.NET语言被编译成一种中间语言(实际上,它被称为--IL) 这是一种人类可读的语言,看起来有点像面向对象的汇编语言 因此,

我非常了解用于操作、生成和反编译JVM字节码的Java工具(ASM、cglib、jad等)。CLR字节码有哪些类似的工具?人们对CLR进行字节码操作吗

记住。

反射器总是好的,但是Mono.Cecil是你可能要求的最好的工具。它对于以任何方式操作CIL都是非常宝贵的。

字节码是一种二进制格式。NET程序集在存储执行指令的方式上有很大的不同

NET语言不是编译成类似字节码的结构,.NET语言被编译成一种中间语言(实际上,它被称为--IL)

这是一种人类可读的语言,看起来有点像面向对象的汇编语言

因此,就检查或操作单个部件的IL而言,Reflector和ILDASM等工具允许您方便地查看任何部件的IL

操纵有点不同,我建议看一下.NET空间中的一些AOP工具。我还建议看一下Phoenix,这是微软正在进行的一个编译器项目。它有一些非常酷的编译后操作特性

如果您想了解更多关于.NETAOP工具的信息,我建议您提出另一个问题(这是一大堆蠕虫)

还有几本书会教你IL的来龙去脉。这不是一门非常复杂的语言。

是像ASM一样的好工具。这是Mono的一个子项目,完全开源。它甚至提供了比系统反射更多的功能

允许您进行.NET程序集静态分析(代码度量、依赖关系分析等)。NDepend对于使用依赖关系矩阵、依赖关系图和树状图度量来获得.NET程序集结构的概述非常有用


它还与Reflector集成:例如,您可以分别使用类型/方法(类似于Google Page Rank的代码度量)检测程序集中的重要类型和方法,并直接从NDepende跳转到Reflector以获取C#、VB.NET等中的反汇编代码

NET程序集在存储执行指令的方式上有很大的不同“不,它们不是……所有的东西最终都被编译成“二进制格式”。这种二进制格式与IL有1对1的对应关系。