AL (アセンブリ リンカー) タスクAL (Assembly Linker) Task

AL タスクは、Windows Software Development Kit (SDK)Windows Software Development Kit (SDK) と共に配布されるツールである AL.exe をラップします。The AL task wraps AL.exe, a tool that is distributed with the Windows Software Development Kit (SDK)Windows Software Development Kit (SDK). アセンブリ リンカー ツールは、モジュールまたはリソース ファイルである 1 つ以上のファイルから、マニフェストを含むアセンブリを作成するために使われます。This Assembly Linker tool is used to create an assembly with a manifest from one or more files that are either modules or resource files. これらの機能はコンパイラおよび開発環境で既に提供されていることがあるので、ほとんどの場合、このタスクを直接使う必要はありません。Compilers and development environments might already provide these capabilities, so it is often not necessary to use this task directly. アセンブリ リンカーは、混合言語の開発から生成されるものなど、複数のコンポーネント ファイルから 1 つのアセンブリを作成する必要がある開発者に適しています。The Assembly Linker is most useful to developers needing to create a single assembly from multiple component files, such as those that might be produced from mixed-language development. このタスクでは、複数のモジュールが 1 つのアセンブリ ファイルに結合されることはありません。生成されたアセンブリを正しく読み込むためには、やはり個々のモジュールを配布して使用できるようにする必要があります。This task does not combine the modules into a single assembly file; the individual modules must still be distributed and available in order for the resulting assembly to load correctly. AL.exe について詳しくは、「Al.exe (アセンブリ リンカー)」をご覧ください。For more information on AL.exe, see Al.exe (Assembly Linker).

パラメーターParameters

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

パラメーターParameter 説明Description
AlgorithmID 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリ マニフェストを含むファイルを除き、マルチファイル アセンブリ内の全ファイルをハッシュするためのアルゴリズムを指定します。Specifies an algorithm to hash all files in a multifile assembly except the file that contains the assembly manifest. 詳しくは、「Al.exe (アセンブリ リンカー)」で /algid オプションのドキュメントをご覧ください。For more information, see the documentation for the /algid option in Al.exe (Assembly Linker).
BaseAddress 省略可能な String 型のパラメーターです。Optional String parameter.

実行時にユーザーのコンピューターに DLL を読み込む先のアドレスを指定します。Specifies the address at which a DLL will be loaded on the user's computer at run time. オペレーティング システムにプロセス空間内で DLL を再配置させる代わりに DLL のベース アドレスを指定しておくと、アプリケーションの読み込み速度が速くなります。Applications load faster if you specify the base address of the DLLs, rather than letting the operating system relocate the DLLs in the process space. このパラメーターは /baseaddress に対応しています。This parameter corresponds to the /baseaddress.
CompanyName 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの Company フィールドに文字列を指定します。Specifies a string for the Company field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /comp[any] オプションのドキュメントをご覧ください。For more information, see the documentation for the /comp[any] option in Al.exe (Assembly Linker).
Configuration 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの Configuration フィールドに文字列を指定します。Specifies a string for the Configuration field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /config[uration] オプションのドキュメントをご覧ください。For more information, see the documentation for the /config[uration] option in Al.exe (Assembly Linker).
Copyright 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの Copyright フィールドに文字列を指定します。Specifies a string for the Copyright field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /copy[right] オプションのドキュメントをご覧ください。For more information, see the documentation for the /copy[right] option in Al.exe (Assembly Linker).
Culture 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリに関連付けるカルチャ文字列を指定します。Specifies the culture string to associate with the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /c[ulture] オプションのドキュメントをご覧ください。For more information, see the documentation for the /c[ulture] option in Al.exe (Assembly Linker).
DelaySign 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

アセンブリに公開キーのみを置く場合は true、アセンブリを完全に署名する場合は false です。true to place only the public key in the assembly; false to fully sign the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /delay[sign] オプションのドキュメントをご覧ください。For more information, see the documentation for the /delay[sign] option in Al.exe (Assembly Linker).
Description 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの Description フィールドに文字列を指定します。Specifies a string for the Description field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /descr[iption] オプションのドキュメントをご覧ください。For more information, see the documentation for the /descr[iption] option in Al.exe (Assembly Linker).
EmbedResources 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

