Partager via


RegisterAssembly, tâche

Lit les métadonnées dans l'assembly spécifié et ajoute les entrées nécessaires au Registre, ce qui permet aux clients COM de créer des classes .NET Framework de façon transparente. Le comportement de cette tâche est similaire, sans être identique, à celui de Regasm.exe (outil Assembly Registration Tool).

Paramètres

Le tableau suivant décrit les paramètres de la tâche RegisterAssembly.

Paramètre

Description

Assemblies

Paramètre ITaskItem[] obligatoire.

Spécifie les assemblys à inscrire avec COM.

AssemblyListFile

Paramètre ITaskItem facultatif.

Contient des informations relatives à l'état entre la tâche RegisterAssembly et la tâche UnregisterAssembly. Cela empêche la tâche UnregisterAssembly de tenter l'annulation de l'inscription d'un assembly qui n'a pas été inscrit dans la tâche RegisterAssembly.

CreateCodeBase

Paramètre Boolean facultatif.

Si la valeur est true, crée une entrée de code base dans le Registre, spécifiant le chemin d'accès du fichier d'un assembly qui n'est pas installé dans le Global Assembly Cache. Vous ne devez pas spécifier cette option si vous devez installer par la suite l'assembly que vous enregistrez dans le Global Assembly Cache.

TypeLibFiles

Paramètre de sortie ITaskItem[] facultatif.

Spécifie la bibliothèque de types à générer à partir de l'assembly spécifié. La bibliothèque de types générée contient des définitions des types accessibles définis dans l'assembly. La bibliothèque de types est générée uniquement si l'un des éléments suivants est vrai :

  • Il n'existe aucune bibliothèque de types de ce nom à cet emplacement.

  • Il existe une bibliothèque de types, mais elle est plus ancienne que l'assembly passé.

Si la bibliothèque de types est plus récente que l'assembly passé, aucune nouvelle bibliothèque n'est créée, mais l'assembly reste inscrit.

Si ce paramètre est spécifié, il doit avoir le même nombre d'éléments que le paramètre Assemblies ou la tâche échoue. Si aucune entrée n'est spécifiée, la tâche prend par défaut le nom de l'assembly et modifie l'extension de l'élément en .tlb.

Notes

Framework64/< version >/RegisterAssemblyTask ne peut pas résoudre une bibliothèque d'objets COM enregistrée comme composants 32 bits. Infrastructure/< version >/RegisterAssemblyTask ne peut pas résoudre une bibliothèque d'objets COM enregistrée comme composants 64 bits.

Par exemple, si vous enregistrez une bibliothèque d'objets COM appelée ClassLibrary1 comme composants 32 bits sur un ordinateur 64 bits, exécutez Visual Studio, puis modifiez la cible en x64, la génération échoue avec l'erreur suivante :

ClassLibrary1.dll is not a valid assembly

En plus des paramètres énumérés ci-dessus, cette tâche hérite des paramètres de la classe TaskExtension, qui hérite elle-même de la classe Task. Pour obtenir la liste de ces paramètres supplémentaires et de leurs descriptions, consultez Classe TaskExtension Base.

Exemple

L'exemple suivant utilise la tâche RegisterAssembly pour inscrire l'assembly spécifié par la collection d'éléments MyAssemblies.

<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">

    <ItemGroup>
        <MyAssemblies Include="MyAssembly.dll" />
    <ItemGroup>

    <Target Name="RegisterAssemblies">
        <RegisterAssembly
            Assemblies="@(MyAssemblies)" >
    </Target>

</Project>

Voir aussi

Concepts

Tâches MSBuild

Autres ressources

Référence des tâches MSBuild