Visual studio не удалось скопировать obj debug

Обновлено: 01.07.2024

Ошибка: не удалось скопировать файл "obj\Debug\WpfApp1.exe" в "bin\Debug\WpfApp1.exe". Доступ к пути "bin\Debug\WpfApp1.exe" запрещен.

Я перезапустил VS, очистил и перестроил решение, проверил "handle", если что-то блокировало файл WpfApp1.exe (дескриптор "pathToTheFile\WpfApp1.exe")

Не найдено совпадающих совпадений.)

Я работаю над: win10 home, visual studio 2017 community (15.4.0)

EDIT: ремонт и переустановка VS не помогла.

После перекомпоновки процессов файл.exe из \bin устанавливается как удаленный, но каким-то образом файл все еще существует на диске как "файл-призрак". В этот момент права доступа к файлу изменяются ОС и владелец этого файла неизвестен (я не вижу его из-за отсутствия разрешения. Перед перестройкой процессов у меня был полный доступ к файлу.) Если я перезапущу ОС, то процесс удаления файла завершен, и файл больше не существует.

У меня была эта ошибка, я не смог ее скопировать, иногда говорил, что не может удалить ее. (и имейте в виду, что есть obj\debug\blah.exe и bin\debug\blah.exe и проблема потенциально может относиться к обоим из них)

Я думаю, что происходит, что Visual Studio сначала пытается удалить его (их), и если это удается (или если он уже удален), то он пытается скопировать его.

Вы можете попытаться удалить его самостоятельно, и тогда вы увидите некоторую проблему с его удалением. Таким образом, вы можете попробовать закрыть окна обозревателя, используя, например, unlocker и ограничитель файлов. Я думаю, вы найдете, что это, вероятно, не визуальная студия, которая блокирует это. Когда я пытался закрыть Visual Studio, я все еще не мог удалить файл, поэтому я вижу, что Visual Studio будет иметь проблему с удалением файла!

добавленной

Другой причиной является известная проблема с определенным анти-вредоносным программным обеспечением, таким как вредоносные байты, см. Здесь. Вы можете перейти к нижним правым значкам на панели задач и навести на них курсор, чтобы увидеть, что они из себя представляют, проверить, работает ли какое-либо антивирусное ПО. Попробуйте выйти, если это так, и посмотрите, поможет ли это.

И еще одна возможная причина, которая, как было показано, также влияет на visual studio при создании проекта, - это служба Application Experience, которая находится в Windows 7/8/10 и, по-видимому, должна быть запущена. По-видимому, это "остановлено" для многих людей. Windows 2008 R2 - Ядро (системный процесс PID = 4) блокирует файлы и папки

(Не удалось скопировать файл "obj\Debug\Project1.exe" в "bin\Debug\Project1.exe". Процесс не может получить доступ к файлу "bin\Debug\Project1.exe", потому что он используется другим процесс.)

. поэтому мне нужно закрыть процесс из диспетчера задач. мой проект - это только одна форма, и нет многопоточности.

Какое решение (без перезапуска VS или Killing процесса)?

Изображение 15823

это код ошибки, который мы имеем как мы можем решить эту проблему?

Tao Framework включает в себя множество разных вещей, которые могут быть причиной этой проблемы. Какую часть фреймворка вы используете? Кроме того, если бы вы могли создать небольшой пример приложения, демонстрирующего эту проблему, и опубликовать его, это помогло бы отладить его.

@Udpate: с тех пор, как я впервые опубликовал этот "ответ", я склоняюсь к другому объяснению проблемы. Проблема с тех пор происходила все чаще и чаще за пределами Visual Studio - при попытке скопировать файл .exe из одной папки в другую. Хотя в первую очередь Windows не разрешала копировать (!) Файл .exe(сначала он просил меня об административных правах, но в любом случае отказался его копировать), он все еще появился в проводнике. Но через какое-то время - без каких-либо дальнейших действий оно исчезло волшебным образом. Точно так же, как проблема в вопросе всегда, кажется, решает себя через некоторое время. Поэтому я предполагаю, что проблема связана скорее с отложенным удалением выходного файла проекта и с меньшей ошибкой VS. Прошу прощения за любые необоснованные подозрения.: |

