Mono.CecilでVB.NETアセンブリを書き直した後、Visual Studio 2010の 'Call Stack'デバッグウィンドウでは、VB.NETではなくC#として言語が表示されます。 Mono.Cecilを構成してアセンブリを書き直して、デバッガが書き換えられたアセンブリをVB.NETとして認識できるようにすることは可能ですか?Mono.CecilはデバッグシンボルをVB.NETとして書き換えることができますか?
次のMono.Cecilは、変更を加えずに単にアセンブリを読み取り、保存します。ただし、デバッガはVB.NETではなくC#として新しいアセンブリを読み取ります。
Dim readerParameters = New ReaderParameters() With {.ReadSymbols = True}
Dim writerParameters = New WriterParameters() With {.WriteSymbols = True}
Dim appToRewrite = AssemblyDefinition.ReadAssembly(
appToRewriteExe,
readerParameters
)
appToRewrite.Write(appToRewriteExe, writerParameters)
デバッグウィンドウ「ローカル」と「イミディエイトウィンドウ」はVB.NETのバージョンではなく、C#のバージョンになるように書き換えアセンブリがVB.NETをされることが望ましいです。
興味深い。これがF#のようなすべての言語で起こるのだろうかと思います。 – Gabe