Я делаю скрипт для публикации веб-приложений с помощью PowerShell.
Поскольку я нахожусь в начале разработки, я поочередно редактирую скрипт и файл xml. На данный момент скрипт довольно маленький и простой:
$settings = [xml](Get-Content c:\PublishData.xml)
$whereToProjectsAreLocally = $settings.publishing.globals.localprojectdir
Но у меня есть проблема. Как только я запускаю скрипт и проверяю, что все работает по плану, я вижу, что редактирование файла xml (через Notepad++) невозможно. Я получаю сообщение об ошибке, что сохранение не удалось, и я должен проверить, не используется ли файл другим приложением.
Никакие другие приложения, кроме Notepad++ и Powershell ISE, не используют этот файл.
Закрытие ISE не решает проблему (закрытие ISE каждый раз при запуске сценария также не является решением моей мечты).
Закрытие Notepad++ также не решает проблему (хотя самая новая версия запоминает изменения, даже если я их не сохраняю, но это тоже не решение).
Я полагаю, что в фоновом режиме есть что-то вроде XmlReader, которое я не закрыл. Мой вопрос: как закрыть его после чтения содержимого из файла xml?
EDIT: тот же скрипт работает нормально, если xml хранится не на C:\, а в более низком каталоге. Как я могу заставить его работать в корневом каталоге C:\?