Как скачать лицензионное соглашение и показать его во время выполнения в установщике WiX? - PullRequest
1 голос
/ 25 июня 2019

У меня есть проект установщика WiX.Согласно требованию, я должен загрузить лицензионное соглашение с веб-сервера во время выполнения и показать его во время установки.Как мы можем достичь этого?
Я пытался использовать пользовательские действия, но безуспешно.

1 Ответ

2 голосов
/ 25 июня 2019

Я написал сообщение в блоге около 11 лет назад, в котором описывается это:

http://blog.iswix.com/2008/07/dynamic-windows-installer-ui.html

В основном MSI имеет понятие временных данных, как обсуждалось здесь.

https://docs.microsoft.com/en-us/windows/desktop/msi/sql-syntax

Я не проверял это, но похоже, что UPDATE не поддерживает TEMPORARY, но INSERT INTO поддерживает.

Идея состоит в том, что вы создаете свой MSI и помещаете шаблон RTF в элемент управления ScrollableText. Определите условие элемента управления, чтобы оно было невидимым, если установлено свойство.

Затем в настраиваемом действии, запланированном перед WelcomeDlg, вы загружаете RTF-замену из веб-службы и динамически определяете элемент управления в диалоговом окне с RTF-заменой и условием condtrol, чтобы этот элемент управления отображался, если установлено свойство. Наконец, установите свойство для переопределения одного элемента управления другим.

Но, честно говоря ... Я не уверен, что потрудился бы сделать это. Во-первых, есть способы использования HyperLink для отключения EULA от установщика и / или удаления EULA из установщика, чтобы приложение показывало его при первом запуске, как предложил Stain.

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

Тем не менее ... если вы действительно хотите это сделать ... вот как это будет сделано.

...