Forum Widgets
Latest Discussions
Add Environment Variable to MSIX package using PSF Fixups in Packaging Tool - what am I missing?
Hi everyone, I am currently testing packaging apps into the MSIX format and have been successful for any simple installers. Now that I am trying to package more advanced installers I have to utilize PSF Fixups, in which I have issues with the Environment Fixup. Even though I have read up on previous discussions regarding this, I simply cannot get this fixup to be successfully added and recognized within the MSIX App. I am judging this based on that the same app will tell in its own app options whether the environment variable is available or not. Some key info (Tried attaching several screenshots, but it wilI not let me. Hopefully the necessary information comes across): Using MSIX Packaging Tool version 1.2024.405.0 Using the included PSF Fixup for Environment Variables within MSIX Packaging Tool. All PSF Fixup files are included in the MSIX Package. In the manifest file the executable "PsfLauncher64.exe" is pointed at. Basically, the config.json is formatted in the following way if I were to change out anything referring to the actual app name. What am I possibly missing out on or have misunderstood here? Any help in leading me into the right direction is very much appreciated, thanks!HanessaSep 22, 2025Copper Contributor16Views0likes0CommentsReset user choice for windows.protocol tel:
Hi everyone, we ship an MSIX that registers a full-trust Dialer.exe as a windows.protocol handler for tel: so users can place calls from Outlook etc. Goal After installing our MSIX, we’d like Windows to show the “How do you want to open this?” prompt again for tel: so users see the new option. With our old MSI this was easy, we deleted HKCU\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\<protocol>\UserChoice via the manifest entry: <RemoveRegistryKey Id="WipeDialerOnInstall" Root="HKCU" Key="SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\tel\UserChoice" Action="removeOnInstall"/> Problem With MSIX there seems to be no manifest option to mimic that. We tried deleting UserChoice on first app start (HKCU, RegDeleteTree/SHDeleteKey), but it did not work. Questions Is there any supported or recommended way to trigger the default-app prompt (or clear the choice) for a specific protocol when using MSIX? Is deleting UserChoice from a full-trust MSIX app considered supported/allowed for Store submissions? Any guidance or stance appreciated! Thanks!EDNTAug 28, 2025Copper Contributor128Views0likes3CommentsI'm not seeing what I expected to see with Windows Application Packaging
I'm following along in a YouTube video I found that covers MSIX. I've created a simple WPF app in .NET 9, which is just a Hello World app. Then I added the Windows Application Packaging project. Or at least that's what I'm trying to do. What I got was two new projects added to my VS solution. Given my app's name is MyApp, one of the new projects is called MyAppInstaller, and the other new app is called "MyAppInstaller (Package)". I was expecting to see only the MyAppInstaller project added. I'm wondering if I've done something wrong.Rod-FAug 23, 2025Iron Contributor64Views0likes1CommentWhy is it impossible to sign a .exe that is included in an msix?
I have a solution that has two projects. One projects makes a wpf exe. I call signtool in the post build step and it signs the .exe no problem. The other wapproj project publishes this into an msix and signs the msix bundle no problem. The .exe inside the .msix however is never signed. Why? The msix refuses to use the build output from the dependent project. I get the signing the bundle package prevents alteration on distribution, but this does nothing for protection after installation. No matter what I do I can't sign the contents inside the msix. Is this pointless? Why does Visual Studio only support signing the distribution package and not the contents inside the msix?Gregory GoeppelAug 17, 2025Brass Contributor98Views0likes4CommentsIssues Editing MSIX Package to Disable LaunchWhenReady
We’re trying to disable the LaunchWhenReady setting in our MSIX package by following the guidance provided in Microsoft's documentation. https://learn.microsoft.com/en-us/windows/msix/app-installer/how-to-create-custom-app-installer-ux We initially tried using the MSIX Packaging Tool & Advanced installer to make the necessary changes in existing MSIX package, but were unable to get it working as expected.a570585Aug 05, 2025Copper Contributor108Views0likes2CommentsRemoval of an AppX/MSIX package leaving unwanted clutter in the user registry.
MSIX is supposed to be a clean uninstall. However, I have some detected some unnecessary garbage left behind when uninstalling under HKCU\Software\Classes. Take a package and install it. Then Uninstall it. Repeat that a few times. Open Regedit. Browse to HKCU\Software\Classes. Do a find on the package name,. You will find there is a key starting with AppX (followed by random looking letters) with subkeys Application, DefaultIcon, and possibly Shell. These were added during the installation of the package. Keep searching (F3). You will find the same information under an AppX... key for each package you originally installed. This does not appear to be due to delayed removal, as they remain weeks or months later.78Views0likes0CommentsEncountered 0x80131500 code while using MSIX Packaging Tool
Hi Guys, Recently, when I tried to use MSIX Packaging Tool to convert the exe file to MSIX, I got the 0x80131500 error. Checking the log, I got the following part [2025-07-31 7:14:04 PM] [Debug] MakeAppx : error: Failure at (packageWriter3->AddPayloadFiles( addedFiles, preparedFiles, performanceOptions.memoryLimit)) - 0x8007007b - The filename, directory name, or volume label syntax is incorrect. [2025-07-31 7:14:04 PM] [Debug] Cleaning up output file "\\?\%UserProfile%\OneDrive\Desktop\My-Package_1.0.0.0_x64__tn3vmbmc1d5kj_1.msix". [2025-07-31 7:14:04 PM] [Debug] MakeAppx : error: Failure at (CreatePackage( overwrite, hashAlgorithm, fileList, outputPath, manifestStream.Get(), forceCompressionNone, performanceOptions, encryptPackage, encryptionOptions, cgmPath, mainPackagePathForResourceExemption, makepriExeFullPath)) - 0x8007007b - The filename, directory name, or volume label syntax is incorrect. [2025-07-31 7:14:04 PM] [Debug] MakeAppx : error: Package creation failed. [2025-07-31 7:14:04 PM] [Debug] MakeAppx : error: 0x8007007b - The filename, directory name, or volume label syntax is incorrect. [2025-07-31 7:14:04 PM] [Error] MakeAppx.exe failed, exit code = 1 [2025-07-31 7:14:04 PM] [Debug] Finalizing the conversion state [2025-07-31 7:14:04 PM] [Debug] Getting environment object from %UserProfile%\AppData\Local\Packages\Microsoft.MSIXPackagingTool_8wekyb3d8bbwe\LocalState\MsixGenerator.ConversionState.xml [2025-07-31 7:14:04 PM] [Warning] Error Occurred: Microsoft.Msix.Utils.ProcessRunner.ProcessRunnerException: Process MakeAppx.exe failed with exit code 1. at Microsoft.Msix.Utils.ProcessRunner.ProcessRunnerBase.ValidateExitCode(Int32[] validCodes) at Microsoft.ApplicationVirtualization.Packaging.Packager.FinalizePackageViaMakeAppx(IPackageFiles packageFiles, String manifestPath, String appvManifestPath, String registryHivePath, Boolean useExistingRegisterHive, String userRegistryHivePath, String userClassesRegistryHivePath, String packagePath, String msixMappingPath, CompressionOption compression, MsixPackageInputProperties msixPackageInputProperties, CancellationTokenSource cancellationTokenSource) at MsixGenerator.MsixPackageEditor.FinalizePackage(CancellationTokenSource cancellationTokenSource, Boolean modifyExistingPackage) at MsixPackagingTool.ViewModel.PackageEditorWorkflow.MasterPackageEditorViewModel.SavePackageEditorChanges_BackgroundWorker(Object sender, DoWorkEventArgs doWorkEventArgs) at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e) at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument) So far, it seems that \\?\%UserProfile% is causing the issue. But I am not sure how to solve it. The following is the manifest file I used. <?xml version="1.0" encoding="utf-8"?> <Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10" xmlns:desktop7="http://schemas.microsoft.com/appx/manifest/desktop/windows10/7" xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" IgnorableNamespaces="uap uap10 desktop7 rescap"> <!--Package created by MSIX Packaging Tool version: 1.2024.405.0--> <Identity Name="My-Package" Publisher="CN=Dummy Publisher" Version="1.0.0.0" ProcessorArchitecture="x64" /> <Properties> <DisplayName>My-Package</DisplayName> <PublisherDisplayName>Dummy Publisher</PublisherDisplayName> <Description>Dummy description.</Description> <Logo>Assets\StoreLogo.png</Logo> <uap10:PackageIntegrity> <uap10:Content Enforcement="on" /> </uap10:PackageIntegrity> </Properties> <Resources> <Resource Language="en-us" /> </Resources> <Dependencies> <TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17763.0" MaxVersionTested="10.0.22000.1" /> </Dependencies> <Applications> <Application Id="MyApplication" Executable="VFS\AppVPackageDrive\MyApplication\MyApplication.exe" EntryPoint="Windows.FullTrustApplication"> <uap:VisualElements BackgroundColor="transparent" DisplayName="MyApplication" Square150x150Logo="Assets\MYAPPLICATION-Square150x150Logo.png" Square44x44Logo="Assets\MYAPPLICATION-Square44x44Logo.png" Description="MyApplicatiion"> <uap:DefaultTile Wide310x150Logo="Assets\MYAPPLICATION-Wide310x150Logo.png" Square310x310Logo="Assets\MYAPPLICATION-Square310x310Logo.png" Square71x71Logo="Assets\MYAPPLICATION-Square71x71Logo.png" /> </uap:VisualElements> </Application> </Applications> <Capabilities> <rescap:Capability Name="runFullTrust" /> </Capabilities> </Package> Could someone help me solve this issue? Thanks!RookieArcherAug 01, 2025Copper Contributor88Views0likes1Comment.WapProj build using "unvirtualizedResources" removed entry from manifest
I have a .wapproj that needs to use RegistryWriteVirtualization (aka "Flexible Virtualization) as described in Flexible virtualization - MSIX | Microsoft Learn This is for an MSIX package that will not be delivered via the Microsoft Store. The changes are made to the Package.appxmanifest file, and saved. The build action in Visual Studio removed the Capability declaration line for "unvirtualizedResources" from the Package.appxmaifest file before processing the file, leading to an error complaining that the RegistryWriteVirtualization requires this capability. Workaround: I can mark the file read-only outside of Visual Studio to keep VS from changing the file as a temporary workaround to prove out that the code depending upon these settings works. Why workaround is not acceptable: This workaround is not long-term viable, as other developers and automated workflows working on the project will lose the read-only setting (as it will not persist in GitHub) and have a broken build. It is clear that the VS code looking at this file is aware of both the desktop6 and virtualization schemas and their requirements and restrictions, but seemingly, although aware of other rescap capability extensions is unaware of this one. Requested action: Please add support for missing capabilities declarations in Visual Studio and/or underlying tools.148Views1like2CommentsMSIX .wapproj service
My agency is trying to move their services to MSIX/UWP and we found that the VisualStudio .wapproj .appxmanifest templates $targetnametoken$ and $targetentrypoint$ do not work for the properties 'Executable' and 'Entrypoint' of 'desktop6:Extension' tags with 'Category="windows.service"' despite working as expected on the enclosing 'Application' object. Can someone who knows how this is intended to work please help? I'm desperate at this point.DataBenJun 27, 2025Copper Contributor310Views0likes7CommentsVirtualizationManifestSchema needs correction
The version of the VirtualizationManifestSchema.xsd delivered as part of Visual Studio is still incorrect (I reported this about three years ago). It seems like the DesktopAppInstaller either ignores the regex pattern for the ST_ExcludedDirectory element or is using a fixed version for validation anyway. But other toolings depend on the accuracy of the published schema file for XML validation and it needs to be fixed. As stands, it looks like this: <xs:simpleType name="ST_ExcludedDirectory"> <xs:restriction base="t:ST_NonEmptyString"> <xs:pattern value="$\([kK][nN][oO][wW][nN][fF][oO][lL][dD][eE][rR]:[A-Za-z0-9]{1,32}\)(\\.+)?"/> </xs:restriction> </xs:simpleType> It should be: <xs:simpleType name="ST_ExcludedDirectory"> <xs:restriction base="t:ST_NonEmptyString"> <xs:pattern value="\$\([kK][nN][oO][wW][nN][fF][oO][lL][dD][eE][rR]:[A-Za-z0-9]{1,32}\)(\\.+)?"/> </xs:restriction> </xs:simpleType> This change would support the Syntax section shown in the documentation here: virtualization:ExcludedDirectory - Windows UWP applications | Microsoft Learn73Views0likes1Comment
Resources
Tags
- MSIX73 Topics
- appinstaller7 Topics
- msix packaging tool7 Topics
- APPX5 Topics
- MSIX Packaging Tools4 Topics
- appattach3 Topics
- MSIX AppAttach launch failure3 Topics
- MSIX LIMITATIONS3 Topics
- Access MSIX Container3 Topics
- UWP3 Topics