Powertoys: 0.20.1 auto-updater to 0.21.1 asks for PowerToysBootstrappedInstaller-0.20.1.0.msi

Created on 3 Sep 2020  ·  11Comments  ·  Source: microsoft/PowerToys

0.20.1 auto-updater to 0.21.1 asks for PowerToysBootstrappedInstaller-0.20.1.0.msi

ℹ Computer information

  • PowerToys version: 0.20.1.0 (while updating to 0.21.1.0)
  • PowerToy Utility: Installer
  • Running PowerToys as Admin: Yes
  • Windows build number: 19041.450

📝 Provide detailed reproduction steps (if any)

  1. Open PowerToys Settings
  2. Got to 'General' tab
  3. Click 'Check for updates
  4. Click 'update now' in the action center message to confirm 0.20.1.0>0.21.1.0 update
  5. Start installation by clicking Next>Next>Next>Install and confirming UAC dialog

✔️ Expected result

Installer removes version 0.20.1.0 and installs 0.21.1.0.

❌ Actual result

Installer (MSI) asks for missing 'PowerToysBootstrappedInstaller-0.20.1.0.msi' (The feature you are trying to use is on a network resource that is unavailable). The installer MSI provided by the 0.20.1.0 release is not accepted.
I cannot find this file, so I press Cancel, then a message appears:
"The older version of PowerToys (Preview) cannot be removed. Contact your technical support group."
After which the installation stops (PowerToys (Preview) Setup Wizard ended prematurely) and PowerToys is not updated.

📷 Screenshots

image

Area-SetuInstall Issue-Bug Resolution-Won't fix

Most helpful comment

Fixed.
I simply renamed the boostrapped installer instance in %temp% for another version (to v0.20.0.0) as I needed for my installation.
The installer package was able to delete the renamed msi file and completed the update to 0.21.1.0

Thus bypassing the erroneous file location and user that no longer exists on this machine.

All 11 comments

@RoL0NL
if you manually download and install https://github.com/microsoft/PowerToys/releases/download/v0.21.1/PowerToysSetup-0.21.1-x64.exe
does it work?

No, I got the same same message. I also could not use the de-installer via control panel (appwiz.cpl). I ended up using Windows Installer Cleanup to force the removal of v0.20.1 and manually installed 0.21.1. This worked fine as the older version was now removed while installing the newer version.

I later found out that while the installer (v0.20.1.0) is running, the requested 'PowerToysBootstrappedInstaller-0.20.1.0.msi' is created in the %temp% folder, so it might have worked to manually copy this file, close the installer, run the updater and point to this copied file when the installer asks for it.

looks like MS MSI database corruption/change of env. not much we can do about it

@RoL0NL
if you manually download and install https://github.com/microsoft/PowerToys/releases/download/v0.21.1/PowerToysSetup-0.21.1-x64.exe
does it work?

No, I got the same same message. I also could not use the de-installer via control panel (appwiz.cpl). I ended up using Windows Installer Cleanup to force the removal of v0.20.1 and manually installed 0.21.1. This worked fine as the older version was now removed while installing the newer version.

I later found out that while the installer (v0.20.1.0) is running, the requested 'PowerToysBootstrappedInstaller-0.20.1.0.msi' is created in the %temp% folder, so it might have worked to manually copy this file, close the installer, run the updater and point to this copied file when the installer asks for it.

I am having the very same issue updating from v0.20.0.0 however the reason I cannot find the file is that I had to create a different Windows profile on this machine.

So in my case, the file reference is a directory that no longer exists.

Fixed.
I simply renamed the boostrapped installer instance in %temp% for another version (to v0.20.0.0) as I needed for my installation.
The installer package was able to delete the renamed msi file and completed the update to 0.21.1.0

Thus bypassing the erroneous file location and user that no longer exists on this machine.

looks like MS MSI database corruption/change of env. not much we can do about it

I think it is the result of some cleaning with the Disk Cleanup tool. It is however weird that it tries to find a specific .msi in the %temp%-folder, which gets cleaned from time to time. Why isn't the uninstaller included in the installation directory as with most programs, or is the installer smart enough to clean-up previous versions without the need of this specific .msi? This is possibly more an MSI issue than a PowerToys issue?

@RoL0NL
You can think of the bootstrapper app as a self-extracting .msi archive. It extracts the .msi to the %temp% dir, and performs additional things the .msi cannot, before finally invoking it.

For every installed msi package a cached copy is stored in the %windir%\Installer dir, you can verify this by installing something and navigating to C:\Windows\Installer\ in the explorer, then add "Subject" column and confirm the software name you've just installed. So generally we don't care that the extracted .msi will be removed, because Windows uses the cached .msi to perform uninstallation action. Now, if a cached .msi is removed, or the association between an app id and a cached .msi is lost, Windows tries to use the "original" .msi package.

You can reproduce the issue if you delete the associated .msi from %windir%\Installer and try to uninstall the app, but not if you remove just the original .msi.

I'm not sure what happened in your case, since standard Disk Cleanup tool shouldn't mess those things up, unlike some infamous 3rd party cleanup tools (not implying that you've used them).

I've assigned the issue to myself, just in case I discover something related later.

Thank you for the explanation, I did not really know how MSI works. It makes sense that it stores the .msi in the Installer folder and only searches in %temp% if it cannot find the package in 'Installer'.

So, somehow the .msi got removed, most probably due to an external factor. (I stopped using those 3rd party cleaners a long time ago by the way, they can really mess up your system!) To conclude this thread: it's not a PowerToys bug.

Is it okay if I close this issue?

@RoL0NL yep, will reopen it if it somehow manifests itself again!

Got the Same to update 0.25.0, but crazier :
When Trying to update to 0.25.0, it asked me to locate the 0.20.1 MSI but my current installed Version that appear when i got over the Powertoys Iconeon task bar, it tell me that my current Version is 0.23.0
If i go to App & Features to uninstall Manually, it tell me that my Version is 0.20.1 and still ask me for the MSI

I re-download the Version 0.23.0 and 0.20.1 to try to reinstall, but none of the installer want to start even in Admin Priviledge, only the 0.25.0 goes up to the validation of the install and then ask me for the MSI ...

i Also try to get the c:\Windows\Installer Copy, and rename it to the MSI asked, Invalid MSI

Was this page helpful?
0 / 5 - 0 ratings