wix - wixlib 中的二进制记录
问题描述
我的每个安装程序都使用某些临时 exe 和 dll。在我的 WiX 项目中,我可以将它们放在二进制表中。由于它们在所有项目中共享,是否可以将它们放入 wixlib 中?语法是什么。
我正在使用 PropertyRef 属性对属性做类似的事情。没有对应的 BinaryRef 属性可以对 Binary 表执行相同的操作。
解决方案
没有对应的 BinaryRef 属性可以对 Binary 表执行相同的操作。
对于没有对应 *Ref 元素的元素,您可以使用以下解决方法:
- 在片段中创建一个空
ComponentGroup
元素(这是有效的 WiX 代码)。 ComponentGroupRef
在要引用的位置插入元素Fragment
。这会引入 的全部内容Fragment
,而不仅仅是ComponentGroup
.
例子:
<Fragment>
<ComponentGroup Id="MyBinaries"/>
<Binary Id="Binary1" SourceFile="Files\Binary1.xyz"/>
<Binary Id="Binary2" SourceFile="Files\Binary2.xyz"/>
</Fragment>
要从另一个 .wxs 文件引用 MyBinaries:
<Fragment>
<ComponentGroup Id="SomeComponents">
<ComponentGroupRef Id="MyBinaries"/>
</ComponentGroup>
</Fragment>
推荐阅读
- python - 使用 Python 读取本地 JSON 文件
- swift - 分析语音并采取行动
- php - Paypal 单一支付与 codeignetor 的集成
- infinispan - Infinispan 为什么本地缓存在等待远程响应
- security - 将 oauth2 令牌存储在 UserProperties 中是否安全?
- mongodb - MongoDB项目部分数组元素
- kotlin - 配置 Liquibase Gradle 插件以生成变更集
- c++ - 需要具有以下功能的 bluez API 的替代品
- javascript - Redux - 尽管 JSON.parse() 不更新
- node.js - S3 正在将带有空格和符号的 url 编码为未知格式