首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将注释写入CIL

将注释写入CIL
EN

Stack Overflow用户
提问于 2012-10-13 17:22:38
回答 2查看 307关注 0票数 2

我有一个C#代码,当我反汇编一个源C#可执行程序集时,我希望CIL (*.il)包含我的自定义注释。

我该如何实现它?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-13 19:07:14

汇编的IL操作码不包含注释,因此不能反汇编和提取注释。基本上,你不能这样做。共享IL源,或者调查原始IL源的pdb是否可能。

没有"comment“操作码。

票数 4
EN

Stack Overflow用户

发布于 2012-10-13 18:08:14

您可以使用ILGenerator.Emit编写任意的IL操作代码,但我不认为有任何对注入注释的支持。

如果你只是为了调试目的而这样做(例如,为了使搜索更容易),你总是可以添加一个带有描述性名称的未使用的变量。例如:

代码语言:javascript
复制
void Main()
{
    var a = new A();    
}

class A
{
    bool this_is_a_comment = false;
}

收益率

代码语言:javascript
复制
IL_0001:  newobj      UserQuery+A..ctor
IL_0006:  stloc.0     

A..ctor:
IL_0000:  ldarg.0     
IL_0001:  ldc.i4.0    
IL_0002:  stfld       UserQuery+A.this_is_a_comment
IL_0007:  ldarg.0     
IL_0008:  call        System.Object..ctor
IL_000D:  nop         
IL_000E:  ret    
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12871747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档