InvalidProgramException:识别错误指令

时间:2016-07-12 13:44:40

标签: c# cil reflection.emit invalidprogramexception

我动态生成程序集并从这些程序集中调用方法。 我同时使用visual studio和mono。有时,我对ILGenerator.Emit做错了,在尝试调用方法时得到InvalidProgramException

有没有办法得到错误的指令?

到目前为止,我必须用ILSpy反汇编程序集并手动浏览IL,这在生成的方法很简单时就可以了。

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

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

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

  

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

此外,其中一些错误只发生在mono,而不是在visual studio中。

由于

0 个答案:

没有答案