アセンブリ マニフェストを含むイメージに指定したリソースを埋め込みます。Embeds the specified resources in the image that contains the assembly manifest. このタスクは、リソース ファイルの内容をイメージにコピーします。This task copies the contents of the resource file into the image. このパラメーターに渡すアイテムには、LogicalName および Access という名前の省略可能なメタデータを添付することができます。The items passed in to this parameter may have optional metadata attached to them called LogicalName and Access. LogicalName メタデータは、リソースの内部識別子を指定するために使われます。The LogicalName metadata is used to specify the internal identifier for the resource. リソースを他のアセンブリから見えないようにするには、Access メタデータを private に設定します。The Access metadata can be set to private in order to make the resource not visible to other assemblies. 詳しくは、「Al.exe (アセンブリ リンカー)」で /embed[resource] オプションのドキュメントをご覧ください。For more information, see the documentation for the /embed[resource] option in Al.exe (Assembly Linker).
EvidenceFile 省略可能な String 型のパラメーターです。Optional String parameter.

Security.Evidence というリソース名を持つアセンブリに、指定したファイルを埋め込みます。Embeds the specified file in the assembly with the resource name of Security.Evidence.

通常のリソースに対して Security.Evidence を使うことはできません。You cannot use Security.Evidence for regular resources. このパラメーターは、「Al.exe (アセンブリ リンカー)」の /e[vidence] オプションに対応します。This parameter corresponds to the /e[vidence] option in Al.exe (Assembly Linker).
ExitCode 省略可能な Int32 型の読み取り専用出力パラメーターです。Optional Int32 output read-only parameter.

実行されたコマンドによって提供される終了コードを指定します。Specifies the exit code provided by the executed command.
FileVersion 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの File Version フィールドに文字列を指定します。Specifies a string for the File Version field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /fileversion オプションのドキュメントをご覧ください。For more information, see the documentation for the /fileversion option in Al.exe (Assembly Linker).
Flags 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの Flags フィールドに値を指定します。Specifies a value for the Flags field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /flags オプションのドキュメントをご覧ください。For more information, see the documentation for the /flags option in Al.exe (Assembly Linker).
GenerateFullPaths 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

エラー メッセージで報告されるすべてのファイルについて絶対パスを使うよう、タスクに指定します。Causes the task to use the absolute path for any files that are reported in an error message. このパラメーターは、「Al.exe (アセンブリ リンカー)」の /fullpaths オプションに対応します。This parameter corresponds to the /fullpaths option in Al.exe (Assembly Linker).
KeyContainer 省略可能な String 型のパラメーターです。Optional String parameter.

キー ペアを保持するコンテナーを指定します。Specifies a container that holds a key pair. これにより、公開キーがアセンブリ マニフェストに挿入され、アセンブリに署名 (厳密な名前が指定) されます。This will sign the assembly (give it a strong name) by inserting a public key into the assembly manifest. 次に、タスクは最終的なアセンブリに秘密キーで署名します。The task will then sign the final assembly with the private key. 詳しくは、「Al.exe (アセンブリ リンカー)」で /keyn[ame] オプションのドキュメントをご覧ください。For more information, see the documentation for the /keyn[ame] option in Al.exe (Assembly Linker).
KeyFile 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリに署名するためのキー ペアまたは公開キーだけを含むファイルを指定します。Specifies a file that contains a key pair or just a public key to sign an assembly. コンパイラは、アセンブリ マニフェストに公開キーを挿入し、最終的なアセンブリに秘密キーで署名します。The compiler inserts the public key in the assembly manifest and then signs the final assembly with the private key. 詳しくは、「Al.exe (アセンブリ リンカー)」で /keyf[ile] オプションのドキュメントをご覧ください。For more information, see the documentation for the /keyf[ile] option in Al.exe (Assembly Linker).
LinkResources 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

