Partager via


COM Interop sans inscription

L’interopérabilité COM sans inscription active un composant sans utiliser le Registre Windows pour stocker les informations d’assembly. Au lieu d’inscrire un composant sur un ordinateur pendant le déploiement, vous créez des fichiers manifestes de style Win32 au moment du design qui contiennent des informations sur la liaison et l’activation. Ces fichiers manifestes, plutôt que les clés de Registre, dirigent l’activation d’un objet.

L’utilisation de l’activation sans inscription pour vos assemblies au lieu de les enregistrer pendant le déploiement offre deux avantages :

  • Vous pouvez contrôler la version de DLL activée lorsque plusieurs versions sont installées sur un ordinateur.

  • Les utilisateurs finaux peuvent utiliser XCOPY ou FTP pour copier votre application dans un répertoire approprié sur leur ordinateur. L’application peut ensuite être exécutée à partir de ce répertoire.

Cette section décrit les deux types de manifestes nécessaires pour l’interopérabilité COM sans inscription : les manifestes d’application et de composant. Ces manifestes sont des fichiers XML. Un manifeste d’application, créé par un développeur d’applications, contient des métadonnées qui décrivent les assemblys et les dépendances d’assembly. Un manifeste de composant, créé par un développeur de composants, contient des informations qui se trouveraient autrement dans le Registre Windows.

Conditions requises pour l’interopérabilité COM sans inscription

  1. La prise en charge de COM Interop sans inscription varie légèrement selon le type d'assembly de bibliothèque, plus précisément, si l'assembly est non managé (côte à côte COM) ou managé ( basé sur .NET). Le tableau suivant présente les exigences de version du système d’exploitation et du .NET Framework pour chaque type d’assembly.

    Type d'assembly Système d’exploitation Version du .NET Framework
    Côte à côte COM Microsoft Windows XP Non obligatoire.
    Basé sur .NET Windows XP avec SP2 NET Framework version 1.1 ou ultérieure.

    La famille Windows Server 2003 prend également en charge l’interopérabilité COM sans inscription pour les assemblages basés sur .NET.

    Pour qu'une classe basée sur .NET soit compatible avec une activation sans registre provenant de COM, la classe doit disposer d'un constructeur sans paramètre et doit être publique.

Configuration des composants COM pour l’activation sans inscription

  1. Pour qu’un composant COM participe à l’activation sans inscription, il doit être déployé en tant que module side-by-side. Les assemblys côte à côte sont non managés. Pour plus d’informations, consultez Utilisation d’assemblages côte à côte.

    Pour utiliser des assemblys COM côte à côte, le développeur d'applications .NET doit fournir un manifeste d'application, qui contient les informations de liaison et d'activation. La prise en charge des assemblys côte à côte non managés est intégrée au système d'exploitation Windows XP. Le runtime COM, pris en charge par le système d’exploitation, analyse un manifeste d’application pour obtenir des informations d’activation lorsque le composant en cours d’activation n’est pas dans le Registre.

    L’activation sans inscription est facultative pour les composants COM installés sur Windows XP. Pour obtenir des instructions détaillées sur l’ajout d’un assembly côte à côte à une application, consultez Utilisation d’assemblys côte à côte.

    Remarque

    L’exécution côte à côte est une fonctionnalité .NET Framework qui permet à plusieurs versions du runtime et plusieurs versions d’applications et de composants qui utilisent une version du runtime, de s’exécuter sur le même ordinateur en même temps. L'exécution côte à côte et les assemblys côte à côte sont deux mécanismes différents de la fonctionnalité de côte à côte.

Voir aussi