“ Visual Studio无法加载文件或程序集。释放模式下不支持操作”错误


67

我在C#中有一个使用两个外部dll文件的小项目。一个是Redmine.Net.Api.dll,另一个是NLog.dll。我使用的是Visual Studio2010。我将这两个文件都添加为对我的项目的引用。问题是,当我在Debug模式下运行项目时,它会编译,但是当我切换到Release时,它说:

错误1无法加载文件或程序集'file:/// C:\ project \ lib \ Redmine.Net.Api.dll'或其依赖项之一。不支持该操作。(来自HRESULT的异常:0x80131515)C:\ project \ SGEN项目

我怎样才能解决这个问题?


您是否Redmine.Net.Api从网上下载了dll?
MusicLovingIndianGirl 2014年

@AishvaryaKarthik,是的,我做到了
svz 2014年

7
然后右键单击它,然后选择“取消阻止”。由于某些原因,它可能已被解除阻止。
MusicLovingIndianGirl 2014年

Answers:


205

您是否从网上下载了Redmine.Net.Api dll?如果是,则使用Windows资源管理器浏览到它,右键单击它并选择属性。在那里,您应该点击“取消阻止”。由于某些原因,它可能已被阻止。

在此处输入图片说明


5
就我而言,我还必须从文件中删除“只读”属性。只有这样,“解锁”按钮才真正对我有用。
Ekus 2014年

1
遇到同样的问题,应用程序阻止了程序集,并提出了此vage错误。非常感谢您:)
Mario

2
可能需要说的是,您需要在Windows资源管理器而不是Visual Studio中右键单击该文件。c [_]
Mario Tacke 2014年

1
这节省了我很多时间...谢谢。我在Newtonsoft.JSON中遇到了类似的问题
littlevahn 2015年

1
在PowerShell中加载程序集时遇到了同样的错误。我能够使用Unblock-Filecmdlet解除阻止我需要的所有程序集。请注意,必须先重新启动PowerShell,才能Add-Type使程序集生效!
培根钻头

3

发现与此有关的两项:说是检查文件是否被阻止(其中一些更改为app.config),另一项是对项目文件进行更改。希望这可以帮助。

链接1

链接2


2
感谢您的回答!这里的第一个链接确实提供了必需的灵魂。我接受@Aishvarya的回答,因为它是早些时候作为评论提供的。
svz 2014年

1

我在这篇文章接受的答案之后找到了解决此问题的方法

使用FuseLogVw跟踪程序在哪里中断以及如何中断。该应用程序有一个包含大量痕迹的表。找出故障应用程序在哪里被调用,并找出问题所在。


1

这是我在发布模式下调试远程代码时发生的。将其更改为调试模式并修复。


0

<loadFromRemoteSources enabled="true" />如下所示,将其添加到您的app.config文件中。

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <runtime>
        <loadFromRemoteSources enabled="true" />
    </runtime>
    ...
</configuration>
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.