PowerToys: Installer: failure to install with junctions / RAM disk
Environment
Windows build number: Microsoft Windows [Version 10.0.18363.836]
PowerToys version: v0.17.0
Steps to reproduce
Installer: the system cannot open the device of file specified, error 2755 tried Admin too, but still same issue
Screenshots


About this issue
- Original URL
- State: open
- Created 4 years ago
- Reactions: 1
- Comments: 26 (10 by maintainers)
Could also confirm that it happened to me because of the moved
Installerfolder. Faced it on the0.29version of the PowerToys for the first time (not sure, but I think I created an Installer junction earlier)The temporary fix by @eugenesvk helped, thanks!
I can confirm that this is indeed what @gee-ell said — if you move the
C:\Windows\Installerto save space and put a symlink instead, then some of .msi installers stop working. As a workaround that doesn’t involve moving this useless multigig folder back and forth here is what I do:C:\Windows\Installersymlink toC:\Windows\InstallerBackup,C:\Windows\InstallerfolderC:\Windows\Installerto my main Installer folder at driveD:\C:\Windows\Installer(fromC:\Windows\InstallerBackup)It’s a pity that the
.msiis so broken if it’s not smart enough to allow installation to a symlink. Is there a chance you could use another installation packaging method that doesn’t rely on this broken system? Thank you!I never has this problem again, and I updated at least 2 times after that incident. I thought it was already fixed? Im still using my ram drive and have no problems at all.
Delete all
Config.Msifolders on the root of disk partition can fix this if you use junctions Windows\Installer.@crutkas
Unless there is an API, I don’t see how this can be done reliably. There are several RAM disk utilities, are we going to hard-code their process executable name and guess if we are installed from a temp folder on the RAM disk?
@enricogior I see these are possible options:
As far as I know this is an MSI issue, not a PT installer issue, we don’t treat the RAM disk any different and the error is from MSI not from the PT installer.
we’ll look into this issue. Good to also know it was on upgrade.
Did you download the EXE for 0.23.2 off the Github? or do the upgrade some other method?
I use my RAM drive for so long now (and it’s so convenient, having all temp files and browser caches going there) that I did not even think of it as a problem. It’s a drive like any other and booted up with windows so the temp folder is already there before it tries to access the folders.
Also, strange that a clean install is no problem, but an upgrade is.
Thank you for looking into it 😃
@gabefair, thanks for the insight, i would have never thought about someone using a RAM disk.
Yes, i usw a ram drive for my temp files, but certainly have never seen this before. After I cleaned all folders, rebooted again and installed the latest windows 10 optional update, followed by another reboot, I was able to install directly from the downloaded file.
Gabriel Fair notifications@github.com schrieb am Mo., 12. Okt. 2020, 02:55:
I found that this error can be caused with all .MSI installers if the installer is being run from a RAMDisk. It does not matter which type of ram disk dRAM mounted on the GPU (GpuRamDrive for example) or pRAM using physical ram (AMD Ramdisk for example)
I was able to install Release v0.23.0 with no problems. It then told me there is an update and I encountered the above problem. Since then I can’t install Release v0.23.2, also after a clean reboot. No AV( Defender is running).
This is apparently caused when a user offloads the Windows/Installer folder to another location via a junction (or poss. other symlink). Just happened to me (because I did). It breaks many (but not all) installers.
The clue in the MSI log is “Found junction folder: C:\WINDOWS\Installer”.
More details: https://www.windowsdigitals.com/windows-installer-folder-cleanup-windows-10-safe-to-delete/
Don’t know if there’s a workaround (other than moving the folder back into place).