Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

Extension (in Application)

Declares an extensibility point for the package.

Element hierarchy

<Package>
   └─ <Applications>
      └─ <Application>
         └─ <Extensions>
            └─ <Extension>

Syntax

<Package
 xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10">
 ...
 <Extension
 Category = 'A required string that can have one of the following values: "windows.backgroundTasks", "windows.preInstalledConfigTask", "windows.updateTask", or "windows.restrictedLaunch".'
 desktop11:AppLifecycleBehavior = 'An optional string that can have one of the following values: "systemManaged", or "unmanaged".'
 Executable = 'An optional string between 1 and 256 characters in length that must end with ".exe" and cannot contain these characters: <, >, :, ", |, ?, or *.'
 EntryPoint = 'An optional string between 1 and 256 characters in length that cannot start or end with a whitespace character.'
 RuntimeType = 'An optional string between 1 and 255 characters in length that cannot start or end with a period or contain these characters: <, >, :, ", /, \, &#124;, ?, or *.'
 StartPage = 'An optional string between 1 and 256 characters in length that cannot contain these characters: <, >, :, ", |, ?, or *.'
 ResourceGroup = 'An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character.'
 uap10:TrustLevel = 'An optional string that can have one of the following values: "appContainer", or "mediumIL".'
 uap10:RuntimeBehavior = 'An optional string that can have one of the following values: "windowsApp", "packagedClassicApp", or "win32App".'
 uap10:HostId = 'An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character.'
 uap10:Parameters = 'An optional string between 1 and 32767 characters in length with a non-whitespace character at its beginning and end.'
 uap11:Id = 'An optional string between 1 and 255 characters in length with a non-whitespace character at its beginning and end.'
 uap11:Subsystem = 'An optional string that can have one of the following values: "console", or "windows".'
 uap11:SupportsMultipleInstances = 'An optional boolean value.'
 uap11:ResourceGroup = 'An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character.'
 uap11:CurrentDirectoryPath = 'An optional string that cannot contain these characters: <, >, |, ?, or *.'
 uap11:Parameters = 'An optional string between 1 and 32767 characters in length with a non-whitespace character at its beginning and end.'
 desktop7:CompatMode = 'An optional string that can have one of the following values: "classic", or "modern".'
 desktop7:Scope = 'An optional string that can have one of the following values: "machine", or "user".' >

 <!-- Child elements -->
 BackgroundTasks?

 </Extension>
</Package>

Key

? optional (zero or one)

Attributes

Attribute Description Data type Required Default value
Category The type of extension. A string that can have one of the following values: windows.backgroundTasks, windows.preInstalledConfigTask, windows.updateTask, windows.restrictedLaunch. Yes
desktop11:AppLifecycleBehavior An optional string that can have one of the following values: systemManaged, unmanaged. No
Executable The default launch executable. An optional string between 1 and 256 characters in length that must end with ".exe" and cannot contain these characters: <, >, :, ", |, ?, or *. No
EntryPoint The activatable class ID. An optional string between 1 and 256 characters in length that cannot start or end with a whitespace character. No
RuntimeType The runtime provider. Typically used when there are mixed frameworks in an app. An optional string between 1 and 255 characters in length that cannot start or end with a period or contain these characters: <, >, :, ", /, , |, ?, or *. No
StartPage The web page that handles the extensibility point. An optional string between 1 and 256 characters in length that cannot contain these characters: <, >, :, ", |, ?, or *. No
ResourceGroup A tag that you can use to group extension activations together for resource management purposes (for example, CPU and memory). An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character. No
uap10:TrustLevel Specifies the trust level of the extension. An optional string that can have one of the following values: appContainer, mediumIL. No
uap10:RuntimeBehavior Specifies the run time behavior of the extension. An optional string that can have one of the following values: windowsApp, packagedClassicApp, win32App. No
uap10:HostId Specifies the ID of the host runtime for the extension. An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character. No
uap10:Parameters Contains command line parameters to pass to the extension. Only supported for desktop apps that have package identity. An optional string between 1 and 32767 characters in length with a non-whitespace character at its beginning and end. No
uap11:Id An identifier for the extension. The ID must be unique for all extensions in a package. An optional string between 1 and 255 characters in length with a non-whitespace character at its beginning and end. No
uap11:Subsystem This attribute is useful for non-UWP processes that need to be started with a specific subsystem. In most cases this should be left as the default. An optional string that can have one of the following values: console, windows. No
uap11:SupportsMultipleInstances Specifies whether the extension supports multiple instances. An optional boolean value. No
uap11:ResourceGroup A tag that you can use to group extension activations together for resource management purposes (for example, CPU and memory). An optional alphanumeric string between 1 and 255 characters in length. Must begin with an alphabetic character. No
uap11:CurrentDirectoryPath Specifies the initial directory when launching the process. An optional string that cannot contain these characters: <, >, |, ?, or *. No
uap11:Parameters Contains command line parameters to pass to the extension. An optional string between 1 and 32767 characters in length with a non-whitespace character at its beginning and end. No
desktop7:CompatMode Specifies the compatibility mode for the extension. An optional string that can have one of the following values: classic, modern. No
desktop7:Scope Specifies whether the extension is per-user or per-machine. An optional string that can have one of the following values: machine, user. No

Child elements

Child element Description
BackgroundTasks Defines an app extensibility point of type windows.backgroundTasks. Background tasks run in a dedicated background host; that is, without a UI.

Parent elements

Parent element Description
Extensions Defines one or more extensibility points for the app.

Requirements

Item Value
Namespace http://schemas.microsoft.com/appx/manifest/foundation/windows10
desktop11 http://schemas.microsoft.com/appx/manifest/desktop/windows10/11
desktop7 http://schemas.microsoft.com/appx/manifest/desktop/windows10/7
uap10 http://schemas.microsoft.com/appx/manifest/uap/windows10/10
uap11 http://schemas.microsoft.com/appx/manifest/uap/windows10/11
Minimum OS Version

Remarks

If activation info attributes aren't specified on Extension, then they're inherited from the parent Application. See the remarks section for the Application element.

Extensibility points are a mechanism by which a package can add functionality in a manner defined by the operating system. An extensibility point is a location where an app can register to execute code or use resources of the current package. To add functionality for a particular app, use the Application child element of the Applications element.

The windows.certificates extensibility point can't be declared multiple times in a manifest.

Note

Either the EntryPoint or StartPage attribute is required if the Category attribute is windows.UpdateTask or windows.preInstalledConfigTask for versions of Windows 10 before Windows 10, version 1607. Starting with Windows 10, version 1607, you no longer need to specify a value for EntryPoint or StartPage when Category is windows.Use, UpdateTask, or windows.preInstalledConfigTask to target only devices that run Windows 10, version 1607 or later.

Examples

See also

The following elements have the same name as this one, but different content or attributes:


Feedback

Was this page helpful?

Additional resources