2

C#コードがあり、ソースC#exeアセンブリの逆アセンブルを行うときに、CIL(* .il)にカスタムコメントを含める必要があります。

どうすればそれを達成できますか?

4

2 に答える 2

4

アセンブルされたILオペコードにはコメントが含まれていないため、逆アセンブルしてコメントを取得することはできません。基本的にこれはできません。ILソースを共有するか、生のILソースに対してpdbが可能かどうかを調査します。

「コメント」オペコードはありません。

于 2012-10-13T11:07:14.103 に答える
1

を使用して任意のILオペコードを書き出すことができますILGenerator.Emitが、コメントを挿入するためのサポートはないと思います。

デバッグ目的でこれを実行したい場合(たとえば、検索を容易にするため)、説明的な名前の未使用の変数をいつでも追加できます。例えば:

void Main()
{
    var a = new A();    
}

class A
{
    bool this_is_a_comment = false;
}

収量

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    
于 2012-10-13T10:08:13.583 に答える