在考虑使用C++开发Windows Phone 7时,我遇到了这个帖子,其中提到:
什么是“可验证托管程序集”,在哪里可以了解更多信息?"...任何能够编译为可验证托管程序集(该可验证性要求也适用于所有依赖项!)的语言都可以用于WP7开发"
什么是“可验证托管程序集”,在哪里可以了解更多信息?"...任何能够编译为可验证托管程序集(该可验证性要求也适用于所有依赖项!)的语言都可以用于WP7开发"
可验证代码是指编译成中间语言(IL)的代码,可以证明它不会产生任何可以执行不安全代码、绕过代码访问安全检查或以任何方式破坏CLR状态的IL。确切的规则非常复杂。从一万英尺的高度来看,代码是用像VB.NET或C#这样的托管语言编写的,而且没有使用unsafe关键字。然而,在C#中可以编写不可验证的代码,而不使用unsafe关键字。例如,请参阅此答案。
有一个专门的工具可用于检查程序集,PEVerify.exe。它执行与JIT编译器和CLR执行的相同的检查。链接页面底部有关于验证的MSDN文章的链接。