【发布时间】:2018-03-14 14:29:26
【问题描述】:
我正在尝试为单击一次应用创建一个自定义的 boostrapper 包。我已将 product.xml+msi 包添加到在 C:\Program Files (x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages 下创建的文件夹(名为 CCSdk)中(我还复制了文件夹到 C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages)。我的 product.xml 文件相当简单,如下所示:
<Product xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper" ProductCode="CCSdk">
<RelatedProducts>
<DependsOnProduct Code=".NETFramework,Version=v4.5" />
</RelatedProducts>
<PackageFiles>
<PackageFile Name="PteidMW-Basic-64.msi"/>
</PackageFiles>
<InstallChecks>
<MsiProductCheck Property="IsMsiInstalled" Product="{824563DE-75AD-4166-9DC0-B6482F205284}"/>
</InstallChecks>
<Commands>
<Command PackageFile="PteidMW-Basic-64.msi" Arguments="">
<InstallConditions>
<BypassIf Property="IsMsiInstalled" Compare="ValueGreaterThan" Value="0"/>
<FailIf Property="AdminUser" Compare="ValueNotEqualTo" Value="True" String="NotAnAdmin"/>
</InstallConditions>
<ExitCodes>
<ExitCode Value="0" Result="Success"/>
<ExitCode Value="1641" Result="SuccessReboot"/>
<ExitCode Value="3010" Result="SuccessReboot"/>
<DefaultExitCode Result="Fail" String="GeneralFailure"/>
</ExitCodes>
</Command>
</Commands>
</Product>
我的问题是,当我尝试在发布设置上添加先决条件时,我仍然看不到自定义引导程序包。
我错过了什么?
谢谢
路易斯
【问题讨论】:
-
在 VS 中很难做的事情是缺少“视觉”的事情。您可以通过从与您的类似的现有引导程序开始来追踪这一点。我推荐 vcredist_x86,逐渐添加它的功能。您可能会像我一样发现 en\package.xml 文件是必需的。 DisplayName 是必不可少的。但是还有更大的问题,您无法在 ClickOnce 安装中执行 MSI。您可以进行安装检查,但用户必须进行下载和运行,因为 MSI 需要管理员权限。坏消息传播缓慢。
标签: winforms clickonce bootstrapper