Showing tag results for Terminology

Oct 27, 2026
Post comments count0
Post likes count1

External Location

Howard Kapustein

We talked recently about PackageVolume as one of the ways to stage packages. Let's turn our gaze to External Location, which plays a distinct role in MSIX, with similarities to - and important differences from - other options. Why is External Location? MSIX deployment provides a full-service software installation stack. The process is simple: co...

Oct 20, 2026
Post comments count0
Post likes count2

Activatable Extension Points

Howard Kapustein

We often talk about "running an application", "launching an app", or "starting an app". This conjures up visions of spinning up a new process, giving the application life. For packaged applications, Windows has a specific term for bringing an application to life: activation. Bringing a packaged process to life involves more than ordinary unpacka...

Sep 22, 2026
Post comments count0
Post likes count1

Footprint vs Payload files

Howard Kapustein

Payload files Payload files are files stored in and delivered by the package. This includes your code, assets, and data, such as executables, DLLs, images, configuration files, and resources. For example: Content files The term content is sometimes used in MSIX-related APIs and documentation, but it does not provide as clean a classifica...

Sep 15, 2026
Post comments count2
Post likes count2

PackageType: Main, Framework, Resource, Optional, Bundle

Howard Kapustein

Every MSIX package is one of four package types: MSIX also supports Bundle packages. Bundles are somewhat different from those four package types: a Bundle is a container for one or more MSIX packages. Windows APIs nevertheless expose Bundle alongside the other package types when identifying packages. Each package type has its own behavior...

Sep 8, 2026
Post comments count0
Post likes count2

MSIX PackageVolume: How Package Storage Works

Howard Kapustein

An MSIX package can be staged in several ways and locations: By far the most common is PackageVolume. We'll dig into the rest in future posts, but for now let's focus on MSIX PackageVolume. In the beginning... When MSIX first appeared in Windows 81 packages would be staged to a unique directory under . More specifically, packages were pl...

Aug 25, 2026
Post comments count0
Post likes count2

What Kind of Packaged Process Is It?

Howard Kapustein

As previously discussed, we can divide processes into the two broad categories of packaged vs unpackaged, based on if the process HAS or LACKS package identity. Packaged processes can be divided into three broad categories: All three have package identity, but they make different tradeoffs between compatibility and modern packaged behavior....

Aug 18, 2026
Post comments count0
Post likes count3

What’s a PFN?

Howard Kapustein

What's a PFN? MSIX introduced Package identity in Windows 8. While the familiar package identity "5-tuple" was functional, it wasn't especially convenient to pass through APIs or embed in resources such as files, registry keys, URLs, or XML documents. To address this, Windows defined an opaque string representation known as a Package Moniker. Win...

Aug 4, 2026
Post comments count4
Post likes count4

Remove Is Not Uninstall

Howard Kapustein

Just as There is no Install – it’s ‘Stage’ and ‘Register’ explained that Install is not truly an installation operation in MSIX, Remove is similarly not an uninstall operation. This can be surprising - sometimes even alarming - to developers coming from traditional installer technologies such as MSI, where uninstalling software typically implies: ...

Jul 21, 2026
Post comments count6
Post likes count2

Display Name is for Humans

Howard Kapustein

Package identity exists for one primary purpose: This is a considerable improvement over the historical tendency to assign UUIDs and GUIDs to nearly everything - including things that humans were expected to discuss in meetings. Identity Is for Systems A package's Name, Package Full Name, and other identity-derived values are intended for deve...

Jul 14, 2026
Post comments count0
Post likes count2

Package Status

Howard Kapustein

Every package has a set of status flags describing its current health and availability. These can be queried via the Package.Status property. A package may report more than one status value at a time if multiple conditions apply. Package Status Groups The various states fall into three groups: NeedsRemediation Status values in th...