Edit

com:SurrogateServer

Registers a SurrogateServer with one or many class registrations.

Element hierarchy

<Package>
   └─ <Extensions>
      └─ <com:Extension>
         └─ <com:ComServer>
            └─ <com:SurrogateServer>
   └─ <Applications>
      └─ <Application>
         └─ <Extensions>
            └─ <com:Extension>
               └─ <com:ComServer>
                  └─ <com:SurrogateServer>

Syntax

<com:SurrogateServer
  CustomSurrogateExecutable = 'An optional string between 1 and 256 characters in length that must end with ".exe" and cannot contain these characters: <, >, :, ", |, ?, or *.'
  DisplayName = 'An optional string between 1 and 256 characters in length. This string is localizable.'
  LaunchAndActivationPermission = 'An optional [SDDL string](/windows/win32/secauthz/security-descriptor-string-format).'
  AppId = 'An optional GUID in the form xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.'
  SystemSurrogate = 'An optional string with the value "PreviewHost".' >

  <!-- Child elements -->
  com:Class{1,10000}

</com:SurrogateServer>

Key

{} specific range of occurrences

Attributes

Attribute Description Data type Required Default value
CustomSurrogateExecutable A path to the DllSurrogate in the AppId key. This path is relative to the package root and must reference a file in the package. This is mututally exclusive with SystemSurrogate. An optional string between 1 and 256 characters in length that must end with ".exe" and cannot contain these characters: <, >, :, ", |, ?, or *. No
DisplayName DisplayName is a localizable string corresponding to the default AppID key value. An optional string between 1 and 256 characters in length. This string is localizable. No
LaunchAndActivationPermission An SDDL string that corresponds to the LaunchPermission value of the AppID key. An optional SDDL string. No
AppId The AppId that references the associated AppId key. An optional GUID in the form xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. No
SystemSurrogate A value that corresponds to well-known values from the DllSurrogate value of the AppId key. This is mututally exclusive with CustomSurrogateExecutable. An optional string that can have one of the following values: PreviewHost. No

Child elements

Child element Description
com:Class Defines a SurrogateServer class registration.

Parent elements

Parent element Description
com:ComServer Declares a package extension point of type windows.comServer. The comServer extension may include four types of registrations: ExeServer, SurrogateServer, ProgId, or TreatAsClass.

Requirements

Item Value
Namespace http://schemas.microsoft.com/appx/manifest/com/windows10
Minimum OS Version Windows 10 version 1703 (Build 15063)

Remarks

If there is no value for the DllSurrogate in the AppId key, do not use the CustomSurrogateExecutable attribute.

LaunchAndActivationPermission is an SDDL string that corresponds to the LaunchPermission value of the AppID key.

The SystemSurrogate corresponds to the values of the DllSurrogate value of the AppId key. For example, if the DllSurrogate value is %System32%\prevhost.exe or %SysWow64%\prevhost.exe, then SystemSurrogate should be set to PreviewHost and the CustomSurrogateExecutable should not be set.

Examples