首页 文章

无法复制文件,拒绝访问路径

提问于
浏览
208

我从版本控制中获取代码后首次运行c#.net应用程序正在使用visual studio 2005,但经过一些修改后,当我构建时,我收到这样的错误 .

错误383无法将文件“.. \ root \ leaf \ Bin \ Debug \ test.Resources.xml”复制到“Bin \ Debug \ test.Resources.xml” . 访问路径'Bin \ Debug \ test.Resources.xml'被拒绝 . li.rollmodel

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

Edit 我可以看到我的完整项目源代码物理文件夹是只读的,我无法删除该只读属性

首先,任何正文告诉我如何删除我已删除的文件夹的只读属性,但仍然显示那个,我从版本控制端尝试但效果相同 .

30 回答

  • 1

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

  • 0

    只需确保该文件夹不是只读文件并重建解决方案

  • 2

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

  • 2

    杀死进程 VBCSCompiler.exe 并重建 .

  • 0

    我也介入了这个问题 .

    首先去检查你是否已将bin和obj文件夹映射到Source Control程序 .

    这可能会将您的文件从二进制文件夹转换为只读存档,这使得Visual Studio在编译代码时无法覆盖它们 .

    转到并从这些文件夹中删除映射,检查更改,然后重试 .

    我的问题发生在使用TFS(团队基础服务器)和Visual Studio 2010 .

    希望这有助于某人 .

  • 3

    以管理员身份运行Visual Studio

  • 65

    在我的情况下,它是阻止该文件的防病毒软件 .

  • 2

    我使用Visual Studio 2013.我遇到了这个问题2次:

    • 第一次,我在没有管理员权限的情况下运行Visual Studio . 所以,我关闭VS并使用' Run as administrator '选项启动它 . 这解决了我的问题 .

    • 第二次,我多次重启VS,每次都确保我以管理员身份运行它 . 此外,我多次重建解决方案 . 但是,尽管我犯了错误 . 之后,我 removed the concerned file from the target location (该文件已经存在,可能来自它尝试复制到的位置的上一个版本) and rebuilt the solution . 在那之后,错误消失了,一切顺利!

  • 0

    这已经在Visual Studio 2017中再次出现,在这种情况下,原因是Application Insights进程ServiceHub.DataWarehouseHost.exe .

    线程warning MSB3026: Could not copy "obj\Debug\netcoreapp1.1\src.pdb" to "bin\Debug\netcoreapp1.1\src.pdb"中讨论了一种解决方法,即在项目构建时将预生成事件添加到项目中以终止进程 . 引用该链接:

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

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

    保存并构建

  • 0

    任何人都可以知道为什么会出现这个问题吗?

    看看你通过手动复制解决问题的回答,我会说你正在处理的代码是由其他一些用户制作的(也有管理员权限)所以它被锁定了 . 通过执行复制 - ?粘贴,您使用所需的所有访问权限制作了源的OWN副本 . 唯一需要注意的是,在这种情况下,如果其他开发人员需要处理您的副本,他/她将会遇到您之前遇到的相同问题 .

  • 7

    我重新添加了所有非.NET依赖项/引用,它就可以了 .

  • 2

    有同样的问题,但 restarting Visual Studio every time was no option for me ,因为问题有时经常发生 .

    我通过 installing Unlocker 处理它(尝试在安装时安装任何工具栏,所以不要忘记取消选中),这个应用程序 gives me fast access to rename/delete a locked ".xml"-File . 我知道这只是一种解决方法,但对我来说这是解决这个问题的最快解决方案 .

  • 2

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

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

  • 3

    我自己解决了这个问题 . 问题是我在另一个地方打开了解决方案 . 关闭它之后就可以了

  • 1

    如果将任何文件复制到解决方案中,请确保文件不处于“只读”模式 . 右键单击文件并取消选中属性选项解决了我的问题 .

  • 0

    我有同样的错误,但我正在使用 Perforce 版本控制 . 这就是我修复它的方法 .

    • Closed Perforce P4V 客户

    • 重新启动Visual Studio 2010(可能没有必要)

    • 重建了成功的项目

    • 同时感到非常高兴和反感

  • 1

    我也有同样的问题 . 我收到的错误消息与无法复制相关,因为访问路径被拒绝 . 在我的情况下,所有我的dll和xml文件等都放在D:\ TFS \ Example \ Bin \ Debug文件夹中 .

    我右键单击Bin文件夹并单击属性,并在“属性”下看到“只读”复选框 .

    我取消选中了“只读”复选框,然后在显示的新弹出窗口中单击“确定”并单击“确定” .

    我回到Visual Studio并构建我的解决方案,它给了我错误消息 .

    Voilaa ..这次它成功构建没有错误 .

    我不知道这是否完美,但我这样做是为了解决我的问题 .

  • 21

    检查任务管理器,确保没有挂起devenv.exe进程 . 杀掉失控的过程,然后再试一次 .

  • 1

    只需右键单击您的MVC项目,然后单击clean选项 . 我有一个类似的问题,在重建之前清理项目为我解决了它 .

  • 0

    我也有同样的问题 . 我通过取消选中根文件夹的只读属性来修复它 .

  • 41

    我也有这个问题 . 这是如何解决这个问题的

    • 从项目中排除 bin 文件夹 .

    • 关闭视觉工作室 .

    • C盘的磁盘清理 .

    • 在Visual Studio中重新打开项目 .

    • 然后重建解决方案 .

    • 运行项目 .

    这个过程对我有用 .

  • 1

    我能够通过从目标网站的bin文件夹中删除抱怨的目标文件(在您的示例中为“Bin \ Debug \ test.Resources.xml”)并重新构建它来解决问题 . 我已经修复了它 .

  • 7

    老帖子,但这个僵尸正在击中VS 2017(我只是't dug into why it'只是"some"项目) . 在这种情况下,它不是用户权限,而是IIS Express进程仍在使用该文件 .

    您将在任务栏中看到图标
    IIS Express icon

    • 右键单击

    • 退出

    • 你应该能够 rebuild 没有这个烦人的"permission denied"消息 .

    这也是“重启Visual Studio”将“解决”问题的原因 . 这样做会停止IIS Express .

    心连心...

  • 1

    1) 关闭visual studio解决方案

    2) 导航到命令提示符 - >以管理员身份运行 - > iisreset / stop

    3) 导航到c - > Windows - > Microsoft.Net - > Framework64 - > v4.030319 - >临时Asp.NET文件 - >删除此路径中的所有文件和文件夹 .

    4) 导航回命令提示符 - > iisreset / start

    5) 现在打开visual studio - >以管理员身份运行 - >清理解决方案并构建它(不要重建 . 只是构建对我有效)

  • 254

    您不应该将文件夹属性更改为not-readonly . 您看到此错误消息的原因是源控件假定您只将杂项文件存储在bin文件夹以外的其他位置,因为它为.Net自动创建的文件保留,并且不希望将它们添加到源文件中控制 .

    我建议不要使用 Environment.CurrectDirectory (我假设您当前正在使用),而是在%appdata%地址中创建名为"MyProjectName"的文件夹,然后使用:

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

  • 2

    我知道这是一个旧线程,但对于那些寻找答案的人,比如我几分钟之前,我建议先尝试重新启动计算机 . 仅此一点对我而言 . 之前甚至无法手动复制到文件夹 .

  • 7

    所以我遇到了同样的问题,我的原因,我共享了我的开发文件夹,所以我可以使用mac作为使用Xamarin的IOS应用程序的构建主机 . 该项目在mac上运行,它获取了dll的所有权,因此我无法从其他任何地方更改该dll . 只需在mac上停止应用程序就可以将所有权返还给我,从而再次允许完全访问权限 . 我希望这可以做到 .

  • 6

    清除“bin \ debug”中的所有引用库,然后右键单击“解决方案”解决方案资源管理器点击“清洁解决方案”后 .

    并重建!!

  • 17

    我多次遇到这个问题,我找到的解决方案是删除调试文件夹,然后重建您的解决方案/项目 . 为我工作!!

  • 113

    确保在路径名(path \ fileName.extension)之后附加文件名 . 我花了一个多小时没注意到这一点 .

相关问题