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

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

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

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

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


当前回答

我有同样的错误,但我正在使用Perforce版本控制。以下是我的解决方法。

关闭强制P4V客户端 重新启动Visual Studio 2010(可能不需要) 重建项目,成功了 我感到特别高兴,同时又感到厌恶

其他回答

对于那些使用网络的人。核心:

Dotnet清除有时可能解决,但解决这个问题的可靠方法是简单地杀死所有和任何Dotnet正在运行的进程:

taskkill /im dotnet /f

注意,如果你有其他Rider/Visual Studio实例在运行,它们就会被删除。

我通过删除bin文件夹中的有争议的文件并重新构建项目来解决这个问题。

在Visual Studio 2015中,改变输出路径对我来说很有效。这应该有助于-更改构建输出目录

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

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

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

您不应该将文件夹属性更改为非只读。 你看到这个错误消息的原因是源代码控制假设你只存储了你的杂项文件,而不是bin文件夹,因为它保留了由。net自动创建的文件,它不想把它们添加到源代码控制中。

我建议不要使用Environment。CurrectDirectory(我假设你目前正在使用),你在%appdata% address中创建一个名为“MyProjectName”的文件夹,然后使用:

System.IO.Path.Combine(Environment.GetEnvironmentVariable(“appdata”),“YourProjectName”).