相关疑难解决方法(0)

WiX技巧和提示

我们现在已经使用WiX一段时间了,尽管人们普遍抱怨易用性,但它还是相当不错.我正在寻找的是有用的建议:

  • 设置WiX项目(布局,参考,文件模式)
  • 将WiX集成到解决方案和构建/发布流程中
  • 为新安装和升级配置安装程序
  • 任何好的WiX黑客你都想分享

wix wix3 wix3.5

264
推荐指数
23
解决办法
21万
查看次数

什么是wix'KeyPath'属性?

什么是Wix'KeyPath '属性?特别是,它如何适用于以下内容:

<Component Id="ProgramMenuDir" Guid="*">
  <RemoveFolder Id="ProgramMenuDir" On="uninstall" />
  <RegistryValue Root="HKCU" Key="Software\CompName\AppName" 
                 Type="string" Value="" KeyPath="yes" />
</Component>
Run Code Online (Sandbox Code Playgroud)

installer windows-installer wix

120
推荐指数
1
解决办法
3万
查看次数

在wix中更改我的组件GUID?

我应该何时更改或不更改WIX中的组件GUID? Microsoft SDK信息令人困惑.

Glytzhkof编辑:为了澄清,该问题涉及何时应该为MSI组件更改组件GUID.组件可以通过以下方面进行更改:更改目标路径,向/从同一组件添加或删除文件,添加注册表数据等...这会导致所谓的组件引用问题,即最佳实践在MSI中创建组件.

windows-installer wix wix3

26
推荐指数
2
解决办法
2万
查看次数

Wix:在组件,目录,文件,注册表等上使用KeyPath等

看完这个答案的"组件一档"的方式使用WiX的时候,我很好奇,想找出使用时,什么是最好的做法KeyPath上的其他元素的属性,包括Component,Directory,Registry等,等.

我对任何一般性建议感兴趣,但这里有几个具体问题:

  • 如果我有一个安装程序需要创建我应该设置一个空目录KeyPath="yes"Directory或其父Component?如果它不是空的怎么办?
  • 如果文件具有KeyPath="yes"每个组件的文件方案,是否有必要或良好做法在其父组件上设置它?
  • 我在某处读到,不KeyPath应该在文件上设置,而是应该为每个文件使用注册表项并KeyPath="yes"在Registry元素上设置...这是真的/必要吗?

谢谢!

编辑#1 - 澄清重新: Directory

我知道Directory没有KeyPath,但在我的问题中没有明确/详细.主要是,当我必须创建一个空目录时,我很好奇在组件上使用KeyPath.我看到KeyPath ="yes"就是在父Component上设置的.但这足以让安装程序检测/修复丢失的空文件夹吗?或者是否应该与注册表项一起使用?示例代码段:

<Directory Id="LOGS" Name="Logs">
  <Component Id="LogsDir" Guid="*" KeyPath="yes">
    <CreateFolder Directory="LOGS" />
  </Component>
</Directory>
Run Code Online (Sandbox Code Playgroud)

installer windows-installer wix

24
推荐指数
1
解决办法
1万
查看次数

WiX会在安装过程中覆盖配置文件.我怎么能避免这个?

我正在使用WiX来创建Windows安装程序.不幸的是,我的安装程序会在每次更新时覆盖配置文件.我真正想要的是,如果找不到,安装程序只会创建该文件.

谢谢和问候,forki

installer windows-installer wix configuration-files

20
推荐指数
4
解决办法
2万
查看次数