com4:ComServer

Déclare un point d’extension de package de type windows.comServer. L’extension comServer peut inclure des inscriptions de classes, y compris les détails d’activation des serveurs qui implémentent ces classes, et les inscriptions ProgId et TreatAsClass, qui fournissent des identificateurs supplémentaires utilisés pour référencer ces classes au moment de l’exécution.

Hiérarchie d’éléments

<Package>

    <Applications>

         <Application>

              <Extensions>

                   <com4:Extension>

                        <com4:ComServer>

Syntaxe

<com4:ComServer>

<!-- Child elements -->
  Class{0,1}
  ExeServer{0,1}
  ServiceServer{0,1}
  SurrogateServer{0,1}
  TreatAsClass{0,1}
  ProgId{0,1}
  InProcessServer{0,1}
  InProcessHandler{0,1}
  ManagedInProcessServer{0,1}
  com5:InProcessServer{0,1}
  com5:InProcessHandler{0,1}

</com4:ComServer>

Clé :

{} plage spécifique d’occurrences

Attributs et éléments

Attributs

Aucune.

Éléments enfants

Élément enfant Description
Classe Définit une inscription de classe dans un serveur COM.
ExeServer Inscrit un ExeServer avec une ou plusieurs inscriptions de classes.
ServiceServer Inscrit un ServiceServer avec une ou plusieurs inscriptions de classes.
SurrogateServer Inscrit un surrogateServer avec une ou plusieurs inscriptions de classe.
TreatAsClass Inscription qui correspond à une inscription CLSID avec la sous-clé TreatAs.
Progid Identificateur programmatique (ProgID) qui peut être associé à un CLSID.
InProcessServer Inscrit un serveur in-process avec une ou plusieurs inscriptions de classe.
InProcessHandler Inscrit un gestionnaire in-process avec une ou plusieurs inscriptions de classe.
ManagedInProcessServer Inscrit un serveur managé in-process avec une ou plusieurs inscriptions de classe.

Éléments parents

Élément parent Description
com4:Extension Fournit des fonctionnalités permettant d’exposer des inscriptions COM aux clients en dehors du package d’application. L’extension com4 est une nouvelle version qui est un super-ensemble de versions et remplacement des versions de schéma COM précédentes.

Remarques

Dans les packages multi-applications, il est important de placer l’inscription du serveur COM sous l’élément manifeste applications/application correct, car les processus de serveur COM s’exécutent avec l’identité de l’élément Applications/Application ancêtres.

Les serveurs COM inscrits dans le manifeste obtiennent toujours le comportement d’Activation en tant que package (AAP), ce qui signifie que le serveur COM s’exécute avec le jeton par défaut de session utilisateur avec les revendications de package et d’application ajoutées. Ceci est différent du comportement d’activation par défaut des serveurs COM inscrits classiquement, dans lesquels le serveur COM s’exécute avec le jeton du client. Pour la plupart des applications, cette différence n’est pas visible, car les clients s’exécutent généralement avec le jeton par défaut de session utilisateur. Les autres comportements d’activation, tels que les RunAs, ne sont pas pris en charge.

Il est possible d’avoir plusieurs extensions comServer sous l’élément Applications/Application, mais dans la plupart des cas, cela n’est ni nécessaire ni recommandé. Un exemple de cas de périphérie où plusieurs extensions comServer sont nécessaires est si un package a besoin de certaines inscriptions pour avoir CompatMode="classic », tandis que d’autres ont CompatMode="modern », la seule façon de le faire consiste à les fractionner entre les extensions.

Modifications apportées à l’extension com4

La syntaxe d’extension com4 est un nouvel ensemble de la syntaxe de l’extension com précédente. Cette version de la syntaxe prend en charge la même structure que les versions antérieures de la syntaxe, où les inscriptions de classes sont représentées par les éléments ExeServer/Class, SurrogateServer/Class, ServiceServer/Class, InProcessServer/Class, InProcessHandler/Class ou ManagedInProcessServer/Class.

La nouvelle syntaxe prend également en charge d’autres structures, où :

  • ExeServer/ClassReference, SurrogateServer/ClassReference, ServiceServer/ClassReference, InProcessServer/ClassReference, InProcessHandler/ClassReference ou ManagedInProcessServer/ClassReference elements référencent les éléments de classe de niveau supérieur

et/ou

  • Les éléments SurrogateServer/InProcessServerClassReference référencent les éléments InProcessServer/Class (alternativement, InProcessServer/ClassReference) ou ManagedInProcessServer/Class (alternativement, ManagedInProcessServer/ClassReference).

L’objectif principal de la nouvelle structure de syntaxe est d’activer les combinaisons de serveurs in-process, de gestionnaires in-process et d’inscriptions de serveur hors processus pour le même CLSID, comme possible et pris en charge avec la disposition classique du Registre. Pour plus d’informations sur la disposition du Registre COM, consultez clé CLSID.

Spécifications

Valeur
Espace de noms http://schemas.microsoft.com/appx/manifest/com/windows10/4