Visual Studio Express 2012 удерживает каталог Bin

У меня проблема с тем, что VSExpress2012 удерживает запущенный exe-файл после того, как я нажал остановку отладки или закрыл окно.

Я создаю приложение WPF в C Sharp (мой Mac не позволяет мне помещать хэш). Чтобы повторно запустить приложение, мне нужно закрыть VS, удалить папку bin, а затем снова открыть решение.

Это очень раздражает. Мне было интересно, сталкивался ли кто-нибудь с этим и нашел достойное решение. Не уверен, что это VS12 Express или что-то еще, что я упускаю из виду.


РЕДАКТИРОВАТЬ: Просто уточнить. Я не хочу удалять каталог bin. Это всего лишь мое временное решение, позволяющее мне отлаживать приложение, потому что после запуска VS удерживает exe и не позволяет мне выполнить другую сборку.


person Kris Adams    schedule 11.11.2013    source источник
comment
Проверьте, есть ли какой-то поток, работающий в фоновом режиме.   -  person Alberto    schedule 11.11.2013
comment
Очень простое приложение на данный момент. Темы, созданные мной, отсутствуют.   -  person Kris Adams    schedule 11.11.2013


Ответы (2)


Это процесс vshost, который мешает вам удалить папку? Например. MyApp.vshost.exe.

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

Почему вам все равно нужно/хотите удалить каталог bin?

person Rob    schedule 11.11.2013
comment
Я хочу удалить каталог bin, потому что, когда я делаю еще одну сборку (/запуск) приложения после первого, он говорит, что не может скопировать в выходную папку, потому что файл используется другим приложением (но на самом деле это само держась за него с предыдущего запуска) - person Kris Adams; 11.11.2013
comment
Другими словами, я не хочу каждый раз удалять каталог bin, просто это единственный способ, который у меня есть на момент отладки приложения. - person Kris Adams; 11.11.2013
comment
Есть ли ресурсы, которые вы не убираете? Например. открывать файлы и т. д. в каталоге bin? - person Rob; 11.11.2013
comment
Нет, на данный момент это очень простое приложение. Никаких потоков или операций ввода-вывода. (Единственным сомнительным моментом является тот факт, что я использую хост Winforms для создания канала веб-камеры. Возможно, это неправильно обрабатывает кэширование файлов для потока. Это буквально просто код из коробки) - person Kris Adams; 11.11.2013

Ну я понял в чем проблема.

Я использую элемент управления WPF Webcam, найденный в CodeProject (http://www.codeproject.com/Articles/285964/WPF-Webcam-Control)

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

Теперь это, вероятно, говорит о проблеме с подчеркиванием этого кода, но эй, хо, моя проблема решена.

Спасибо всем за вклад!

person Kris Adams    schedule 11.11.2013