Как создать минимальный установщик WiX UI без страницы лицензии?

Я внес небольшое изменение в ответ, опубликованный @AnuViswan, чтобы получить каждую запись:

string str = richTextBox1.Text;
        var array = str.Split(new[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
        var regex = new Regex(@"(?<Value>([+-]?(\d*\.)?\d+)+)", RegexOptions.Compiled);
        MatchCollection matches = regex.Matches(str);
        foreach (Match la in matches)
        {
            Console.writeLine(la);
        }
72
задан Yan Sklyarenko 20 September 2016 в 07:03
поделиться

2 ответа

Ключ должен сделать пользовательский UI и поднять трубку различные страницы. Посмотрите страницу на WixWiki

, который Вы хотите захватить WixUI минимальный код и изменить ее немного. Вместо диалогового окна приветствия WelcomeEulaDlg Вы хотите использовать WelcomeDlg. Скорректируйте ссылки и обеспечьте электричеством кнопку Next на WelcomeDlg к следующему диалоговому окну в стеке, который был бы PrepareDlg.

Полный Код:

  <UI Id="WixUI_Minimal">
    <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
    <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" />
    <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />

    <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />
    <Property Id="WixUI_Mode" Value="Minimal" />

    <DialogRef Id="ErrorDlg" />
    <DialogRef Id="FatalError" />
    <DialogRef Id="FilesInUse" />
    <DialogRef Id="MsiRMFilesInUse" />
    <DialogRef Id="PrepareDlg" />
    <DialogRef Id="ProgressDlg" />
    <DialogRef Id="ResumeDlg" />
    <DialogRef Id="UserExit" />

    <!-- This is the welcome dialog you specified-->
    <DialogRef Id="WelcomeDlg" /> 

    <!-- Hook the new welcome dialog to the next one in the stack-->
    <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="PrepareDlg">1</Publish> 

    <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>

    <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>

    <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>

    <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
    <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
    <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>

    <Property Id="ARPNOMODIFY" Value="1" />
  </UI>

  <UIRef Id="WixUI_Common" />
52
ответ дан Samuel Liew 24 November 2019 в 12:36
поделиться

Не использующий высокие технологии способ обойти это состоит в том, чтобы просто установить свойство LicenseAccepted на 1 и поместить некоторую полезную информацию о типе readme в поле лицензии. Это означает, что пользователь не должен нажимать поле, и Вы не должны волноваться о создании дополнительного диалогового окна:)

Пример:

<Property Id="LicenseAccepted" Value="1"/>
11
ответ дан Frank V 24 November 2019 в 12:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: