【问题标题】:Could not load file or assembly Operation is not supported. (Exception from HRESULT: 0x80131515)无法加载文件或程序集 不支持操作。 (来自 HRESULT 的异常:0x80131515)
【发布时间】:2016-03-27 19:33:12
【问题描述】:

当我通过 vstest.console.exe 从计划任务中的小型控制台工具运行 CodedUI 测试时,有时我会在不同的 PC 上看到此错误消息:

错误:无法加载文件或程序集 'file:///C:\foobar.dll' 或 它的依赖项之一。不支持操作。 (例外来自 HRESULT: 0x80131515)

为什么/什么不支持?

【问题讨论】:

    标签: .net visual-studio-2012 scheduled-tasks coded-ui-tests


    【解决方案1】:

    在我的研究中,我发现this may happen when you downloaded a test in a ZIP from the internet and the advice was to unblock the ZIP。但是我通过网络将文件从我的开发者系统复制到了测试 PC 并且文件没有被阻止。

    搜索更多错误代码0x80131515I found this answer in the MSDN forum

    所以我编辑了文件

    C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe.config

    并在运行时标签下添加了条目<loadFromRemoteSources enabled="true" />,瞧,测试运行良好,没有任何计划任务的问题。

    也许这有助于其他也遇到这个奇怪问题的用户。

    【讨论】:

    • 在 vs 10.0 中哪里可以找到这个配置文件?
    • @user3373603 你检查过“C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe.config”吗?但我不确定 VS2010 是否已经有该文件。我认为这里只包含旧的 mstest.exe,所以编辑“C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe.config”
    • 不起作用,但 Raj 给出的答案非常有效。
    • @Bravo 下次阅读正确,我还发布了解锁 zip 是 1 解决方案 facepalm
    【解决方案2】:

    右键单击 Dll 并取消阻止它。

    【讨论】:

    • 正如我在回答中提到的,这是一个可能的原因,但不适用于我。文件是通过 USB 驱动器/网络复制的,而不是从 Internet 下载的。
    • 我因此而挠头。谢谢。
    • @karliwson 下一次,阅读我发布的答案“在我的研究中,我发现当您 从 Internet 下载 ZIP 中的测试并且建议取消阻止 ZIP 时可能会发生这种情况 而不仅仅是找图片
    • 天哪。几个小时以来,我一直在努力解决我的问题。就是这样。谢谢。
    • 如果您有 ZIP 文件中有多个 DLL,您可以在解压缩之前对该 ZIP 文件使用 unblock。然后,您不必单独解锁每个 dll。
    【解决方案3】:

    如前所述,从不受信任的站点下载 Zip 文件时会被阻止。如果您确信该站点是可靠的,您可以通过将其添加到 Internet Explorer -> 工具菜单 -> Internet 选项 -> 安全选项卡 -> 受信任的站点 中的受信任站点列表来防止这种行为。未来的下载不会被标记为被阻止。

    对于已经解压的被阻止文件,在 Powershell 提示符下运行此命令以解除阻止当前文件夹和子文件夹中的所有文件:

    Get-ChildItem *.* -Recurse | Unblock-File
    

    【讨论】:

    • 谢谢,其他选项会带来安全风险。由于为我下载的文件来自 OneDrive,这太通用而无法允许。由于为不良做法打开了大门,我觉得使用远程资源并不安全。这个 PS 脚本解决了所有问题。
    【解决方案4】:

    1) 进入exe文件点击属性

    2) 点击解锁按钮

    这样就可以了

    【讨论】:

      【解决方案5】:

      对我来说,我需要在应用程序设置中设置启动对象。

      在解决方案资源管理器中右键单击项目名称。单击属性。转到应用程序选项卡,从启动对象下拉列表中选择正确的方法。

      我的没有设置,导致间歇性编译错误。

      【讨论】:

        猜你喜欢
        • 2014-10-08
        • 2011-03-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多