Как писал здесь mrnx, эта проверка запуска приложений происходит во время InstallValidate .
Но останавливать приложения до этого не очень хорошая идея. Другие проверки могут быть неудачными, и MSI должна иметь возможность восстановить систему до состояния, в котором она находилась до запуска MSI, включая запущенные приложения.
Кроме того, эти проверки выполняются как "немедленные", а не "отложенные".
Настраиваемые действия IMO для остановки приложений должны выполняться непосредственно перед " RemoveFiles " и " deferred ", чтобы убедиться, что он запускается как администратор.
Теперь, чтобы диалоговое окно не показывало, можно использовать следующее свойство:
<Property Id="MSIRESTARTMANAGERCONTROL" Value="Disable" />
В моем понимании все равно будет возвращаться к диалогу FilesInUse во время RemoveFiles , если они все еще будут использоваться в то время.