Я использую Visual Studio 2005. После получения кода из системы контроля версий приложение c # .net работает правильно. Но после внесения некоторых изменений при сборке я получаю следующую ошибку:
Ошибка 383 Не удается скопировать файл ".. \ root \ leaf \ Bin \ Debug \ test.Resources.xml" в "Bin \ Debug \ test.Resources.xml". Доступ к пути 'Bin \ Debug \ test.Resources.xml' запрещен. li.rollmodel
Кто-нибудь знает, почему возникает эта проблема?
Изменить Я вижу, что вся папка с исходным кодом моего проекта доступна только для чтения, и я не могу удалить свойство только для чтения.
Во-первых, кто-нибудь может сказать мне, как удалить свойство «Только чтение» для этой папки? Я попытался удалить его, но свойство только для чтения сохраняется. Я пытался со стороны контроля версий, и это тоже не сработало.
Ответы:
Я решил эту проблему, удалив спорные файлы из папки bin и перестроив проект.
источник
Просто убедитесь, что папка НЕ только для чтения, и перестройте решение.
источник
Я решил эту проблему: закройте Visual Studio, снова откройте ее и загрузите решение, перестройте решение. Моя проблема возникла с использованием TFS и VIsual Studio 2010.
источник
Убить процесс
VBCSCompiler.exe
и восстановить.источник
Я тоже вмешался в эту проблему.
Сначала зайдите и проверьте, сопоставили ли вы папку bin и obj с программой Source Control.
Это может быть превращение ваших файлов из бинарных папок в архивы только для чтения, что делает невозможным перезапись их в Visual Studio при компиляции кода.
Перейдите и удалите сопоставление из этих папок, проверьте изменения и повторите попытку.
Моя проблема возникла с использованием TFS (Team Foundation server) и Visual Studio 2010.
Надеюсь, это кому-нибудь поможет.
источник
Запустите Visual Studio от имени администратора
источник
Я использую Visual Studio 2013. Я сталкивался с этой проблемой 2 раза:
В первый раз я запускал Visual Studio без прав администратора. Итак, я закрыл VS и запустил его, используя опцию « Запуск от имени администратора ». Это решило мою проблему.
Во второй раз я перезагружал VS много раз, каждый раз проверяя, запущен ли он как администратор. Также я много раз перестраивал решение. Но, несмотря на это, я получал ошибку. После этого я удалил соответствующий файл из целевого местоположения (файл, который уже присутствовал, может быть из предыдущей сборки в том месте, куда он пытается скопировать), и пересобрал решение . После этого ошибка ушла и все прошло гладко!
источник
В моем случае это был антивирус, который заблокировал файл.
источник
Это снова подняло голову в Visual Studio 2017, в данном случае причиной является процесс Application Insights ServiceHub.DataWarehouseHost.exe.
В предупреждении потока MSB3026 обсуждается обходной путь : не удалось скопировать «obj \ Debug \ netcoreapp1.1 \ src.pdb» в «bin \ Debug \ netcoreapp1.1 \ src.pdb» , то есть добавить предварительную сборку событие в проекте, чтобы убить процесс каждый раз, когда проект построен. Цитирую по этой ссылке:
источник
Если посмотреть на ваш ответ о том, что вы решили свою проблему путем ручного копирования, я бы сказал, что код, над которым вы работали, был создан другим пользователем (с правами администратора), поэтому он был заблокирован для вас. Выполняя копию -? Вставьте, вы сделали свою СОБСТВЕННУЮ копию источника со всеми необходимыми вам правами доступа. Единственное, на что следует обратить внимание, это то, что в этом случае, если этот другой разработчик должен будет работать над вашей копией, он столкнется с той же самой проблемой, с которой вы столкнулись ранее.
источник
Сначала перейдите к расположению файла. Затем щелкните правой кнопкой мыши папку файла -> Свойства -> Опция «Только для чтения» и примените к файлам и их подпапкам. Это решило мою проблему. Удачного кодирования!
источник
Я повторно добавил все свои не-.NET зависимости / ссылки, и это помогло.
источник
Я решил эту проблему сам. Проблема была в том, что я открыл решение в другом месте. После закрытия это работает
источник
У меня была та же проблема, но перезапуск Visual Studio каждый раз не был для меня вариантом , так как проблема возникает иногда очень часто.
Я справился с этим, установив Unlocker ( пытается установить любую панель инструментов при установке, поэтому не забудьте снять галочку ), это приложение дает мне быстрый доступ к переименованию / удалению заблокированного ".xml" -файла . Я знаю, что это тоже только обходной путь, но для меня это было самое быстрое решение этой проблемы.
источник
Старый пост, но этот зомби бьет по VS 2017 (я не задумывался, почему это просто «некоторые» проекты). В данном случае это не пользовательские права , а процесс IIS Express все еще использует файлы.
Вы увидите значок на панели задач
rebuild
без этого раздражающего сообщения «Отказано в доступе».Это также, почему «перезапуск Visual Studio» решит проблему. Это останавливает IIS Express.
Hth ...
источник
Я создал эту проблему, когда добавил новый проект установки в решение, а затем добавил файлы непосредственно из папки / bin / release основного проекта приложения в папку с файлами приложения проекта установки. Управление исходным кодом проекта установки постоянно блокировало меня от завершения сборки основного проекта приложения.
Решение: создайте отдельную папку дампа вне любого из проектов, которая будет содержать все файлы, которые будут включены в установку, и добавьте их оттуда. Это боль, потому что теперь я должен помнить, чтобы скопировать все файлы для каждого нового установочного пакета. Я мог бы посмотреть, смогу ли я что-нибудь сделать с действиями после сборки нашей автоматической сборки, чтобы сделать процесс более плавным.
источник
Если вы копируете какие-либо файлы в решение, убедитесь, что они не находятся в режиме только для чтения. Щелкните правой кнопкой мыши по файлу и снимите флажок атрибута, решил мою проблему.
источник
У меня была та же ошибка, но я использую контроль версий Perforce . Вот как я это исправил.
источник
У меня тоже была такая же проблема. Я получил сообщения об ошибках, связанные с невозможностью копирования, поскольку доступ к пути запрещен. В моем случае все мои dll-файлы, xml-файлы и т. Д. Находятся в папке D: \ TFS \ Example \ Bin \ Debug.
Я щелкнул правой кнопкой мыши по папке Bin, нажал кнопку «Свойства» и увидел, что в разделе «Атрибуты» установлен флажок «Только для чтения».
Я снял флажок «Только чтение», щелкнул «Применить» и нажал кнопку «ОК» в появившемся всплывающем окне.
Я вернулся в Visual Studio и создал свое решение, которое давало мне сообщения об ошибках.
Вуаля .. На этот раз он успешно построен без ошибок.
Я не знаю, идеально ли это, но я сделал это, чтобы решить мою проблему.
источник
Проверьте диспетчер задач и убедитесь, что у вас нет зависания процесса devenv.exe. Убейте беглый процесс и попробуйте снова.
источник
Перейдите к пути к файлу, затем снимите флажок только для чтения этого файла.
источник
Я знаю, что это старая ветка, но для тех, кто ищет ответы, как и я несколько минут назад, я рекомендую сначала перезагрузить компьютер. Это одно исправлено для меня. Раньше не мог даже вручную скопировать в папку.
источник
Просто щелкните правой кнопкой мыши по вашему проекту MVC и выберите опцию очистки. У меня была похожая проблема, и очистка проекта перед перестройкой решила его для меня.
источник
У меня была такая же проблема. Я исправил это, сняв флажок в свойствах только для чтения корневой папки.
источник
У меня тоже была эта проблема. Вот как это решается
bin
папку из проекта.Этот процесс работает для меня.
источник
Изменение пути вывода работало для меня в Visual Studio 2015. Это должно помочь - Изменение каталога Build Output
источник
Мне удалось решить эту проблему, удалив целевой файл, который жалуется (в вашем примере «Bin \ Debug \ test.Resources.xml»), из папки bin целевого веб-сайта и заново скомпилировать его. Это исправило для меня.
источник
1) закрыть визуальное студийное решение
2) перейдите в командную строку -> запустить от имени администратора -> iisreset / stop
3) Перейдите в c -> Windows -> Microsoft.Net -> Framework64 -> v4.030319 -> Временные файлы Asp.NET -> Удалить все файлы и папки по этому пути.
4) Вернитесь в командную строку -> iisreset / start
5) Теперь откройте Visual Studio -> Запустите от имени администратора -> Очистите решение и постройте его (не перестраивайте .. Просто сборка сработала для меня)
источник
Вы не должны изменять атрибут папки на не-только для чтения. Причина, по которой вы видите это сообщение об ошибке, заключается в том, что система контроля версий предполагает, что вы храните разные файлы только в папке bin, поскольку она зарезервирована для файлов, автоматически создаваемых .Net, и не хочет добавлять их в исходный код. контроль.
Я предлагаю вместо использования
Environment.CurrectDirectory
(которое, как я полагаю, вы используете в настоящее время), вы создаете папку с именем «MyProjectName» в адресе% appdata% и затем используете:System.IO.Path.Combine(Environment.GetEnvironmentVariable("appdata"),"YourProjectName")
,источник
Так что я столкнулся с той же самой проблемой, причиной моей был общий доступ к папке для разработки, чтобы я мог использовать Mac в качестве хоста сборки для приложения IOS, использующего Xamarin. Проект работал на Mac, который стал владельцем библиотеки DLL, поэтому я не мог вносить изменения в эту библиотеку из других источников. Простая остановка приложения на Mac вернула мне право собственности, что снова позволило получить полный доступ. Я надеюсь, что это сделать с тех пор.
источник