Winforms ClickOnce:自定义增压器包
我正在尝试为一个点击一次的应用程序创建一个定制的boostrapper包。我已将product.xml+msi包添加到一个文件夹(名为CCSdk),该文件夹是在C:\Program Files(x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages下创建的(我还将该文件夹复制到C:\Program Files(x86)\Microsoft SDK\ClickOnce Bootstrapper\Packages中)。我的product.xml文件非常简单,如下所示:Winforms ClickOnce:自定义增压器包,winforms,clickonce,bootstrapper,Winforms,Clickonce,Bootstrapper,我正在尝试为一个点击一次的应用程序创建一个定制的boostrapper包。我已将product.xml+msi包添加到一个文件夹(名为CCSdk),该文件夹是在C:\Program Files(x86)\Microsoft Visual Studio 14.0\SDK\Bootstrapper\Packages下创建的(我还将该文件夹复制到C:\Program Files(x86)\Microsoft SDK\ClickOnce Bootstrapper\Packages中)。我的product
<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>
我的问题是,当我尝试在发布设置上添加先决条件时,仍然看不到自定义引导程序包
我错过了什么
谢谢
Luis您可以尝试使用引导程序清单生成器生成包并比较输出吗?该工具显然已从MSDN中退役,但仍在此处可用:
在VS中很难做到的事情就是缺少“视觉”的地方。您可以通过从一个与您类似的现有引导程序开始来实现这一点。我推荐vcredist_x86,逐步增加它的功能。您可能会像我一样发现,en\package.xml文件是必需的。DisplayName是必需的。不过,还有更大的问题,您无法在ClickOnce安装中执行MSI。您可以进行安装检查,但用户必须进行下载和运行,因为MSI需要管理员权限。坏消息传得慢。