4

在进行构建时,我在 Visual Studio 2005 中收到以下错误:

错误 9 无法注册程序集“E:\CSharp\project\Some.Assembly.dll” - 访问被拒绝。访问被拒绝。(来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))项目

它只是间歇性地发生,并且如果我重新启动 IDE 就会消失,但是这非常烦人,如果可以的话,我想永久阻止它发生。我检查了程序集本身,它没有设置为只读,所以我不知道为什么 Visul Studio 会锁定它。我正在调试模式下工作。

我环顾了谷歌,但除了“重启VS”之外似乎找不到任何东西。有人对我如何解决这个烦人的问题有任何建议吗?

4

2 回答 2

4

听起来你有一个不时被锁定的 DLL,防止 VS 覆盖/锁定它。您是否尝试过使用 Process Explorer ( http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx ) 或 Unlocker ( http://www.emptyloop.com/unlocker/ ) 等工具来查看是什么锁定DLL?特别是 Unlocker 为我节省了很多时间。

如以下评论中所述(感谢Jeff),您还可以从 Process Explorer 中终止单个锁。

于 2008-09-17T08:20:18.080 回答
0

这可能是由于 Visual Studio 需要 Windows 7 或更高版本的管理员权限造成的。要检查,请查看是否设置了下面提到的注册表项。如果没有,请复制到 a.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"
于 2018-11-05T10:45:12.137 回答