Это дает поиск решения совершенно другого направления, я думаю. Нашел эту ссылку и будет обновлять любой прогресс:

Это известная ошибка в VS. Я обнаружил это очень часто - в основном в VS2010 (с/без SP1). Рекомендуется несколько "решений". Некоторые из них, которые помогли мне:

  • Удалите файл .suo в директории проекта. В конце концов вам нужно создать все свое решение с нуля.
  • Закрыть любые конструкторы форм Windows могут оставаться открытыми.
  • Используйте prebuild script, который удаляет цель из выходного каталога.
  • Отключите процесс хостинга VS.

Ни один из них не исправляет ошибку. Но это может привести VS обратно в пригодное для использования состояние - пока истинное решение не будет предоставлено MS (если когда-либо будет).

работает (иногда) но это действует мне на нервы. Есть ли способ остановить это вообще?

Мои настройки отладчика

введите описание изображения здесь
введите описание изображения здесь

Есть хорошее резюме этой проблемы с типичными шагами, чтобы решить в этом вопросе Это происходило для меня, потому что Защитник Windows решил, что ему больше не нравится .exe из проекта VS2019, над которым я работаю. Работали над этим неделями без проблем, но сегодня, думаю, новое обновление не понравилось. Пришлось исключить мои исходные папки. Перестало происходить.

В основном я обнаружил, что такая ситуация возникла, когда процесс отладки был остановлен из-за исключения.

Когда clean + build не решил эту проблему для меня, я добился успеха, выполнив следующие действия:

  • Закрытие Visual Studio
  • Удаление bin и obj папки, и
  • Повторное открытие Visual Studio.

Эта «ошибка» существует со времен Visual Studio 2003.

Наконец, я также обнаружил, что часто могу решить эту проблему, просто переименовав исполняемый файл и затем удалив его.

То же самое здесь, VS2013. Выход, удаление артефактов сборки, перезапуск -> все хорошо. У меня та же проблема, но после перезапуска VS я получаю одну сборку, и файлы снова блокируются .. Это не решение, в лучшем случае частичное решение. Я не хочу перезапускать VS каждые 10 минут. Очистка раствора работает для меня, но очистка каждые 10 минут также не является решением. Исходя из моего опыта, VS2013 делает это по крайней мере 10 раз в день для меня, независимо от того, на какой машине я работаю. Это как ошибка стала хуже. Просто говорю

В Visual Studio Premium 2013 (обновление 3) я решил эту проблему с помощью предварительной сборки одной строки:

Это изящно удаляет все старые файлы PDB (если это возможно), а затем переименовывает все, что осталось с .old.pdb расширением. Приятным побочным эффектом является то, что если старая PDB все еще заблокирована, она просто добавляет еще один элемент .old к имени файла, и все они очищаются при следующем перезапуске Visual Studio и выполнении сборки.

Например, сеанс сборки / отладки 1 остается MyProject.pdb заблокированным.
В следующий раз вы построите:
MyProject.pdb -> MyProject.old.pdb

Затем запускается сеанс сборки / отладки 2, и оба так MyProject.pdb и MyProject.old.pdb остаются заблокированными:
MyProject.old.pdb -> MyProject.old.old.pdb
MyProject.pdb -> MyProject.old.pdb

Наконец, перезапуск Visual Studio и создание новой сборки избавят от обоих этих факторов и продолжат процесс как обычно.

(Невозможно скопировать файл "obj\Debug\Project1.exe" в "bin\Debug\Project1.exe". Процесс не может получить доступ к файлу "bin\Debug\Project1.exe", так как он используется другим процессом.)

Поэтому я должен закрыть процесс из диспетчера задач. Мой проект - только одна форма, и нет многопоточности.

