Как замедлить индикатор выполнения установки в установщике WiX Toolset?

Ну, я не шучу...

мой клиент хочет, чтобы я замедлил процесс установки. Аргументация ясна: если клиенты платят за программное обеспечение столько же, сколько машина среднего класса, они ожидают чуть более 3 секунд. процесс установки...

Есть идеи?

4 ответа

Опыт установки и запуска приложения являются инструментами маркетинга, а сама установка в техническом смысле не является. Это просто дамп файла и некоторые изменения в реестре, и вам нужно отогнать всех маркетологов от вмешательства в его техническую работоспособность. Все остальное принадлежит им для продажи продукта.

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

Следуйте предложениюТома Блоджетта и сделайте первый запуск приложения "умнее", предоставив больше информации о том, как использовать программное обеспечение, какие функции оно предоставляет и тому подобное, и упростите настройку. Я видел успешное использование автоматизации приложений с помощью мастера, такого как генерация данных, представления для демонстрации функций приложения, панели приложений с онлайн-справкой и голосом за кадром. Все виды вещей, которые могут помочь людям быстро работать.

Вот пост с некоторыми абстрактными идеями по вопросу развертывания программного обеспечения как темы, к которой нужно относиться всерьез, как нарушителю условий для отличного в остальном программного обеспечения. И проблема лицензирования, и того, как оно реализовано, также является темой, которая вызывает много проблем для успеха программного обеспечения.

Наконец - и это важно - проблема в том, что корпорации требуют установки вашего программного обеспечения в автоматическом режиме, чтобы они полностью одобрили ваше программное обеспечение в своей сети. Фактически, правильная установка без вывода сообщений и стратегия развертывания могут сделать ваше программное обеспечение предпочтительным по сравнению с другим аналогичным программным обеспечением. Степень, в которой это важно, варьируется в зависимости от ориентации вашего программного обеспечения и типа пользователя, но это всегда должно быть сделано правильно, чтобы ваши настройки не были проблемой маркетинга и продаж в долгосрочной перспективе. Окончательный вывод из всего этого заключается в том, что если ваше программное обеспечение предназначено для крупных корпораций, вам не следует тратить свои усилия на разработку расширенного графического интерфейса для вашей установки, поскольку его, вероятно, никогда не будут использовать в сценариях крупномасштабного развертывания. Скорее вы должны параметризовать ваш установщик с помощью общих свойств, которые можно установить в командной строке или с помощью преобразования, чтобы вашим установщиком можно было легко управлять, не запуская его в интерактивном режиме. Смотрите этот пост: Как лучше использовать файлы MSI.

Одна из техник, которую я использовал для тестирования, заключалась в написании DLL-библиотеки с настраиваемым действием, которая поочередно спала и увеличивала индикатор выполнения. А потом он запустил его в обратном направлении, потому что я тестировал внешние интерфейсы, но вы могли пропустить эту часть. См. MsiProcessMessage для C/C++ API - в частности, посмотрите на INSTALLMESSAGE_PROGRESS и раздел Замечания, и, возможно, INSTALLMESSAGE_ACTIONSTART а также INSTALLMESSAGE_ACTIONDATA если вы хотите показать изменяющийся текст прогресса в то время.

Я не могу себе представить намеренно поместить это в реальную установку (так что, возможно, дать ему легко отключить условие), но это действительно напоминает мне о времени, когда я должен был поместить мультисекундный экран-заставку на демонстрационную версию, которая заняла менее секунды загрузить...

Вы можете пойти в другом направлении: автоматически запустить приложение в конце установки с сообщением:

Начальная настройка завершена. Вы можете начать использовать приложение прямо сейчас. Дополнительные функции будут установлены в фоновом режиме по мере необходимости.

Сравните с установщиком Office 365. (Но обязательно предоставьте административную установку, которая окончательно выполнит "полную установку".)

Это странная просьба, учитывая, что все мы пытаемся как-то ускорить процесс. Имеет смысл, хотя:)

В любом случае попробуйте использовать настраиваемое действие ССЫЛКА " Выполнение"

Что-то вроде этого:

<Property Id="QtExecCmdLine" Value="command line to run"/>
<CustomAction Id="QtExecExample" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="immediate" Return="check"/>
.
.
.
<InstallExecuteSequence>
  <Custom Action="QtExecExample" After="TheActionYouWantItAfter"/>
</InstallExecuteSequence>

Измените строку "Командная строка для запуска" на выше, чтобы сделать что-то вроде: "ping -n 5 localhost". -n 5 попробую сделать пинг 5 раз. Или вы можете использовать TIMEOUT.

Надеюсь, поможет.

Другие вопросы по тегам