Сбой сборки Azure: невозможно удалить каталог "csx \ Debug \" - PullRequest
7 голосов
/ 31 января 2012

Ящик сидел на контрольной точке прошлой ночью, когда я ложился спать. Этим утром есть сервисные обновления, которые закрывают VS. Я вновь открываю VS, делаю некоторую работу, чтобы подготовиться к отладке, затем собираю. Сбой сборки: ошибка MSB3231: невозможно удалить каталог «csx \ Debug \». Доступ к пути «Microsoft.WindowsAzure.Diagnostics.dll» запрещен.

VS работает в режиме администратора.

Ответы [ 6 ]

12 голосов
/ 03 февраля 2012

Иногда эмулятор Azure не работает так, как он шумит, и продолжает выполнять некоторые процессы.Вы можете проверить это с помощью ProcessExplorer.

В таких случаях я перезапускаю обе службы эмулятора, но в вашем случае будет достаточно перезапустить эмулятор Compute.

2 голосов
/ 31 июля 2014

В Visual Studio 2013 мне удалось исправить эту же ошибку, выгружая проект Azure, а затем перезагружая и собирая его. Это казалось намного проще, чем уже предоставленные ответы, поэтому я отвечаю на уже отвеченный вопрос

0 голосов
/ 09 июня 2014

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

В моем случае это была только Windows Grep.Другой возможный виновник - IE (см .: http://www.dotnetnoob.com/2013/09/the-unable-to-remove-directory.html).

. При необходимости вы сможете выяснить, какая это программа, с помощью Process Explorer из пакета Sysinternals, который может показать вам,открыть дескрипторы файлов. В строке меню Process Explorer нажмите «Найти» -> «Найти дескриптор или DLL ...», введите часть пути, на который жалуется сборка Azure, и проверьте полученный список программ.

0 голосов
/ 20 ноября 2013

Очистите решение. Это решит проблему.

0 голосов
/ 31 января 2012

У меня эта проблема постоянно. Следующее помогло мне решить проблему:

  1. Отключить антивирусы
  2. Отключить поиск Windows
  3. Отключить любую службу сканирования файлов
0 голосов
/ 31 января 2012

Лучшее решение, которое я видел, это создать «Событие после сборки» для удаления атрибута только для чтения:

attrib -R "$(TargetDir)*.*" /S

Это должно решить проблему

...