Extensions (in Package) (Windows 10)
Defines one or more extensibility points for the package.
Element hierarchy
<Extensions>
Syntax
<Extensions>
<!-- Child elements -->
Extension{1,10000}
</Extensions>
Key
{}
specific range of occurrences
Attributes and elements
Attributes
None.
Child elements
Child element | Description |
---|---|
Extension (in type: CT_PackageExtensions) | Declares an extensibility point for the package. |
Parent elements
Parent element | Description |
---|---|
Package | Defines the root element of an app package manifest. The manifest describes the structure and capabilities of the software to the system. |
Related elements
The following elements have the same name as this one, but different content or attributes:
Remarks
Extensibility points are a mechanism by which an app can add functionality in a manner defined by the operating system. An example of a package extensibility point is the ability to specify a dynamic-link library or executable that contains activatable classes that your code uses.
The Extension elements that can be included under the Package/Extensions element are enforced by the XML schema. Each of these Extension elements have a required Category attribute that specifies one or more extension points that the extension supports. Some extensions support both application and package extension categories. The following table lists the extension categories supported for application extensions and the associated Extension element that supports each category. A category can be supported for multiple extensions as a versioning mechanism.
Extension category | Extension |
---|---|
windows.comServer | com:Extension |
windows.comInterface | com:Extension |
windows.comServer | com2:Extension |
windows.comInterface | com2:Extension |
windows.comServer | com4:Extension |
windows.comInterface | com4:Extension |
windows.deploymentExtensionHandler | deployment:Extension |
windows.firewallRules | desktop2:Extension |
windows.desktopEventLogging | desktop2:Extension |
windows.mutablePackageDirectories | desktop6:Extension |
windows.customInstall | desktop6:Extension |
windows.shadowCopyExcludeFiles | desktop7:Extension |
windows.errorReporting | desktop7:Extension |
windows.shadowCopyExcludeFiles | desktop7:Extension |
windows.errorReporting | desktop7:Extension |
windows.mutablePackageDirectories | desktop8:Extension |
windows.userMutablePackageDirectories | desktop8:Extension |
windows.eventTracing | desktop8:Extension |
windows.activatableClass.inProcessServer | Extension |
windows.activatableClass.outOfProcessServer | Extension |
windows.activatableClass.proxyStub | Extension |
windows.certificates | Extension |
windows.publisherCacheFolders | Extension |
windows.comInterface | Extension |
windows.loaderSearchPathOverride | Extension |
windows.classicAppCompatKeys | rescap4:Extension |
windows.primaryInteropAssemblies | rescap4:Extension |
windows.hostRuntime | uap10:Extension |
windows.mediaContentDecryptionModule | uap10:Extension |
windows.installedLocationVirtualization | uap10:Extension |
windows.sharedFonts | uap4:Extension |
windows.activatableClass.outOfProcessServer | uap5:Extension |
windows.loaderSearchPathOverride | uap6:Extension |
windows.sharedFonts | uap7:Extension |
windows.enterpriseDataProtection | uap7:Extension |
windows.dataProtection | uap8:Extension |
Examples
The following example is taken from the package manifest of one of the SDK samples.
<Package>
<Extensions>
<Extension Category="windows.activatableClass.proxyStub">
<ProxyStub ClassId="332fd2f1-1c69-4c91-949e-4bb67a85bdc5">
<Path>Microsoft.Samples.DllServerAuthoring.Proxies.dll</Path>
<Interface Name="IToaster" InterfaceId="6a112353-4f87-4460-a908-2944e92686f3" />
<Interface Name="IToast" InterfaceId="699b1394-3ceb-4a14-ae23-efec518b088b" />
<Interface Name="IAppliance" InterfaceId="332fd2f1-1c69-4c91-949e-4bb67a85bdc5" />
</ProxyStub>
</Extension>
<Extension Category="windows.activatableClass.inProcessServer">
<InProcessServer>
<Path>Microsoft.Samples.DllServerAuthoring.dll</Path>
<ActivatableClass ActivatableClassId="Microsoft.Samples.DllServerAuthoring.Toaster" ThreadingModel="both" />
</InProcessServer>
</Extension>
</Extensions>
</Package>
See also
Requirements
Item | Value |
---|---|
Namespace | http://schemas.microsoft.com/appx/manifest/foundation/windows10 |