2013-04-26 4 views
1

Привет Я пишу скрипт nsis для установщика патча. Перед установкой копий новых файлов мне нужно проверить, не использует ли какой-либо процесс файлы, которые я хочу заменить, и я хочу переименовать эти файлы в tmp и удалить их при перезагрузке. Есть ли способ, которым установщик может обнаружить, что если какой-либо процесс использует эти файлы (в моем случае файлы, которые я собираюсь установить, являются dll).Как проверить, заблокирован ли файл/используется другим процессом NSIS

ответ

0

В NSIS нет родного пути, как это сделать. Но есть сторонние инструменты, которые могут обнаруживать DLL, используемые определенным процессом - возможно, вы могли бы использовать их в своем установщике.

Но мой вопрос: вам действительно нужно это обнаружить?

Как насчет удаления файлов напрямую с помощью Удалить/REBOOTOK файл command? (http://nsis.sourceforge.net/Docs/Chapter4.html#4.9.4.11)

Если указано/REBOOTOK, и файл не может быть удален, тогда файл будет удален при перезагрузке системы.

Смежные вопросы