我使用的是Visual Studio 2005。在先从版本控制中获取代码后, c#.net应用程序正常运行。但是,在做了一些修改后,当我建立我得到以下错误:

错误383无法复制文件“..\root\leaf\Bin\Debug\test.Resources.xml”到 “本\调试\ test.Resources.xml”。访问路径“Bin\Debug\test.Resources.xml”是 否认。li.rollmodel

有人知道为什么会出现这个问题吗?

编辑我可以看到我的整个项目源代码文件夹是只读的,我无法删除只读属性。

首先,有人能告诉我如何删除这个文件夹的只读属性吗?我尝试删除它,但只读属性仍然存在。我也从版本控制方面尝试过,但也没有成功。


当前回答

这在Visual Studio 2017中再次出现,在这种情况下,原因是应用程序洞察过程ServiceHub.DataWarehouseHost.exe。

线程警告MSB3026中讨论了一个解决方案:无法复制“obj\Debug\netcoreapp1.1\src. exe”。“bin\Debug\netcoreapp1.1\src. pdb”到“bin\Debug\netcoreapp1.1\src. pdb”Pdb”,即在项目中添加一个预构建事件,以便在每次构建项目时终止进程。引用这个链接:

右键单击项目上的属性 选择属性 构建事件 预构建事件命令行

taskkill /IM ServiceHub.DataWarehouseHost.exe /F 2>nul 1>nul
Exit 0

保存并构建

其他回答

有人知道为什么会出现这个问题吗?

查看您通过手动复制解决问题的回复,我会说您正在处理的代码是由其他用户(具有管理员权限)制作的,因此它锁定在您身上。通过执行复制——?粘贴,你做了你自己的拷贝的源代码与所有的访问你需要。唯一需要注意的是,在这种情况下,如果其他开发人员需要处理你的副本,他/她会遇到你之前遇到的相同问题。

我试着注销,然后重新登录,这对我来说很有效。希望这能帮助到其他人。

只需确保该文件夹不是只读的,然后重新构建解决方案

遇到同样的问题,但是每次重新启动Visual Studio对我来说都是没有选择的,因为这个问题有时会经常发生。

我通过安装Unlocker来处理它(试图在安装时安装任何工具栏,所以不要忘记取消选中这个),这个应用程序让我快速访问重命名/删除锁定的“.xml”-文件。我知道这也只是一个变通办法,但对我来说,这是解决这个问题最快的办法。

对我来说,问题是解决方案中的另一个项目有相同的.dll文件,该文件最近已签入。

手动将最近检入的.dll版本从另一个项目bin文件夹复制到产生错误的项目的bin文件夹中,可以修复这个问题。

对于我们的解决方案,一个长期的解决方案是在解决方案中的所有项目中使用相同的.dll文件,而不是在多个项目中使用相同的.dll文件,但我不喜欢解决这个问题,所以快速的解决方案是复制新版本。