Какое решение (без перезапуска VS или уничтожения процесса)?

enter image description here

ОТВЕТЫ

Ответ 1

@Обновление: Со времени, когда я впервые опубликовал этот "ответ", я склоняюсь к другому объяснению проблемы. С тех пор эта проблема возникала все чаще и за пределами Visual Studio - при попытке скопировать файл .exe из одной папки в другую. Хотя в первую очередь Windows не позволяла копировать (!) Файл .exe (сначала он запрашивал у меня административные права, но впоследствии все равно отказывался копировать его), он все равно обнаруживался в проводнике. Но через некоторое время - без каких-либо дальнейших действий, он волшебным образом исчез. Точно так же, как проблема в вопросе, кажется, решает сама себя через некоторое время. Итак, я предполагаю, что проблема больше связана с отложенным удалением выходного файла проекта и меньше с ошибкой VS. Я прошу прощения за любые необоснованные подозрения. : |

Это дает поиску решения совершенно другое направление, я полагаю. Нашел эту ссылку и сообщу о любом прогрессе:

Это известная ошибка в VS. Я обнаружил это очень часто - в основном в VS2010 (с/без SP1). Рекомендуется несколько "решений". Вот некоторые из них, которые мне помогли:

  1. Удалите файл .suo в директории вашего проекта. В конце концов нужно создать все ваше решение с нуля.
  2. Закройте все дизайнеры форм Windows, которые могут оставаться открытыми.
  3. Используйте сценарий предварительной сборки, который удаляет цель из выходного каталога.
  4. Отключить процесс размещения VS

Ничто из этого не исправляет ошибку. Но это может вернуть VS в работоспособное состояние - до тех пор, пока MS не предоставит истинное решение (если будет).

Ответ 2

Это должно работать.

Перейдите к свойствам вашего проекта. Внутри событий сборки в командной строке события Pre-build добавьте эти две строки кода:

Ответ 3

Я могу подтвердить, что эта ошибка существует и в обновлении версии VS 2012.

Моя работа - это:

  • Очистить решение (и ничего не делать)
  • Закройте все открытые документы/файлы в решении
  • Выход VS 2012
  • Выполнить VS 2012
  • Решение для сборки

Что-то, что нужно рассмотреть. искать связанные файлы по проектам в одном решении.

Ответ 4

Реальная проблема - не ошибка, которую вы получаете; что приложение не очищается после себя.

Он либо держится за ссылки, не освобождает ресурсы, либо что-то еще, что заставляет процесс не заканчиваться, когда ему говорят закрыть. Устраните эту проблему, и эта проблема решится сама. Мы не можем вам помочь, если вы не разместите свой код (и в этот момент, если вам нужна помощь в этом, вы должны начать новый вопрос).

Ответ 5

Если вы посмотрите в каталоге obj, и вы не видите ваш .exe, возможно, что Avast! или другой антивирус удаляет его. Я бы на самом деле увидел .exe, и он исчез. Как только я выключил Аваст!, Проблема решена.

Ответ 6

Это происходит потому, что процесс [yourProjectName].exe не закрывается после завершения отладки.

Существует два решения этой проблемы.

Добавьте кнопку выхода в приложение для выхода из окна и добавьте эту строку в событие click

Ответ 7

Мне пришлось зайти в Windows Explorer и удалить папку bin/debug, а также папки obj/debug. Затем я очистил и перестроил проект.

Ответ 8

Увидев подобную ошибку в визуальных студиях 2012 года, нет. Я обнаружил, что, перейдя в корневую папку проекта и щелкнув правой кнопкой мыши, я снял флажок только для чтения, и эта ошибка исчезла. По-видимому, TFS иногда делает доступной только папку. Надеюсь, это поможет любому, у кого есть аналогичная проблема. Благодаря

Ответ 9

Это случилось со мной на VS 2010 и Win 7.. Случай:

  • Я не могу перестроить с помощью диспетчера конфигурации Debug, но я могу восстановить его с помощью диспетчера конфигурации Release

