对于SQL数据库安装维克斯自定义UI(Wix custom UI for SQL Database

2019-07-29 17:50发布

这是我的第一个WiX工程。 我下载威克斯3.6 RC。 我安装工程包括2 WCF和Silverlight的1个项目。 一切工作正常使用默认维克斯UI。 但现在,我需要SQL数据库添加到它。 它的工作原理罚款像下面的默认值:

                  <Component Id='SqlComponent' Guid='8B72C159-1477-4A58-AFAE-E94D756BFFA6'>
                    <CreateFolder/>
                    <sql:SqlDatabase Id='SqlDatabase' Database='master' Server='.'
                      CreateOnInstall='yes' DropOnUninstall='no' ContinueOnError='yes'>
                      <sql:SqlScript Id='CreateTable' BinaryKey='CreateTable' ExecuteOnInstall='yes' />
                      <sql:SqlScript Id='CreateTable1' BinaryKey='CreateTable1' ExecuteOnInstall='yes' />
                    </sql:SqlDatabase>
                  </Component>

但我需要提出一个用户界面,用于SQL数据库的路径,数据库名,用户名和密码,如果没有指定用户名和密码,然后使用Windows用户。

刚看到如何添加自定义UI我试过如下:但它显示自定义UI的时候了。 但我希望它仅适用于SQL数据库安装专门展示。

<Control Id="Title" Type="Text" X="15" Y="6" Width="200" Height="15" Transparent="yes" NoPrefix="yes">
  <Text>Ready to Install</Text>
</Control>

<Control Id="Install" Type="PushButton" X="304" Y="243" Width="56" Height="17"
    Default="yes" Text="Install">
  <Publish Event="EndDialog" Value="Return" />
</Control>

我想,一旦我得到它的确切显示自定义UI,我想,我的下一个要求是要能够获取用户输入数据库的路径,名称,用户名和密码,并通过这些信息的脚本。 我不知道怎么做,要么。

Answer 1:

阅读上在的.chm的WiX的UI扩展。 选择对话框中设置最适合您的安装程序。 然后你就可以相应地定制。 让我们假设你想定制WixUI_Advanced对话框中设置:

  • 下载维克斯源代码
  • 导航到位于所述UI扩展名的源代码src\ext\UIExtension\wixlib
  • 将文件复制并* WixUI_Advanced.wxs *的东西不同的命名,如* WixUI_Advanced_Custom.wxs *。
  • 打开.wxs文件,并确保至UI标识重命名为<UI Id="WixUI_Advanced_Custom">
  • 添加* WixUI_Advanced_Custom.wxs *您的设置项目。

现在,你可以参考一下您的自定义对话框中设置就像你引用其他对话框中设置的UI扩展。 但是,用户界面是不是很定制的,它只是提供了相同的功能WixUI_Advanced对话集。 要添加一个新的对话框,您需要创建使用的WiX源作为例子,新.wxs。 看任何在对话框中的src\ext\UIExtension\wixlib寻求帮助。 然后引用你的对话框中* WixUI_Advanced_Custom.wxs *通过添加和修改<Publish>元素,以确定当被显示的对话框。



Answer 2:

最后,我发现这里的WiX大开眼界的文章如何添加自定义UI

经过长期的斗争,以了解WiX的作品,上面的链接到CodeProject帮助我理解。 尤其是介绍创建UI(该文章中MyWebUI.wxs)的部分是生命的救星。



文章来源: Wix custom UI for SQL Database installation
标签: wix