gpt4 book ai didi

properties - 如何在 WiX 中使用 SourceDir MSI 属性?

转载 作者:行者123 更新时间:2023-12-03 13:09:52 26 4
gpt4 key购买 nike

使用 WiX,我如何检测 SourceDir 中是否存在特定文件?文件夹?

我有以下 WiX 片段,旨在确定 Adobe Reader 安装程序是否已分发到与我的 MSI 文件相同的文件夹中,如果是,请在安装后运行它。

<Property Id="ADOBEREADERINSTALLER">
<DirectorySearch Id="SourceDir" Path="[SourceDir]" Depth="0" AssignToProperty="yes">
<FileSearch
Id="AdbeRdr810_en_US.exe"
Name="AdbeRdr810_en_US.exe"
MaxDate="2011-03-24T13:18:59" MaxSize="23402288" MaxVersion="1.0.0.92"
MinDate="2011-03-24T13:18:00" MinSize="23402288" MinVersion="1.0.0.92"
/>
</DirectorySearch>
</Property>
<Property Id="INSTALLADOBEREADER" Value="1" />

<CustomAction
Id ="InstallAdobeReader"
Property ="ADOBEREADERINSTALLER"
ExeCommand =""
Execute ="immediate"
Return ="asyncNoWait" />

<InstallUISequence>
<ResolveSource After="CostInitialize"> UPGRADINGPRODUCTCODE OR NOT Installed </ResolveSource>
</InstallUISequence>

<InstallExecuteSequence>
<Custom Action="InstallAdobeReader" After="InstallFinalize"> (UPGRADINGPRODUCTCODE OR NOT Installed) AND ADOBEREADERINSTALLER AND INSTALLADOBEREADER </Custom>
</InstallExecuteSequence>

看来 AppSearch 操作(执行 DirectorySearchFileSearch)必须在 ResolveSource 之前发生操作(设置 SourceDir 的值。)这让我陷入倒退的境地。

最佳答案

解决方案是在 ResolveSource 之后立即使用自定义操作而不是搜索。此自定义操作可以检查文件是否存在并将结果保存在您的自定义安装程序属性中。

要访问安装程序属性,您可以使用 win32 DLL或 VBScript 自定义操作。

关于properties - 如何在 WiX 中使用 SourceDir MSI 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8237051/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com