指定したリソース ファイルをアセンブリにリンクします。Links the specified resource files to an assembly. リソースはアセンブリの一部になりますが、ファイルはコピーされません。The resource becomes part of the assembly, but the file is not copied. このパラメーターに渡すアイテムには、LogicalNameTarget、および Access という名前の省略可能なメタデータを添付することができます。The items passed in to this parameter may have optional metadata attached to them called LogicalName, Target, and Access. LogicalName メタデータは、リソースの内部識別子を指定するために使われます。The LogicalName metadata is used to specify the internal identifier for the resource. Target メタデータでは、タスクがファイルをコピーする先のパスとファイル名を指定できます。その後は、この新しいファイルがアセンブリにコンパイルされます。The Target metadata can specify the path and filename to which the task copies the file, after which it compiles this new file into the assembly. リソースを他のアセンブリから見えないようにするには、Access メタデータを private に設定します。The Access metadata can be set to private in order to make the resource not visible to other assemblies. 詳しくは、「Al.exe (アセンブリ リンカー)」で /link[resource] オプションのドキュメントをご覧ください。For more information, see the documentation for the /link[resource] option in Al.exe (Assembly Linker).
MainEntryPoint 省略可能な String 型のパラメーターです。Optional String parameter.

モジュールを実行可能ファイルに変換するときに、エントリ ポイントとして使うメソッドの完全修飾名 (class.method) を指定します。Specifies the fully qualified name (class.method) of the method to use as an entry point when converting a module to an executable file. このパラメーターは、「Al.exe (アセンブリ リンカー)」の /main オプションに対応します。This parameter corresponds to the /main option in Al.exe (Assembly Linker).
OutputAssembly 必須の ITaskItem 型の出力パラメーターです。Required ITaskItem output parameter.

このタスクで生成されるファイルの名前を指定します。Specifies the name of the file generated by this task. このパラメーターは、「Al.exe (アセンブリ リンカー)」の /out オプションに対応します。This parameter corresponds to the /out option in Al.exe (Assembly Linker).
Platform 省略可能な String 型のパラメーターです。Optional String parameter.

このコードを実行できるプラットフォームを制限します。x86Itaniumx64、または anycpu のいずれかでなければなりません。Limits which platform this code can run on; must be one of x86, Itanium, x64, or anycpu. 既定値は、anycpu です。The default is anycpu. このパラメーターは、「Al.exe (アセンブリ リンカー)」の /platform オプションに対応します。This parameter corresponds to the /platform option in Al.exe (Assembly Linker).
ProductName 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの Product フィールドに文字列を指定します。Specifies a string for the Product field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /prod[uct] オプションのドキュメントをご覧ください。For more information, see the documentation for the /prod[uct] option in Al.exe (Assembly Linker).
ProductVersion 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの ProductVersion フィールドに文字列を指定します。Specifies a string for the ProductVersion field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /productv[ersion] オプションのドキュメントをご覧ください。For more information, see the documentation for the /productv[ersion] option in Al.exe (Assembly Linker).
ResponseFiles 省略可能な String[] 型のパラメーターです。Optional String[] parameter.

アセンブリ リンカーに渡す追加のオプションが含まれる応答ファイルを指定します。Specifies the response files that contain additional options to pass through to the Assembly Linker.
SdkToolsPath 省略可能な String 型のパラメーターです。Optional String parameter.

resgen.exe などの SDK ツールのパスを指定します。Specifies the path to the SDK tools, such as resgen.exe.
SourceModules 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

アセンブリにコンパイルする 1 つ以上のモジュール。One or more modules to be compiled into an assembly. モジュールは生成されるアセンブリのマニフェストに列記され、アセンブリを読み込むにはモジュールを配布して使用できるようにする必要があります。The modules will be listed in the manifest of the resulting assembly, and will still need to distributed and available in order for the assembly to load. このパラメーターに渡すアイテムには、Target という名前の追加メタデータを指定できます。このメタデータでは、タスクがファイルをコピーする先のパスとファイル名を指定します。その後は、この新しいファイルがアセンブリにコンパイルされます。The items passed into this parameter may have additional metadata called Target, which specifies the path and filename to which the task copies the file, after which it compiles this new file into the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」のドキュメントをご覧ください。For more information, see the documentation for Al.exe (Assembly Linker). このパラメーターは、特定のスイッチを指定しないで Al.exe に渡されるモジュールのリストに対応します。This parameter corresponds to the list of modules passed into Al.exe without a specific switch.
TargetType 省略可能な String 型のパラメーターです。Optional String parameter.

出力ファイルのファイル形式として、library (コード ライブラリ)、exe (コンソール アプリケーション)、または win (Windows ベースのアプリケーション) を指定します。Specifies the file format of the output file: library (code library), exe (console application), or win (Windows-based application). 既定値は、library です。The default is library. このパラメーターは、「Al.exe (アセンブリ リンカー)」の /t[arget] オプションに対応します。This parameter corresponds to the /t[arget] option in Al.exe (Assembly Linker).
TemplateFile 省略可能な String 型のパラメーターです。Optional String parameter.

