使用 WiX 安装程序的索引文件
Posted
技术标签:
【中文标题】使用 WiX 安装程序的索引文件【英文标题】:Indexed file using WiX installer 【发布时间】:2014-10-27 08:34:59 【问题描述】:我正在开发一个具有一些 Windows 和 ios 功能的安装程序。到目前为止,我们还没有专门的 iOS 安装程序,所以我们开发了一个常规的 Windows 安装程序,然后将 iOS 文件复制到 Mac 计算机上。
我有一个包含以下详细信息的 iOS 文件:
File type: iOS File
Attributes: AI
所以我创建了我的 WiX 文件并收集了那个特定的文件。当我安装我的包并查看这个特定的文件详细信息时,它们会发生一些变化......安装后它看起来像这样:
File type: iOS File
Attributes: A
它丢失了I
部分,并且无法正常工作。在this link、A = Archived
和I=Indexed
之后,我的文件丢失了它的索引部分并且无法正常工作。
使用 WiX,它被安装为常规文件:
<Component Id="cmp02966D4702C4F3FFBDF68F2A392C52F9" Directory="dir354E18D7AD4B72C9165606D96AE25DAB" Guid="2AC77104-550F-4E55-9CCC-95F89C8A6545">
<File Id="filA16E0AF72FB4B00DBBD98D3274DD7C86" KeyPath="yes" Source="$(var.sourceFolder)bin\$(var.ios)\Assemblies\Packages.ios.framework\Versions\A\Packages.ios" />
</Component>
那么... 有什么方法可以使用 WiX 来安装我的文件并保留该索引?
注意:此文件是来自另一个快捷方式的索引文件(我也有复制问题...)。
【问题讨论】:
【参考方案1】:我不认为该软件停止工作是因为缺少 I
属性。更多详情请查看this question。
A
属性由系统设置为自上次备份操作以来已更改的任何文件。因此,当您将文件安装到目标系统时,它被认为是那里的新文件,并且显然不包含在最近的备份中。 A
属性保持不变是很自然的。
I
属性指示系统不要将其包含在系统索引列表中。据我了解,当您安装新文件时,默认行为不会被排除。这就是安装文件中缺少I
属性的原因。
我认为您不应该尝试更改这些属性并让 Windows 完成其工作。此外,深入调查您的 iOS 应用程序的故障 - 我怀疑它与这些属性无关。
【讨论】:
以上是关于使用 WiX 安装程序的索引文件的主要内容,如果未能解决你的问题,请参考以下文章