debug

cpanel

not read only

everyone

iis stop

Остановите антивирус, проверьте запутанную запущенную программу с помощью диспетчера задач и ProcessExplorer

запустить VS как администратор

Если все это еще не работает.

Затем, последний способ попробовать:

  • закрыть решение
  • закрыть визуальную студию
  • start - shutdown
  • нажмите кнопку питания, чтобы включить компьютер.
  • войдите в свою учетную запись, у которой есть права администратора при типе пользователя.
  • повторно открыть решение
  • перестраивать
  • так работает. Все люди называют это как Reset Компьютер

Ответ 10

Я нахожу работу,:)

Ответ 11

Переименуйте сборку под другим именем, чтобы решить эту проблему.

Ответ 12

по какой-то причине, когда я открываю файл XAML, а затем строился, процесс XDesProc оставался в памяти при использовании DLL файла основной сборки

Ответ 13

Прежде чем перестраивать решение, очистить проект, остановите IIS и откройте свойство папки "bin > . Снимите флажок Атрибут только для чтения на вкладке общего доступа, затем перестройте.

Ответ 14

У меня была такая же проблема, после того, как вы прочли ваши ответы, отправились в Task Manager и искали app.exe , потому что я считаю, что, возможно, он не закрывается. И нашел его, выберите его и решите END TASK .my проблему.

Ответ 15

Я обнаружил, что окончание всех задач msbuild.exe(в диспетчере задач) устранило проблему с VS2012.

Ответ 16

Запустите Visual Studio как Administrator

Ответ 17

Мы недавно испытали это на проекте WinPhone 8, в обновлении версии VS 2012 года.

Необъяснимо, причиной послужил тип Tuple. Удалив код, который использовал кортеж, проблема исчезла. Добавьте код обратно к проблеме.

Ответ 18

Это будет звучать безумно, когда я когда-либо создам проект, будет отображаться ошибка, и антивирус avast покажет его как вредоносную попытку, и проект не запускается. Просто просто отключите мой антивирус и снова создайте мое решение. Создан файл EXE и успешно выполнен проект.

Или вы можете попробовать это

Ответ 19

Я решил это, убив XDesProc , у которого был дескриптор DLL, который он не смог удалить.

Ответ 20

Ответ 21

Не прямой ответ на ваш вопрос.

Ниже приведен один сценарий, когда это возможно -

Если ваше приложение находится в процессе отладки - скажем, с помощью отладки "Прикрепить к процессу", эта ошибка может появиться

Ответ 22

Если эта ошибка возникла, вы можете перейти к следующему

  • Завершить задачу msbuild.exe
  • Завершить задачу explorer.exe
  • Запустите задачу explorer.exe снова

Ответ 23

для меня это был антивирус. Просто добавьте проект визуальной студии или всю родительскую папку в список исключений антивируса, или вы также можете добавить расширение файла как исключение, и этот метод работал у меня в visual studio 2010/2012

Ответ 24

  • Закройте проект.
  • Удалить папку bin.
  • Откройте проект.
  • Создайте проект.

Добавьте следующий код в событие предварительной сборки:

attrib -r $(OutDir)*..\* /s

Этот код командной строки удалит атрибут ready-only из папки "bin". Теперь визуальная студия может легко удалять и копировать новые dll.

Ответ 25

Я боролся с этим с годами. Наконец я загрузил LockHunter, чтобы узнать, кто заблокировал файл. В моем случае это был MBAM. Как только я добавил каталог проекта в список исключений MBAM, у меня больше не было этой проблемы.

Ответ 26

Очень простое решение - открыть диспетчер задач (CTRL + ALT + DELETE), перейти на вкладку Процессы и выполнить поиск по имени процессов с вашим именем проекта, которые все еще запущены. Убейте все процессы и продолжайте!:)

Ответ 27

