Wix 设置中的警告

2023-12-04

我是 Wix 工具包的新手。我正在使用 Wix Toolkit 为我的应用程序创建一项设置。 但是当我尝试使用 Wix 构建它时。它显示此警告。

C:\Users\BNK\Desktop\wix - popup\setup.wxs(60) :警告 LGHT1076 : ICE69:组件参考不匹配。条目“FCONStartMenuShortcut” 快捷方式表的属性属于组件“FCONShortcut”。然而, “Tar get”引用文件列中的格式化字符串 “FCONUCClient.exe”属于组件“FCONUCClient .exe”。 组件具有相同的功能。

谁能告诉我我的代码有什么问题吗? 这是 Wix 设置代码...

<?xml version='1.0' encoding='windows-1252'?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi' >

  <Product Name='FCON UC Client 1.0.9' Id='PUT-GUID-HERE' 
          UpgradeCode='PUT-GUID-HERE'
          Language="'1033'" Codepage='1252' Version='1.0.9' 
          Manufacturer='BNK Systems JLT' >
    <!-- Product Info-->

    <Package Id='*' Keywords='Installer' Description="FCON UC Client 1.0.9"
      Comments='All Rights Reserved BNK Systems JLT.' 
      Manufacturer='BNK Systems JLT' InstallerVersion='100' Languages='1033'
      Compressed='yes' SummaryCodepage='1252' />
    <!-- Package Info-->
    <Media Id='1' Cabinet='Sample.cab' EmbedCab='yes' DiskPrompt='CD-ROM #1' />
    <!-- Setup is CDROM Installer Package-->
    <Property Id='DiskPrompt' 
              Value="BNK Systems JLT FCON UC Client Installation" />
    <!-- Definition for DiskPrompt used in Media above -->

    <Directory Id="TARGETDIR" Name="SourceDir">
      <!--  Directory Structure Root -->
      <Directory Id="ProgramFilesFolder">
        <!-- Install the Package in Program Files Folder -->
        <Directory Id="APPLICATIONROOTDIRECTORY" Name="BNK Systems">
          <!-- Create a Folder namely BNK Systems  inside Program Files ; Id APPLICATIONROOTDIRECTORY can be defined later-->
          <Directory Id="APPLICATIONFILEDIRECTORY" Name="FCON UC Client">
            <!-- Create a Folder namely FCON UC Client inside BNK Systems; Id APPLICATIONFILEDIRECTORY can be defined later -->

          </Directory>
        </Directory>
      </Directory>

      <Directory Id="ProgramMenuFolder">
        <!-- Program Files StartMenu Folder-->
        <Directory Id="FCONStartMenuFolder" Name="BNK Systems"/>
      </Directory>
    </Directory>

    <DirectoryRef Id="APPLICATIONFILEDIRECTORY">
      <!-- Definition of Directory APPLICATIONFILEDIRECTORY  -->
      <Component Id="FCONUCClient.exe" Guid="*">
        <!-- Application files & settings to be installed goes here-->
        <File Source="FCON UC Client.exe" KeyPath="yes" Checksum="yes"/>
        <File Source="Asterisk.NET.dll" />
        <File Source="Dotnetrix.TabControl.dll" />
        <File Source="FCON UC Client.exe.manifest" />
        <File Source="jabber-net.dll" />
        <File Source="muzzle.dll" />
        <File Source="netlib.Dns.dll" />
        <File Source="zlib.net.dll" />
        <File Source="inittrial.exe" />
     </Component>
    </DirectoryRef>

    <DirectoryRef Id="FCONStartMenuFolder">
      <Component Id="FCONShortcut" Guid="*">
        <Shortcut Id="FCONStartMenuShortcut"
                     Name="FCON UC Client 1.0.9"
                   Description="FCON UC Client 1.0.9"
                    Target="[#FCONUCClient.exe]"
                          WorkingDirectory="APPLICATIONFILEDIRECTORY"/>
       <RemoveFolder Id="FCONStartMenuFolder" On="uninstall"/>

       <RegistryValue Root="HKCU" Key="Software\Microsoft\FCONUCClient" 
                      Name="installed" Type="integer" Value="1" KeyPath="yes"/>

      </Component>
    </DirectoryRef>

    <!-- Step 3: Tell WiX to install the files -->
    <Feature Id="InstallFCON" Title="FCON UC Client 1.0.9" Level="1">
      <ComponentRef Id="FCONUCClient.exe" />
      <!--<ComponentRef Id="documentation.html" />-->
      <ComponentRef Id="FCONShortcut" />
    </Feature>

  </Product>
</Wix>

一些忠告根据经验:

  • 每个组件使用一个文件,这样可以避免各种问题(例外:多文件 .net 程序集应放在一个组件中。也可能存在其他例外,但作为一般规则:每个组件一个文件)。
  • 将快捷方式添加到它们引用的文件所在的同一组件。在您的情况下,这意味着将 FCONStartMenuShortcut 移动到 FCONUCClient.exe 组件。
  • 仅检查每个组件的密钥文件以确定是否应安装整个组件。当您将多个文件放入同一组件中时,这意味着如果未升级密钥文件,则升级中不会更新任何文件。这违反了微软的最佳实践规则(组件规则)。

请浏览一下这些网站,以帮助您评估该技术:

  • http://wix.tramontana.co.hu/
  • http://wixtoolset.org/documentation/manual/v3/main/wix_learning.html
  • http://www.codeproject.com/Tips/105638/A-quick-introduction-Create-an-MSI-installer-with (nice 基于代码的一、对于“修补匠“ 取得良好的开端)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Wix 设置中的警告 的相关文章

