如何允许部分卸载 WiX Burn Bundle?
How to allow WiX Burn Bundle to be partially uninstalled?
目前我有一个 WiX/Burn 自定义托管引导程序应用程序,允许用户有选择地安装和卸载不同的 MsiPackages。处理它的代码看起来像这样。
private void PlanPackageBegin(object sender, PlanPackageBeginEventArgs args)
{
var app = applicationViewModels.FirstOrDefault(app => app.PackageID == args.PackageId);
if (app == null)
{
return;
}
switch (Mode)
{
case InstallMode.Install:
if (!app.Install)
{
e.State = RequestState.None;
}
break;
case InstallMode.Uninstall:
if (!app.Uninstall)
{
e.State = RequestState.None;
}
break;
case InstallMode.Repair:
if (!app.Repair)
{
e.State = RequestState.None;
}
break;
}
}
我遇到的问题是,如果只卸载一个应用程序,那么整个托管引导程序应用程序都会从 Add/Remove 程序中删除,并且无法再管理安装。
如何强制保留捆绑包,直到它的所有包都被删除?
调用计划和应用时使用修改操作。
目前我有一个 WiX/Burn 自定义托管引导程序应用程序,允许用户有选择地安装和卸载不同的 MsiPackages。处理它的代码看起来像这样。
private void PlanPackageBegin(object sender, PlanPackageBeginEventArgs args)
{
var app = applicationViewModels.FirstOrDefault(app => app.PackageID == args.PackageId);
if (app == null)
{
return;
}
switch (Mode)
{
case InstallMode.Install:
if (!app.Install)
{
e.State = RequestState.None;
}
break;
case InstallMode.Uninstall:
if (!app.Uninstall)
{
e.State = RequestState.None;
}
break;
case InstallMode.Repair:
if (!app.Repair)
{
e.State = RequestState.None;
}
break;
}
}
我遇到的问题是,如果只卸载一个应用程序,那么整个托管引导程序应用程序都会从 Add/Remove 程序中删除,并且无法再管理安装。
如何强制保留捆绑包,直到它的所有包都被删除?
调用计划和应用时使用修改操作。