如何在WIX中的安装标题中显示版本号?

时间:2019-03-18 12:36:49

标签: c# visual-studio wix wix3

我需要在标题中显示版本号以及应用程序名称。

当前看起来像

enter image description here

这是我的wix片段:

<Product Id="$(var.ProductId)" Name="Test Application" Language="1033" Version="$(var.ProductVersion)" Manufacturer="Test1111 Inc" 
       UpgradeCode="C9BC6B42-FCAF-4E96-8F8F-E9D0AC4F393B">

如果我按如下所示更改它(在“名称”属性中附加版本号),它将在所有位置“标题”,“欢迎”文本/描述中显示版本号,但我只想更改“标题”。

<Product Id="$(var.ProductId)" Name="Test Application $(var.ProductVersion)" Language="1033" Version="$(var.ProductVersion)" Manufacturer="Test1111 Inc" 
       UpgradeCode="C9BC6B42-FCAF-4E96-8F8F-E9D0AC4F393B">

我们如何在Wix中完成此任务?

2 个答案:

答案 0 :(得分:2)

WiX UI扩展不允许这种类型的自定义。您有两次机会是

1)define Name =“ Test Application $(var.ProductVersion)”(副作用。程序和功能中两次列出该版本。

2)停止使用WiXUI扩展,而是将https://github.com/wixtoolset/wix3/tree/develop/src/ext/UIExtension/wixlib中的所有代码克隆到您的项目中。

答案 1 :(得分:1)

本地化覆盖 :您可以尝试添加本地化文件,然后覆盖 WelcomeDlgTitle 字符串({{3} }(英语):

  1. 请注意,这假设 Mondo对话框集
  2. 在Visual Studio中右键单击您的WiX项目 => 添加 => 新项目...
  3. 在左侧菜单中选择 WiX v3 。双击 Localization file (通常添加WiX v4文件,请仔细检查)
  4. 将以下字符串添加到本地化文件:

    <?xml version="1.0" encoding="utf-8"?>
    <WixLocalization Culture="en-us" xmlns="http://schemas.microsoft.com/wix/2006/localization">
      <String Id="WelcomeDlgTitle">{\WixUI_Font_Bigger}Welcome to the [ProductName] [ProductVersion] Setup Wizard</String>
    </WixLocalization>
    
  5. 编译和测试

示例对话框

WiX Hello World Sample in Visual Studio

WiX GUI :我对 WiX GUI 感到很困惑,因此我写了这个小概述和“清单”以更好地记住(使用类似的方法来更改对话框条目的样式): Sample WiX Title Change

链接