1

我动态生成程序集并从这些程序集中调用方法。我同时使用视觉工作室和单声道。有时,我对 ILGenerator.Emit 做错了事,并在尝试调用方法时得到了InvalidProgramException 。

有什么办法可以得到错误的指令?

到目前为止,我必须使用 ILSpy 反汇编程序集并手动通过 IL,当生成的方法很简单时,这是可以的。

不幸的是,有时生成的方法包含数百条 MSIL 指令,并且很难识别错误。

我想知道是否有任何内置的东西可以帮助我。

不幸的是 peverify 不是很有帮助,因为我生成了不安全的代码(带有指针)。因此,我得到了这种错误:

非托管指针不是可验证的类型

此外,其中一些错误仅发生在单声道中,而不发生在 Visual Studio 中。

谢谢

4

0 回答 0