我试图在 MSI 安装例程期间从 C # 程序中的资源流动态加载一些(购买的)程序集,但我得到“无法验证的代码失败的策略检查”。
我在网上阅读了一些关于使用 / clr:safe 编译嵌入式程序集的提示,但是我没有这个选项。
谢谢
加载无法验证的代码的唯一方法是从完全信任进程(或可能是应用程序域)与验证禁用。
它已经太晚了,但它可能会帮助别人。
我在我的项目中使用了Sqlite DLL,当我在沙箱环境中部署代码时,我得到了异常(见下文)
[FileLoadException: Unverifiable code failed policy check. (Exception from HRESULT: 0x80131402)]
[FileLoadException: Could not load file or assembly 'System.Data.SQLite, Version=1.0.79.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139' or one of its dependencies. Unverifiable code failed policy check. (Exception from HRESULT: 0x80131402)]
我在 web.config 文件中的 system.web 中添加了trust level及其工作正常。
<trust level="Full|High|Medium|Low|Minimal" originUrl="url"/>
这可能不再相关,但我最近遇到了同样的问题。如果您将流并将其粘贴在临时文件中,则可以使用 Assembly.LoadFrom 加载程序集。
本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处
评论列表(63条)