从 Bootstrapper 卸载时卸载 MSI 包
Uninstall MSI package when uninstalling from Bootstrapper
我有一个将安装 MSI 包的引导程序。但是卸载Bootstrapper时,并不会卸载之前Bootstrapper安装的MSI。
如何在卸载引导程序的同时卸载 MSI 软件包?以下是我在 Bootstrapper 中安装 MSI 包的方法。如何增强此代码以在卸载时卸载此 MSI 包?
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Bundle Name="Name" Version="1.0.0.0" Manufacturer="MyCompany" UpgradeCode="00000000-0000-0000-0000-000000000000" DisableModify="yes" DisableRepair="yes" >
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense">
<bal:WixStandardBootstrapperApplication
LicenseUrl=""
ThemeFile=".\Theme\RtfTheme.xml"
LocalizationFile=".\Theme\RtfTheme.wxl"
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" />
<Payload SourceFile=".\Images\Logo.gif" />
</BootstrapperApplicationRef>
<Chain>
<PackageGroupRef Id="MyMSI"/>
</Chain>
</Bundle>
<Fragment>
<PackageGroup Id="MyMSI">
<MsiPackage Id="MyMSI"
DisplayName="My applicaton"
DisplayInternalUI="yes"
Compressed="no"
Visible="yes"
InstallSize="549"
Cache="yes"
Vital="yes"
Permanent="no"
SourceFile="$(var.MyAppllicationWIX_MSI.TargetPath)"/>
</PackageGroup>
</Fragment>
</Wix>
可能是你的注册表不好,检查%temp%文件夹分区计划中的日志。
日志文件将指出 MSI 是否仍被另一个 Bundle 引用计数。
如果您是 运行,则 VM 上的测试会尝试在 运行 此捆绑包测试之前重置为最新的检查点。
有时当产品 ID 为 * 时也会发生这种情况。
我有一个将安装 MSI 包的引导程序。但是卸载Bootstrapper时,并不会卸载之前Bootstrapper安装的MSI。
如何在卸载引导程序的同时卸载 MSI 软件包?以下是我在 Bootstrapper 中安装 MSI 包的方法。如何增强此代码以在卸载时卸载此 MSI 包?
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
<Bundle Name="Name" Version="1.0.0.0" Manufacturer="MyCompany" UpgradeCode="00000000-0000-0000-0000-000000000000" DisableModify="yes" DisableRepair="yes" >
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense">
<bal:WixStandardBootstrapperApplication
LicenseUrl=""
ThemeFile=".\Theme\RtfTheme.xml"
LocalizationFile=".\Theme\RtfTheme.wxl"
xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" />
<Payload SourceFile=".\Images\Logo.gif" />
</BootstrapperApplicationRef>
<Chain>
<PackageGroupRef Id="MyMSI"/>
</Chain>
</Bundle>
<Fragment>
<PackageGroup Id="MyMSI">
<MsiPackage Id="MyMSI"
DisplayName="My applicaton"
DisplayInternalUI="yes"
Compressed="no"
Visible="yes"
InstallSize="549"
Cache="yes"
Vital="yes"
Permanent="no"
SourceFile="$(var.MyAppllicationWIX_MSI.TargetPath)"/>
</PackageGroup>
</Fragment>
</Wix>
可能是你的注册表不好,检查%temp%文件夹分区计划中的日志。 日志文件将指出 MSI 是否仍被另一个 Bundle 引用计数。
如果您是 运行,则 VM 上的测试会尝试在 运行 此捆绑包测试之前重置为最新的检查点。
有时当产品 ID 为 * 时也会发生这种情况。