Заставить установщик Windows игнорировать запущенный процесс

Использование Installshield 2010 и базового проекта MSI.

У меня есть exe, который ранее был установлен моим установщиком. Этот exe-файл должен быть запущен во время обновления установщика. Есть ли способ гарантировать, что установщик не попытается завершить процесс? В принципе, я бы хотел, чтобы поведение было таким: если файл не существует, отложите его, иначе игнорируйте его.

Я сделал exe ключевым файлом в компоненте и установил для него значение «Никогда не перезаписывать». Должно ли это дать мне желаемое поведение?


person Web    schedule 05.04.2011    source источник
comment
Было бы здорово, если бы вы могли объяснить, почему должен использоваться EXE-файл? Это звучит как очень своеобразная стратегия развертывания.   -  person Stein Åsmul    schedule 26.04.2011


Ответы (1)


Никогда не перезаписывать будет использоваться будущими установщиками, чтобы определить, будет ли файл перезаписан другими пакетами MSI или нет. По сути, этот атрибут должен был быть установлен для установленного EXE.

Хороший подход - использовать поиск файлов. чтобы определить, существует ли EXE. Затем свойство поиска можно использовать для кондиционирования нового компонента.

Установщик Windows не закрывает приложения автоматически, но отображает диалоговое окно FilesInUse, в котором пользователю предлагается этот параметр.

person cosmin    schedule 06.04.2011
comment
Итак, в основном я пытался отключить отображение диалогового окна FilesInUse пользователю для этого конкретного приложения. Возможный ? - person Web; 06.04.2011
comment
FilesInUse не отображается, только если нет запущенных приложений, файлы которых необходимо заменить. Таким образом, вы можете попробовать предложенный мной подход, чтобы проверить, отображается ли он по-прежнему, когда условие EXE не выполняется. Если это не сработает, единственное решение - обработать файл вручную вместо того, чтобы позволить установщику Windows обрабатывать его (хранить его где-нибудь, извлекать во время установки и т. Д.). - person cosmin; 06.04.2011
comment
В зависимости от вашей модели обновления вам также может потребоваться пометить файл как постоянный, чтобы при удалении не пытались удалить его. - person Kevin Kibler; 26.04.2011