Элементы WiX IIS : Если это все IIS , я бы по возможности избегал сценариев и пользовательских действий и использовал бы встроенные элементы IIS WiX. Вот пример веб-установщика от Rainer Stropek , доступный на github.com .
Ищите <iis:WebVirtualDir ... />
и соавт. Найти документацию по WiX можно здесь . Я считаю, что вы должны быть в состоянии выполнить то, что вам нужно, без слишком большого количества пользовательских действий.
DISM.exe : сам Стропек использует настраиваемые действия в другом исходном примере, чтобы настроить IIS с помощью DISM.exe . Не уверен, что я сделал бы это так (других предложений нет), но это пример пользовательских действий и IIS.
Need-For-Speed : что касается проблем с производительностью установки. Может быть, вам нужно подавить создание точки восстановления и ограничить стоимость файла? Механизм установщика Windows позволяет это - см. Ссылку ниже. Я сомневаюсь, что это будет очень эффективно, хотя. Я думаю, что в вашем инсталляторе должно быть что-то не так. Какой-то тайм-аут? Это может быть связано с другими пользовательскими действиями, медленной сетью или другими проблемами. Можете ли вы уточнить сценарий развертывания?
В любом случае, вот некоторая документация по ускорению установки MSI в целом . По сути, я бы рекомендовал только свойство MSIFASTINSTALL
. DISABLEROLLBACK
может вызвать серьезные проблемы.
Ведение журнала : я обычно рекомендую разработчикам установки включить подробное ведение журнала MSI по умолчанию - как описано в "Globally for all setups on a machine
", чтобы всегда иметь готовый файл журнала, когда он вам нужен. Он создается со случайным именем для каждой операции MSI в TEMP folder
, и вы сортируете по изменениям, чтобы получить последнее. Файл журнала может дать понять, почему установка происходит медленно - просто определите, что на самом деле происходит. Извините, если это просто очевидные мелочи, и вы уже настроили это.
Создание файла журнала вручную :
msiexec.exe /i C:\Path\Your.msi /L*v C:\Your.log
Интерпретация журнала MSI : интерпретация файла журнала иногда может быть сложной. Вот ответ с некоторыми ссылками, чтобы помочь с этим .