Application modernisation

PSF

Package Support Framework

Package Support Framework is a Microsoft open-source runtime that applies compatibility fix-ups to an MSIX-packaged application at the moment it launches. It addresses behaviours such as incorrect file and registry redirection, wrong working-directory assumptions, and environment-variable mismatches, so a legacy application behaves correctly inside MSIX's isolated container without any change to its original source code.

Why PSF matters in a Microsoft estate

PSF matters during Windows 11, Intune, Azure Virtual Desktop, and Cloud PC programmes because application blockers can delay the whole rollout. The practical question is whether the term helps capture, package, sign, deploy, or troubleshoot an app with less rework.

How PSF shows up in practice

PSF works by inserting a launcher and a configurable runtime layer in front of the packaged application. When the app starts, PSF intercepts specific system calls the application makes and redirects, corrects, or supplements them according to a JSON configuration file. It can also optionally run PowerShell start or stop scripts before or after the application itself runs. That last capability, PSF's ability to execute scripts as part of application launch, is precisely where governance attention belongs. PSF start scripts run with the same trust as the application itself, and independent research has confirmed they genuinely execute under interactive activation, though non-interactive automation testing can under-report whether they ran.

A clean install and a successful launch is not, on its own, evidence that a configured script actually executed as intended. The defensible operational position, based on that research, is to treat PSF as a trusted, full-trust compatibility layer rather than a routine default applied to every package. This means preferring packaging an application as native MSIX with no fix-ups first, adding PSF only where genuine runtime evidence shows it is needed to fix a specific compatibility problem, signing and inventorying every PSF binary shipped in a package, and treating any PSF script as managed code subject to the same review and change control as application code, rather than as an incidental packaging detail.

PSF is also the mechanism that most often needs specific validation when an application is delivered through App Attach rather than a local install, since attach timing and shared-storage behaviour under App Attach can interact with PSF fix-ups differently than a purely local MSIX install does. EtherApps Forge applies PSF fix-ups only where captured runtime evidence shows they are genuinely required, rather than as a default step in every packaging run.

Glossary