Снимите блокировку записи VisualStudio для надстройки dll

Я пытаюсь найти способ обойти концепцию надстроек VisualStudio 2010, но продолжаю получать ту же ошибку при компиляции решения:

"невозможно удалить файл '.\bin\VSA.dll'. Доступ к пути [...] запрещен"

Я подозревал, что это произойдет, когда надстройка загружается в «экземпляр dev» Visual Studio, пока я пытаюсь скомпилировать решение, но надстройка, кажется, правильно отмечена галочкой в ​​«Диспетчере надстроек», а файл .Addin содержит <LoadBehavior>0</LoadBehavior> что должно быть правильно.

Любая идея, что может быть причиной блокировки или как отследить, что это такое? Спасибо!


person Timothée Bourguignon    schedule 19.02.2011    source источник
comment
Вы когда-нибудь находили простой способ сделать это?   -  person CaffGeek    schedule 16.08.2012


Ответы (3)


Вы должны перезапустить VS, чтобы надстройка выгрузилась, установка флажка не приведет к выгрузке сборки из devenv.exe.

Что, кажется, работает для меня, так это отметить надстройку и запустить 2 экземпляра VS: один с открытым проектом добавления и один для отладки надстройки. Затем включите надстройку во втором экземпляре, чтобы вызвать инициализацию надстройки и отладить ее. . Отключите надстройку во втором экземпляре VS, закройте VS. Перекомпилируйте проект надстройки в первом экземпляре, снова запустите второй экземпляр.

person axk    schedule 30.09.2011
comment
Спасибо за ответ, я действительно не отключал его перед закрытием VS каждый раз. Как-то беспокоит отсутствие возможности отладки программирования методом проб и ошибок, и я удивлен, что никто еще не улучшил это... ;) - person Timothée Bourguignon; 21.10.2011

Другой простой способ — установить флажок, закрыть Visual Studio, удалить выходные файлы и, наконец, перезапустить Visual Studio.

person Andres Rohr    schedule 04.06.2012

Unlocker – это полезная программа, когда вы не можете выполнять сборку из-за того, что ваши библиотеки DLL заблокированы.

person DevDave    schedule 08.07.2013
comment
Unlocker не смог удалить dll. - person JohnZaj; 11.07.2014