You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Nested installer path is built with the manifest's forward slashes, MsiInstallProduct fails with error 2 #6551
When a zip manifest declares NestedInstallerFiles.RelativeFilePath with forward slashes, winget joins it to the extraction directory verbatim and passes the resulting mixed-separator path to MsiInstallProduct. Windows Installer cannot open a package path containing a forward slash, so the install fails with error 2 and an empty MSI log. Normalising the separator when building the nested installer path would make this class of manifest typo harmless.
Steps to reproduce
Install Microsoft.GameInput 3.5.274, whose manifest currently has RelativeFilePath: redist/GameInputRedist.msi:
The log file winget passes to /log is created but stays empty (2 bytes, BOM only), so the failure is invisible to anyone reading the installer log. The Application event log shows a Windows Installer transaction that opens and closes in the same second with no result event, which makes it look like the vendor MSI is at fault.
Expected behavior
The nested installer path is built with backslashes and the package installs.
Evidence that the separator is the cause
Same MSI, same machine, same elevation. Administrative extract used so that nothing is installed and the only variable is the separator:
Installing with the all-backslash path succeeds and registers correctly:
{73E9D910-3C53-4F87-A4EB-1EE11645F494} Microsoft GameInput 3.5.274.0
MsiOpenPackage tolerates the forward slash, which is why the path looks valid under casual inspection, and the MsiInstaller 1040 event echoes the requested path rather than a validated one.
Note
The specific manifest is fixed in microsoft/winget-pkgs#438904. Filing this separately because the client side could reject or normalise such a path instead of surfacing a bare error 2, and manifest validation could flag forward slashes in RelativeFilePath.
Environment
Windows 11 Pro Education 10.0.26200
winget from Microsoft.DesktopAppInstaller, winget source index 2026.922.622.18
Activity