PSA cannot open the printer preferences when installed via MSIX sideloading.

ca l 0 Reputation points
2026-10-15T10:08:33.69+00:00

PSA cannot open the printer preferences when installed via MSIX sideloading.

Prerequisites: 1. I am using the sample program from Microsoft PSA; 2. I have installed the psa.inf extension INF file, and the PackageFamilyName, AUMID, and PrinterHardwareId are correct; 3. I have connected a printer with IPP capability, and its PrinterHardwareId matches the one in the INF file.

When I install using Deployment, PSA opens successfully, and I can access the Printer Preferences from there. However, when installing via MSIX sideloading, PSA opens but the Printer Preferences cannot be accessed. Why is this happening, and how can it be resolved? thank you. User's image

Windows development | Windows Driver Kit (WDK)
0 comments No comments

2 answers

Sort by: Most helpful
  1. ca l 0 Reputation points
    2026-10-15T10:36:02.4233333+00:00

    the AI answer Failed to resolve my issue

    Was this answer helpful?

    0 comments No comments

  2. AI answer

    2026-10-15T10:23:32.34+00:00

    Rebuild the extension INF with the PFN and AUMID of the installed sideloaded package, then sign and reinstall that INF; successful normal launch does not prove that Windows can activate the PSA’s printer-preferences contract.

    The image distinguishes two activation paths:

    • Open printer app performs ordinary app activation.
    • Printing preferences invokes the windows.printSupportSettingsUI extension for the PSA associated with that printer queue. ^1^

    1. Read the effective identity after sideloading

    Do not use values copied from the Visual Studio deployment output. Install the final MSIX, and then run:

    $pkg = Get-AppxPackage |
        Where-Object { $_.Name -like "*YourPackageName*" }
    
    $pkg | Select-Object Name, PackageFamilyName, Publisher
    
    $manifest = Get-AppxPackageManifest $pkg
    $manifest.Package.Applications.Application |
        ForEach-Object {
            "$($pkg.PackageFamilyName)!$($_.Id)"
        }
    

    The last output is the effective AUMID: <PackageFamilyName>!<Application Id>. Microsoft documents this method for retrieving the AUMID of an installed package. ^2^

    Compare these values character-for-character with:

    [Microsoft-PSA-SoftwareInstall]
    SoftwareType = 2
    SoftwareID = pfn://%PackageFamilyName%
    
    [Add-PSA-Property]
    {A925764B-88E0-426D-AFC5-B39768BE59EB}, 1, 0x12,, %AUMID%
    

    The PFN depends on package identity, including the package name and publisher. A sideloaded package signed with a different publisher can therefore have a different effective identity even when its application code and display name are unchanged. ^3^

    2. Verify the preferences activation contract in the packaged manifest

    Inspect the manifest from the generated MSIX, rather than only the project manifest. The application identified by the AUMID must contain the settings extension:

    <Extensions>
      <printsupport:Extension
          Category="windows.printSupportSettingsUI"
          EntryPoint="PsaSample.PsaSettingsUISample" />
    </Extensions>
    

    Use the entry point appropriate to your sample. This contract is what Windows invokes from Printing preferences, More settings, or Preferences; the app must handle ActivationKind.PrintSupportSettingsUI. ^1^

    Also preserve the sample’s multiple-instance declaration. Microsoft notes that PSAs are expected to support simultaneous print-settings activations.

    3. Rebuild and apply the association

    After replacing the INF’s PFN and AUMID:

    1. Generate a new catalog.
    2. Sign the catalog.
    3. If development certificates are being used, import the catalog signer’s root certificate as required.
    4. Install the revised extension INF from an elevated command prompt:
    pnputil.exe /add-driver psa.inf
    

    Microsoft’s association procedure requires the extension INF to contain the printer Hardware ID or Compatible ID, the package PFN, and the PSA AUMID. The predefined property {A925764B-88E0-426D-AFC5-B39768BE59EB}, 1 establishes the AUMID association. ^4^

    Then inspect the printer’s installed association rather than assuming the new INF superseded the earlier development association. If necessary in a test environment, remove the old extension-INF package through the supported driver-package workflow, install the updated package, and recreate the printer queue so the association is applied afresh. Removing a driver package can affect associated devices, so do this only on a development machine.

    If the effective identities already match

    If the installed PFN/AUMID exactly match the INF:

    1. Confirm that the packaged manifest contains windows.printSupportSettingsUI under the same <Application Id> used to form the AUMID.
    2. Put a breakpoint or diagnostic logging in OnActivated.
    3. Open Settings → Bluetooth & devices → Printers & scanners → your printer → Printing preferences.
    4. Check whether activation arrives with ActivationKind.PrintSupportSettingsUI.

    If no activation reaches the app despite an exact installed identity, correct packaged manifest, and reapplied printer association, the available documentation does not establish another case-specific fix. Capture the packaged manifest, effective PFN/AUMID, installed INF, Windows build, and activation logs, then open a Microsoft developer support case. The unrelated PSA v4 virtual-printer capability issue does not establish the cause of this physical IPP printer activation failure.


    References

    1. Print Support App v1 and v2 design guide
    2. Find the Application User Model ID of an installed app
    3. An overview of Package Identity in Windows apps
    4. Print support app association
    AI-generated content may be incorrect. Read our transparency notes for more information.

    Was this answer helpful?

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.