カルチャ フィールドを除く、すべてのアセンブリ メタデータの継承元であるアセンブリを指定します。Specifies the assembly from which to inherit all assembly metadata, except the culture field. 指定するアセンブリには厳密な名前が必要です。The specified assembly must have a strong name.

TemplateFile パラメーターを指定して作成したアセンブリは、サテライト アセンブリになります。An assembly that you create with the TemplateFile parameter will be a satellite assembly. このパラメーターは、「Al.exe (アセンブリ リンカー)」の /template オプションに対応します。This parameter corresponds to the /template option in Al.exe (Assembly Linker).
Timeout 省略可能な Int32 型のパラメーターです。Optional Int32 parameter.

タスク実行を終了するまでの時間をミリ秒単位で指定します。Specifies the amount of time, in milliseconds, after which the task executable is terminated. 既定値は Int.MaxValue であり、タイムアウト期限がないことを示します。The default value is Int.MaxValue, indicating that there is no time out period.
Title 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの Title フィールドに文字列を指定します。Specifies a string for the Title field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /title オプションのドキュメントをご覧ください。For more information, see the documentation for the /title option in Al.exe (Assembly Linker).
ToolPath 省略可能な String 型のパラメーターです。Optional String parameter.

タスクが基になる実行可能ファイル (Al.exe) を読み込む場所を指定します。Specifies the location from where the task will load the underlying executable file (Al.exe). このパラメーターを指定しないと、MSBuildMSBuild を実行しているフレームワークのバージョンに対応する SDK インストール パスがタスクに使用されます。If this parameter is not specified, the task uses the SDK installation path corresponding to the version of the framework that is running MSBuildMSBuild.
Trademark 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリの Trademark フィールドに文字列を指定します。Specifies a string for the Trademark field in the assembly. 詳しくは、「Al.exe (アセンブリ リンカー)」で /trade[mark] オプションのドキュメントをご覧ください。For more information, see the documentation for the /trade[mark] option in Al.exe (Assembly Linker).
Version 省略可能な String 型のパラメーターです。Optional String parameter.

このアセンブリのバージョン情報を指定します。Specifies the version information for this assembly. 文字列の形式は、major.minor.build.revision です。The format of the string is major.minor.build.revision. 既定値は 0 です。The default value is 0. 詳しくは、「Al.exe (アセンブリ リンカー)」で /v[ersion] オプションのドキュメントをご覧ください。For more information, see the documentation for the /v[ersion] option in Al.exe (Assembly Linker).
Win32Icon 省略可能な String 型のパラメーターです。Optional String parameter.

.ico ファイルをアセンブリに挿入します。Inserts an .ico file in the assembly. この .ico ファイルは、エクスプローラーにおける出力ファイルの視覚的な表現を提供します。The .ico file gives the output file the desired appearance in File Explorer. このパラメーターは、「Al.exe (アセンブリ リンカー)」の /win32icon オプションに対応します。This parameter corresponds to the /win32icon option in Al.exe (Assembly Linker).
Win32Resource 省略可能な String 型のパラメーターです。Optional String parameter.

Win32 リソース (.res ファイル) を出力ファイルに挿入します。Inserts a Win32 resource (.res file) in the output file. 詳しくは、「Al.exe (アセンブリ リンカー)」で /win32res オプションのドキュメントをご覧ください。For more information, see the documentation for the /win32res option in Al.exe (Assembly Linker).

コメントRemarks

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

Example

次の例では、指定したオプションでアセンブリを作成します。The following example creates an assembly with the specified options.

<AL  
    EmbedResources="@(EmbeddedResource)"  
    Culture="%(EmbeddedResource.Culture)"  
    TemplateFile="@(IntermediateAssembly)"  
    KeyContainer="$(KeyContainerName)"  
    KeyFile="$(KeyOriginatorFile)"  
    DelaySign="$(DelaySign)"  

    OutputAssembly=  
       "%(EmbeddedResource.Culture)\$(TargetName).resources.dll">  

    <Output TaskParameter="OutputAssembly"  
        ItemName="SatelliteAssemblies"/>  
</AL>  

関連項目See Also

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