wix - 从 WiX 中的 64 位 MSI 包写入 32 位目录的 hack
问题描述
是否有任何解决方案可以将文件从WiX-toolset中的 64 位 MSI 包写入 32 位目录
解决方案
众所周知,64 位 MSI 软件包无法写入 32 位目录。所以我们需要单独的 32 位和 64 位 MSI。
我的解决方案:
我想出了将文件从 64 位 MSI 包复制到 32 位目录的技巧:
<!--"System64Folder"-->
<Directory Id="System64Folder">
<Component Id="text1_comp" Guid="PUTYOURGUIDHERE" Win64="yes">
<File Source=".\SetupFiles\textFile.txt" Id="textFile1" KeyPath="yes" />
</Component>
</Directory>
<!--"System32Folder"-->
<Directory Id="WindowsFolder">
<Directory Id="SystemFolder_x86" Name="SysWOW64">
<Component Id="text2_comp" Guid="PUTYOURGUIDHERE" Win64="yes">
<File Source=".\SetupFiles\textFile.txt" Id="textFile2" KeyPath="yes" />
</Component>
</Directory>
</Directory>
如您所见,这个想法是引用WindowsFolder然后引用SysWOW64。这样我们的文件“textFile.txt”将被复制到System32和SysWOW64文件夹中。
推荐阅读
- python - 没有包的 Python 中的序列整数矩阵
- haskell - Haskell、PatternSynonyms、COMPLETE pragma 和 View Patterns
- python - 如何通过 Python 代码运行 Powershell 并运行 .exe 文件?
- python - 我应该如何优化我的代码?- 从排序的链表中删除重复值节点
- java - AlarmManager 无法调用我的 BroadcastReceiver
- spring-boot - 如何在多个 spring-boot 微服务模块之间共享“UserContext”?
- apache-spark - 如何选择 Pyspark 列并将其作为新行附加到数据框中?
- java - Android - Firebase RTDB 检索和显示数据
- r - 根据年龄计算出生日期
- android - 使用 Google 搜索小部件时,CountDownTimer 在 Android 应用程序内停止?