随机推荐

  • 如何安装本地 gem?

    如果我将 gem 文件下载到计算机中的某个文件夹中 我可以稍后使用它进行安装吗gem install 另外 您可以使用gem install local path to gem filename gem 这将跳过您离开时发生的通常的 gem
  • 从 VBA 调用 Python 脚本

    我在 Excel 中从 vba 调用 python 脚本时遇到问题 我阅读了解决相同问题的其他线程 但是当我运行代码时 Python 屏幕闪烁 然后消失 仅供参考 我下载了适用于 Windows 10 的 python 3 6 5 并将其添
  • 使用 JavaScript 中的 Dart 类

    我有一个 Dart 类 foo dart class Foo void talk print Hello 将 foo dart 编译为 JavaScript 后 我 希望能够像这样使用 Foo var foo new Foo from fo
  • java.lang.NoClassDefFoundError:org/apache/commons/lang/Validate

    为什么会发生以下情况以及如何解决 Exception in thread main java lang NoClassDefFoundError org apache commons lang Validate at org jsoup D
  • Pygame 如何修复“尾随像素”?

    在图像中 红色轨迹是当我在精灵周围添加边界矩形时 pygame 创建的轨迹 精灵也可以做到这一点 最简单的解决方案是在每次重绘后将表面清除为黑色 然而 尝试在整个主表面上这样做并不是一个好主意 我怎样才能解决这个问题 通常你会这样做 def
  • Java 中 for 循环转换为 while 循环

    我需要将这个 for 循环转换为 while 循环 这样我就可以避免使用中断 double array new double 100 Scanner scan new Scanner System in for int index 0 in
  • 单击 Facebook 通知后应用程序启动时,请求 ID 不可用

    Facebook 应用程序是使用 iOS 本机应用程序设置的 并使用另一个应用程序的捆绑 ID 和应用商店 ID 启用 在当前情况下 以下是可能的 1 向朋友发送应用程序请求 2 请求徽章出现在好友的Facebook中 3 单击请求将启动我
  • ftplib.error_perm: 553 无法创建文件。 (Python 2.4.4)

    我正在写入我要通过 FTP 访问的用户的主目录 因此权限应该不是问题 FTP 在 FileZilla 中运行 我检查了 vsftp conf 并做了local enable YES change On a Debian4使用 Python
  • 在 Angular2 中设置选定的属性

    我有选择组 我想为具有特定 id 的对象设置选定属性 我试图在功能上改变这种情况 但没有帮助 即使我只是简单地设置 attr selected true 这也没有帮助 div class form group div
  • 检查给定区域中是否存在包含 4 个顶点的点

    指的是http www weather gov directives sym pd01008006curr pdf 第 8 页 我们在地理坐标系 纬度和经度系统 中给出了一个具有四个顶点的区域 我想检查该区域内是否存在具有特定纬度和经度的点
  • Application Insights 如何跟踪 User_Id?

    我正在运行具有应用程序洞察力的 Azure Web 应用程序 我知道微软无法显示真实IP Client IP 所以我将真实IP地址添加到所有请求 Ip 我有一个访客 client id h9zbt 在过去 24 小时内使用 48 个不同的
  • 更新后“主页”类别页面无法使用

    版本 1 4 1 4 的 prestashop 网站正在与category php类别页面的文件 不幸的是 1 6 0 6 的更新删除了该文件 因为它已被视为已弃用 CMS 更新后 URL 结构发生变化 后果之一是 URL 结构发生变化 f
  • Rails-4 中不区分大小写的活动记录查询

    目前我正在 Rails 4 中的一个项目中工作 其中我在 example com username 上有一个用户页面 但如果我在正确的情况下使用用户名 它只会找到记录 如何在活动记录 Rails 中执行不区分大小写的搜索 看看我下面的代码
  • 当使用 Python 处理一个巨大的 CSV 并突然停止时,“killed”是什么意思?

    我有一个 Python 脚本 它导入一个大型 CSV 文件 然后计算文件中每个单词的出现次数 然后将计数导出到另一个 CSV 文件 但正在发生的事情是 一旦计数部分完成并开始导出 它就会说Killed在终端中 我不认为这是一个内存问题 如果
  • 如何从 Google Earth Engine python api 迭代并下载图像集合中的每个图像

    我是 Google Earth Engine 的新手 试图了解如何使用 Google Earth Engine python api 我可以创建一个图像集 但显然getdownloadurl 方法仅适用于单个图像 所以我试图了解如何迭代并下
  • “是”报告子进程通信错误()

    我正在使用以下函数在 Python 中运行命令 def run proc cmd child subprocess Popen cmd shell True stdout subprocess PIPE stderr subprocess
  • 使用变量值调用数组元素

    我有一个字符串变量 其中包含数组的名称 我想做的是访问该数组的一个元素 并将其写入另一个变量 我怎样才能做到这一点 var sample new Array sample 0 one sample 1 two var arrayname s
  • OpenId 与桌面应用程序?

    我们正在使用来自提供商的 API 在他们的下一个版本中 他们将提供 OpenId 服务器 但大多数用户正在使用他们的桌面应用程序 我们正在构建的另一个网站将从该应用程序打开 并且我们应该与 openid 连接以访问存储在该提供程序中的资源
  • 画布 - 移动图像问题

    我的使用画布的脚本有问题 我想移动我的图像 但使用drawImage图像移动 但结果是这样的 所以 我的代码是 function desenhaBonecoDir var ctxt document getElementById camad
  • Wix 设置中的警告

    我是 Wix 工具包的新手 我正在使用 Wix Toolkit 为我的应用程序创建一项设置 但是当我尝试使用 Wix 构建它时 它显示此警告 C Users BNK Desktop wix popup setup wxs 60 警告 LGH