UsingTask 要素 (MSBuild)UsingTask Element (MSBuild)

Task 要素で参照されているタスクを、タスクの実装が含まれているアセンブリにマップします。Maps the task that is referenced in a Task element to the assembly that contains the task implementation.



<UsingTask TaskName="TaskName"  
    AssemblyName = "AssemblyName"   
    TaskFactory = "ClassName"  
    Condition="'String A'=='String B'" />  

属性および要素Attributes and Elements

以降のセクションでは、属性、子要素、および親要素について説明します。The following sections describe attributes, child elements, and parent elements.


属性Attribute 説明Description
AssemblyName AssemblyName 属性と AssemblyFile 属性のどちらかが必要です。Either the AssemblyName attribute or the AssemblyFile attribute is required.

読み込むアセンブリの名前。The name of the assembly to load. AssemblyName 属性は厳密な名前付きのアセンブリを受け取りますが、厳密な名前は必須ではありません。The AssemblyName attribute accepts strong-named assemblies, although strong-naming is not required. この属性を使用すると、.NET の Load メソッドを使用してアセンブリを読み込む場合と同じ結果が得られます。Using this attribute is equivalent to loading an assembly by using the Load method in .NET.

AssemblyFile 属性が使用されている場合、この属性は使用できません。You cannot use this attribute if the AssemblyFile attribute is used.
AssemblyFile AssemblyNameAssemblyFile 属性のどちらかが必要です。Either the AssemblyName or the AssemblyFile attribute is required.

アセンブリのファイル パス。The file path of the assembly. この属性は、完全パスまたは相対パスを受け取ります。This attribute accepts full paths or relative paths. 相対パスは、UsingTask 要素が宣言されているプロジェクト ファイルまたはターゲット ファイルのディレクトリに対して相対的なパスです。Relative paths are relative to the directory of the project file or targets file where the UsingTask element is declared. この属性を使用すると、.NET の LoadFrom メソッドを使用してアセンブリを読み込む場合と同じ結果が得られます。Using this attribute is equivalent to loading an assembly by using the LoadFrom method in .NET.

AssemblyName 属性が使用されている場合、この属性は使用できません。You cannot use this attribute if the AssemblyName attribute is used.
TaskFactory 省略可能な属性です。Optional attribute.

指定された Task 名のインスタンスの生成を担うアセンブリ内のクラスを指定します。Specifies the class in the assembly that is responsible for generating instances of the specified Task name. ユーザーは、タスク ファクトリが受信してタスクの生成に使用する子要素として、TaskBody を指定することもできます。The user may also specify a TaskBody as a child element that the task factory receives and uses to generate the task. TaskBody の内容は、タスク ファクトリに固有のものです。The contents of the TaskBody are specific to the task factory.
TaskName 必須の属性です。Required attribute.

アセンブリから参照するタスクの名前。The name of the task to reference from an assembly. あいまいになる可能性がある場合、この属性は常に完全な名前空間を指定する必要があります。If ambiguities are possible, this attribute should always specify full namespaces. あいまいさが存在する場合、MSBuild によって任意の一致が選択され、予期しない結果につながる可能性があります。If there are ambiguities, MSBuild chooses an arbitrary match, which could produce unexpected results.
Condition 省略可能な属性です。Optional attribute.

評価する条件です。The condition to evaluate. 詳細については、「条件」を参照してください。For more information, see Conditions.

子要素Child Elements

要素Element 説明Description
ParameterGroupParameterGroup 指定された TaskFactory によって生成されるタスクに表示されるパラメーターのセットです。The set of parameters that appear on the task that is generated by the specified TaskFactory.
TaskTask タスクのインスタンスを生成するために TaskFactory に渡されるデータです。The data that is passed to the TaskFactory to generate an instance of the task.

親要素Parent Elements

要素Element 説明Description
プロジェクトProject MSBuildMSBuild プロジェクト ファイルの必須のルート要素です。Required root element of an MSBuildMSBuild project file.


環境変数、コマンド ライン プロパティ、プロジェクト レベル プロパティ、およびプロジェクト レベル項目は、直接、またはインポートされたプロジェクト ファイルを通じて、プロジェクト ファイルに含まれる UsingTask 要素内で参照できます。Environment variables, command-line properties, project-level properties, and project-level items can be referenced in the UsingTask elements included in the project file either directly or through an imported project file. 詳細については、タスクに関する記事を参照してください。For more information, see Tasks.


MSBuild エンジンを使用してグローバルに登録された .tasks ファイルの 1 つから UsingTask 要素が使用されている場合、プロジェクトレベル プロパティおよび項目は意味を持ちません。Project-level properties and items have no meaning if the UsingTask element is coming from one of the .tasks files that are globally registered with the MSBuild engine. プロジェクト レベルの値は、MSBuild に対してグローバルなプロパティではありません。Project-level values are not global to MSBuild.

MSBuild 4.0 では、UsingTask を .overridetask ファイルから読み込むことができます。In MSBuild 4.0, using tasks can be loaded from .overridetask files.


次の例では、AssemblyName 属性で UsingTask 要素を使用する方法を示します。The following example shows how to use the UsingTask element with an AssemblyName attribute.

<UsingTask TaskName="MyTask" AssemblyName="My.Assembly" TaskFactory="MyTaskFactory">  
              <Parameter1 ParameterType="System.String" Required="False" Output="False"/>  
              <Parameter2 ParameterType="System.Int" Required="True" Output="False"/>  
      ... Task factory-specific data ...  


次の例では、AssemblyFile 属性で UsingTask 要素を使用する方法を示します。The following example shows how to use the UsingTask element with an AssemblyFile attribute.

<UsingTask TaskName="Email"  
              AssemblyFile="c:\myTasks\myTask.dll" />  

参照See Also

タスク Tasks
Task Reference (タスク リファレンス) Task Reference
プロジェクト ファイル スキーマ リファレンスProject File Schema Reference