.net &引用;无法加载文件或程序集或其依赖项之一。访问被拒绝。”;

.net &引用;无法加载文件或程序集或其依赖项之一。访问被拒绝。”;,.net,.net,我正在尝试调试以下异常:- System.IO.FileLoadException:无法 加载文件或程序集“My.assembly”, 版本=1.0.0.0,区域性=中性, PublicKeyToken=………'或其 依赖关系。访问被拒绝 代码是在COM服务中模拟的,但程序集存在于应用程序目录中,并且模拟用户对其具有读取权限。Fusion没有记录程序集的任何内容,procmon也没有提到文件或任何拒绝访问事件。除了DLL本身的权限之外,是否还有其他原因导致程序集加载失败,如上所述 (顺便说一句,

我正在尝试调试以下异常:-

System.IO.FileLoadException:无法 加载文件或程序集“My.assembly”, 版本=1.0.0.0,区域性=中性, PublicKeyToken=………'或其 依赖关系。访问被拒绝

代码是在COM服务中模拟的,但程序集存在于应用程序目录中,并且模拟用户对其具有读取权限。Fusion没有记录程序集的任何内容,procmon也没有提到文件或任何拒绝访问事件。除了DLL本身的权限之外,是否还有其他原因导致程序集加载失败,如上所述


(顺便说一句,这不是一个web应用程序。)

确保您有权访问程序集及其所需的所有程序集


另一个问题是,如果它正在寻找的程序集假定它在GAC中,那么它可能无法找到它。如果是这种情况,您通常可以通过将程序集复制到需要它的进程所在的位置来绕过它。

如果您使用的是
Visual Studio 2012
,请关闭VisualStudio并重新打开它。这可能是一个糟糕的解决方案,但它对我有效。

这是一个“单击一次”应用程序吗?有人对文件有写锁定吗?不是单击一次。另一个应用程序有一个句柄作为加载的程序集,所以我猜它是只读的。