Выпускать дескрипторы файлов Windows во время автоматической сборки
У меня есть автоматизированный процесс сборки, который запускается, когда в офисе никого нет, и он запускает сборки, развертывает веб-сайты IIS и выполняет другие задачи. Проблема в том, что если кто-то оставляет файл открытым в одном из этих приложений (например, если они смотрят на файл web.config в текстовом редакторе), сборка завершается неудачно, поскольку он не может удалить файлы. Я видел, как люди предлагали решение использовать Unlocker для освобождения файловых дескрипторов, но мне не нужна интерактивная программа - я хочу, чтобы приложение командной строки, которое я могу вызвать из процесса сборки, автоматически освобождает любые открытые дескрипторы в каталоге.,
2 ответа
Microsoft предоставляет handle.exe, который является средством командной строки. Вы должны были бы сделать некоторый анализ ниндзя, чтобы интерпретировать вывод, все же. Также имейте в виду, что принудительное закрытие дескриптора может иметь очень нежелательные побочные эффекты, на самом деле может быть безопаснее убить нарушающий процесс.
Сборка из отдельной копии исходного кода. Оставьте оригинальную копию для разработчиков.