我使用的是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 2015中,改变输出路径对我来说很有效。这应该有助于-更改构建输出目录

其他回答

我解决了这个问题: 关闭Visual Studio,再次打开并加载解决方案,重新构建解决方案。我的问题发生在使用TFS和VIsual Studio 2010。

当我向解决方案添加了一个新的安装项目,然后直接将主应用程序项目的/bin/release文件夹中的文件添加到安装项目的应用程序文件文件夹中时,就产生了这个问题。安装项目的源代码控制一直阻止我完成主应用程序项目的构建。

解决方案:在包含安装中要包含的所有文件的任何项目之外创建一个单独的转储文件夹,并从那里添加它们。这很痛苦,因为现在我必须记住为每个新的安装包复制所有文件。我可能会看看我是否可以做一些构建后的行动,我们的自动构建,使过程更顺利。

这可能是最初从源代码控制(TFS等)加载源代码的奇怪副产品,其中所有文件和文件夹都是写保护的。转到顶层目录并检查属性,您可以发现Read-only属性被选中。取消勾选,系统将询问您是否希望将顶层下的所有dirs设置为可写。这应该能解决问题。

以管理员身份运行Visual Studio。或者您可以在输出文件夹上为“用户”添加写权限

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

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

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