在使用Visual Studio 2005构建解决方案时出现访问被拒绝的错误。

4
我在使用Visual Studio 2005进行编译时,遇到了以下错误:
“错误9:无法注册程序集“E:\CSharp\project\Some.Assembly.dll”-拒绝访问。访问被拒绝。(来自 HRESULT:0x80070005(E_ACCESSDENIED))”
这种情况只是偶尔发生,如果我重新启动IDE就可以解决,但这非常令人恼火,如果可能的话,我想永久地阻止它发生。我已经检查了程序集本身,并且它没有设置为只读,所以我不知道为什么Visul Studio会锁定它。我正在Debug模式下工作。
我在谷歌上搜索了一下,但似乎除了“重新启动VS”之外,找不到其他解决方法。有人有任何建议吗?
2个回答

5

刚刚安装了Unlocker,它说没有找到锁定句柄。Process Explorer显示devenv.exe在Local Settings\Application Data\Microsoft\VisualStudio\8.0\ProjectAssemblies\jl-s2cov01\Some.Assembly.dll中打开了dll文件,所以可能是这个原因。 - Stuart Grassie
尝试删除dll,让Unlocker去解决它(除非它无论如何都将被重建,否则您不必真正删除它)。它会给你选择什么也不做的选项。 - Raithlin
3
请注意,你也可以在“进程资源管理器”中杀死单个锁定进程。你试过了吗? - Jeff Atwood

0

这可能是由于Visual Studio在Windows 7或更高版本上需要管理员权限所导致的。要检查,请看下面提到的注册表键是否已设置。如果没有,请复制到一个.reg文件并合并。一定要确保在.reg文件中检查您的Visual Studio 2005安装路径是否正确!

Windows Registry Editor Version 5.00

; Run Visual Studio 2005 with administrator rights
; This is required to run / debug the program directly from the IDE
[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers]
"C:\\Program Files (x86)\\Microsoft Visual Studio 8\\Common7\\IDE\\devenv.exe"="~ RUNASADMIN"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接