после дня поиска и сборки и перестройки я обнаружил, что вам просто нужно выключить, включить визуальную студию, похоже, она ловит сервис в другой ветке

Ответ 28

Моя была решена путем:

  1. Чистый раствор
  2. Закройте все процессы в зависимости от VS (Текущие экземпляры).
  3. перестраивать

Ответ 29

У меня была эта проблема недавно на VS 2017 V15.8.9, у меня также была эта проблема в прошлом году на предыдущей VS

Я попробовал все ответы с отклонением голосов без удачи.

Затем я принял решение перезагрузить компьютер и заметил, что меня ждет обновление.

После перезагрузки ПК проблема была исправлена

Однако кто-нибудь еще испытал это в ожидании обновления? если я помню в прошлый раз, было также обновление, которое ожидало установки.

Надеясь, что это может пролить свет на то, что может быть причиной.

Ответ 30

Моя Visual Studio 2019 внезапно останавливается и перезапускается, а затем, когда я запускаю проект, появляется эта ошибка.

Я решил эту проблему, зайдя в папку моего проекта и удалив папку bin и obj. Затем очистите и пересоберите мой проект. Это решит мою проблему.

Используя бета-версию Visual Studio 2010, когда я запускаю свое приложение в среде IDE для отладки, он работает отлично в первый раз. Однако после закрытия сеанса отладки, либо закрыв приложение, либо нажав кнопку остановки отладки, все последующие попытки отладки приложения завершились неудачей:

Я не совсем уверен, когда это началось, но я довольно уверен в этом совсем недавно.

UPDATE. После принудительного закрытия дескрипторов на Application.dll, я получаю следующую ошибку от VS:

ОБНОВЛЕНИЕ 3. Я думаю, что я сузил его до формы с помощью UserControl.

Изменить: Unlocker не работает на 64-разрядной ОС, LockHunter.

Вот как я решил эту проблему

* Я открываю проект Properties,
* выберите вкладку сборки,
* Очистить выходной путь,
* и buid (это создаст dll в корневой папке)
* вернитесь к пути вывода и выберите просмотр (перейдите в каталог bin для отладки/выпуска) и voila!

Я видел, что служба индексирования Windows вызывает это. Отключение этого помогло. Вирусные сканеры также могут быть виноваты. Mutliple Application.Close() вызовы также могут вызвать это.

EDIT: Конечно, поскольку он всегда работает в первый раз, я полагаю, что это маловероятно.

Вы можете убить процессы следующим образом mrtumnus:

Вы можете отключить параллельную сборку раз и навсегда:

Конечно, сборки теперь немного медленнее, но пробег может варьироваться в зависимости от вашего варианта использования.

Была та же проблема. Следующие вещи помогли

  • Закрытие всех файлов проекта при отладке
  • с помощью разблокировки

Также мое приложение открывает порт. В то время как отладка была исключена, программа закрылась. По окончании программы я закрыл порт. Это тоже помогло.

Но определенно, ошибка с VS2010.

Я столкнулся с той же проблемой, и в моем случае у меня был открытый файл в Visual Studio. Помогло закрыть все файлы.

Я столкнулся с такой же ошибкой, и я застрял в ней много дней. Наконец, решила проблему.
Я работал над проектом, в котором было добавлено много классных библиотек. Я добавил ссылку на эти библиотеки в свой основной проект и по ошибке

Это так расстраивает. На самом деле думать о переходе на VS2013 и VS2010 нагружено проблемами, и MS, похоже, не заботится. У некоторых из нас действительно нет роскоши платить за новое программное обеспечение, но, похоже, мне придется укусить пулю. У меня была эта проблема постоянно более двух недель. Я очистил любые настройки для VS2010, я, возможно, использовал devenv/Resetsettings, запустил VS2010 в качестве администратора и все еще получаю эту проблему. Когда MS говорит, что они не могут воспроизвести это в лаборатории, потому что они имеют нетронутую систему или просто создают дымовые завесы. Я буквально вытягиваю свои волосы этим.

Читайте также: