Partager via


Manifeste d'assembly

Chaque assembly, qu’il soit statique ou dynamique, contient une collection de données qui décrit la façon dont les éléments de l’assembly se rapportent les uns aux autres. Le manifeste d’assemblage contient ces métadonnées de l'assemblage. Un manifeste d’assembly contient toutes les métadonnées nécessaires pour spécifier les exigences de version et l’identité de sécurité de l’assembly, ainsi que toutes les métadonnées nécessaires pour définir l’étendue de l’assembly et résoudre les références aux ressources et aux classes. Le manifeste d’assembly peut être stocké dans un fichier PE (un .exe ou .dll) avec du code CIL (Common Intermediate Language) ou dans un fichier PE autonome qui contient uniquement des informations de manifeste d’assembly.

L’illustration suivante montre les différentes façons dont le manifeste peut être stocké.

Diagramme montrant le manifeste dans une configuration d’assembly à fichier unique et d’assembly multifichier.

Pour un assembly avec un fichier associé, le manifeste est incorporé dans le fichier PE pour former un assembly à fichier unique. Vous pouvez créer un assembly multifichier avec un fichier manifeste autonome ou avec le manifeste incorporé dans l’un des fichiers PE de l’assembly.

Le manifeste de chaque assembly exécute les fonctions suivantes :

  • Énumère les fichiers qui composent l’assembly.

  • Il détermine le mode de mappage des références aux types et aux ressources de l'assembly aux fichiers qui contiennent leurs déclarations et leurs implémentations.

  • Énumère les autres assemblées dont dépend l'assemblée.

  • Il fournit un niveau d'adressage indirect entre les consommateurs de l'assembly et les détails d'implémentation de l'assembly.

  • Il rend l'assembly autodescriptif.

Contenu du manifeste d'assemblage

Le tableau suivant présente les informations contenues dans le manifeste d’assembly. Les quatre premiers éléments : nom de l’assembly, numéro de version, culture et informations sur le nom fort constituent l’identité de l’assembly.

Informations Descriptif
Nom de l'assembly Chaîne de texte spécifiant le nom de l'assembly.
Numéro de version Numéro de version majeure et mineure, ainsi qu’un numéro de révision et de build. Le Common Language Runtime utilise ces numéros pour appliquer la politique de version.
Culture Information sur la culture ou la langue que l'assemblage prend en charge. Ces informations ne doivent être utilisées que pour désigner un assemblage en tant qu'assemblage satellite contenant des informations spécifiques à une culture ou une langue. (Un assemblage avec des informations culturelles est automatiquement supposé être un assemblage satellite.)
Informations sur le nom fort Clé publique de l'éditeur si un nom fort a été attribué à l'assembly.
Liste de tous les fichiers dans l’assembly Hachage de chaque fichier figurant dans l'assembly et nom de fichier. Notez que tous les fichiers qui composent l’assembly doivent se trouver dans le même répertoire que le fichier contenant le manifeste d’assembly.
Informations sur les références de type Informations utilisées par le runtime pour mapper une référence de type au fichier qui contient sa déclaration et son implémentation. Elles sont utilisées pour les types qui sont exportés à partir de l'assembly.
Informations sur les assemblys référencés Liste des autres assemblages qui sont référencés statiquement par l’assemblage. Chaque référence inclut le nom de l'assembly dépendant, les métadonnées de l'assembly (version, culture, système d'exploitation...) et la clé publique, si l'assembly possède un nom fort.

Vous pouvez ajouter ou modifier des informations dans le manifeste d’assembly à l’aide d’attributs d’assembly dans votre code. Vous pouvez modifier les informations de version et les attributs d’information, notamment les marques de commerce, le copyright, le produit, la société et la version informationnelle. Pour obtenir la liste complète des attributs d’assembly, consultez Définir des attributs d’assembly.

Voir aussi