[wix-devs] 4822 - Delay ARP registration in Bundles until a non-permanent package is installed

Sean Hall r.sean.hall at gmail.com
Sun Jun 28 04:17:12 PDT 2020


I'm interested in implementing
https://github.com/wixtoolset/issues/issues/4822. This is the hard scenario
that needs to be solved:

1. User starts the per-machine bundle on a clean machine.
2. The bundle has an MBA and needs to install the .NET Framework.
3. The bundle caches itself into the package cache.
4. The bundle registers in ARP.
5. The bundle creates a RunOnce key.
6. The bundle installs the permanent .NET package, which requires a reboot.
7. The bundle updates the RunOnce key to resume after the reboot.
8. The user allows the prereq BA to reboot the machine.
9. RunOnce starts the bundle elevated.

Because RunOnce always starts the target program elevated, we need to cache
the bundle into the package cache (or other protected area) to be secure.
In order to allow the user to clean up their machine, we are registering in
ARP to give them a way to clean the cache.

If we want to implement this feature, I think we're going to have to allow
the possibility of the bundle being cached without an ARP entry. Either
Burn removes the ARP registration somewhere between 6 and 8, or it never
registers in the first place (because all planned packages are permanent).
Is this acceptable or is this feature not possible?


More information about the wix-devs mailing list