RegisterAssembly タスクRegisterAssembly Task

指定されたアセンブリに含まれるメタデータを読み込み、必要なエントリをレジストリに追加します。このため、COM クライアントは特別な処理を必要とすることなく .NET Framework.NET Framework クラスを作成できます。Reads the metadata within the specified assembly and adds the necessary entries to the registry, which allows COM clients to create .NET Framework.NET Framework classes transparently. このタスクの動作は、完全に同じではありませんが、Regasm.exe (アセンブリ登録ツール) の動作に似ています。The behavior of this task is similar, but not identical, to that of the Regasm.exe (Assembly Registration Tool).

パラメーターParameters

RegisterAssembly タスクのパラメーターの説明を次の表に示します。The following table describes the parameters of the RegisterAssembly task.

パラメーターParameter 説明Description
Assemblies 必須の ITaskItem[] 型のパラメーターです。Required ITaskItem[] parameter.

COM に登録するアセンブリを指定します。Specifies the assemblies to be registered with COM.
AssemblyListFile 省略可能な ITaskItem 型のパラメーターです。Optional ITaskItem parameter.

RegisterAssembly タスクと UnregisterAssembly タスクの間の状態に関する情報が含まれます。Contains information about the state between the RegisterAssembly task and the UnregisterAssembly task. これにより、RegisterAssembly タスクで登録に失敗したアセンブリを UnregisterAssembly タスクで登録解除しようとすることを防止できます。This prevents the UnregisterAssembly task from attempting to unregister an assembly that failed to register in the RegisterAssembly task.
CreateCodeBase 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true に設定すると、レジストリに Codebase エントリが作成されます。Codebase エントリは、グローバル アセンブリ キャッシュにインストールされていないアセンブリのファイル パスを指定するものです。If true, creates a codebase entry in the registry, which specifies the file path for an assembly that is not installed in the global assembly cache. 登録しようとしているアセンブリを、後でグローバル アセンブリ キャッシュにインストールする場合は、このオプションを指定する必要はありません。You should not specify this option if you will subsequently install the assembly that you are registering into the global assembly cache.
TypeLibFiles 省略可能な ITaskItem[] 型の出力パラメーターです。Optional ITaskItem[] output parameter.

指定したアセンブリから生成するタイプ ライブラリを指定します。Specifies the type library to generate from the specified assembly. 生成されるタイプ ライブラリには、アセンブリ内で定義されているアクセス可能なタイプが格納されます。The generated type library contains definitions of the accessible types defined within the assembly. タイプ ライブラリは、以下のいずれかの条件を満たす場合にだけ作成されます。The type library is only generated if one of the following is true:

- 指定の場所に、同じ名前のタイプ ライブラリが存在しない。- A type library of that name does not exist at that location.
- タイプ ライブラリが存在するが、渡されたアセンブリよりも古い。- A type library exists but it is older than the assembly being passed in.

渡されたアセンブリよりもタイプ ライブラリの方が新しい場合、新しいタイプ ライブラリは作成されませんが、アセンブリの登録は行われます。If the type library is newer than the assembly being passed, a new one will not be created, but the assembly will still be registered.

このパラメーターを指定する場合には、Assemblies パラメーターに指定したアイテムと同じ数のアイテムを指定する必要があります。数が異なると、タスクは失敗します。If this parameter is specified, it must have the same number of items as the Assemblies parameter or the task will fail. 指定しなかった場合には、既定でアセンブリの名前が使用され、アイテムの拡張子は .tlb に変更されます。If no inputs are specified, the task will default to the name of the assembly and change the extension of the item to .tlb.

コメントRemarks

上記のパラメーター以外に、このタスクは TaskExtension クラスからパラメーターを継承します。このクラス自体は、Task クラスから継承されます。In addition to the parameters listed above, this task inherits parameters from the TaskExtension class, which itself inherits from the Task class. これらの追加のパラメーターの一覧とその説明については、「 TaskExtension Base Class」を参照してください。For a list of these additional parameters and their descriptions, see TaskExtension Base Class.

Example

RegisterAssembly タスクを使用して、MyAssemblies アイテム コレクションで指定されたアセンブリを登録する例を次に示します。The following example uses the RegisterAssembly task to register the assembly specified by the MyAssemblies item collection.

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

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

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

</Project>  

関連項目See Also

タスク Tasks
Task Reference (タスク リファレンス)Task Reference