Csc タスクCsc Task

CSC.exe をラップし、実行可能ファイル (.exe ファイル)、ダイナミック リンク ライブラリ (.dll ファイル)、またはコード モジュール (.netmodule ファイル) を生成します。Wraps CSC.exe, and produces executables (.exe files), dynamic-link libraries (.dll files), or code modules (.netmodule files). CSC.exe の詳細については、「C# コンパイラ オプション」を参照してください。For more information about CSC.exe, see C# Compiler Options.

パラメーターParameters

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

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

参照を検索する追加のディレクトリを指定します。Specifies additional directories to search for references. 詳しくは、「/lib (C# コンパイラ オプション)」をご覧ください。For more information, see /lib (C# Compiler Options).
AddModules 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリを構成する 1 つ以上のモジュールを指定します。Specifies one or more modules to be part of the assembly. 詳しくは、「/addmodule (C# コンパイラ オプション)」をご覧ください。For more information, see /addmodule (C# Compiler Options).
AllowUnsafeBlocks 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、unsafe キーワードを使用するコードをコンパイルします。If true, compiles code that uses the unsafe keyword. 詳しくは、「/unsafe (C# コンパイラ オプション)」をご覧ください。For more information, see /unsafe (C# Compiler Options).
ApplicationConfiguration 省略可能な String 型のパラメーターです。Optional String parameter.

アセンブリ バインド設定を含むアプリケーション構成ファイルを指定します。Specifies the application configuration file containing the assembly binding settings.
BaseAddress 省略可能な String 型のパラメーターです。Optional String parameter.

DLL を読み込む位置に推奨されるベース アドレスを指定します。Specifies the preferred base address at which to load a DLL. DLL の既定のベース アドレスは、.NET Framework.NET Framework 共通言語ランタイムにより設定されます。The default base address for a DLL is set by the .NET Framework.NET Framework common language runtime. 詳しくは、「/baseaddress (C# コンパイラ オプション)」をご覧ください。For more information, see /baseaddress (C# Compiler Options).
CheckForOverflowUnderflow 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

データ型の境界をオーバーフローする整数演算で、実行時に例外を発生させるかどうかを指定します。Specifies whether integer arithmetic that overflows the bounds of the data type causes an exception at run time. 詳しくは、「/checked (C# コンパイラ オプション)」をご覧ください。For more information, see /checked (C# Compiler Options).
CodePage 省略可能な Int32 型のパラメーターです。Optional Int32 parameter.

コンパイルですべてのソース コード ファイルに使用するコード ページを指定します。Specifies the code page to use for all source code files in the compilation. 詳しくは、「/codepage (C# コンパイラ オプション)」をご覧ください。For more information, see /codepage (C# Compiler Options).
DebugType 省略可能な String 型のパラメーターです。Optional String parameter.

デバッグの種類を指定します。Specifies the debug type. DebugType には、full または pdbonly を指定できます。DebugType can be full or pdbonly. 既定値は full です。デバッガーを実行中のプログラムに添付できます。The default is full, which enables a debugger to be attached to a running program. pdbonly を指定すると、プログラムがデバッガーで開始されたとき、ソース コードのデバッグが有効になりますが、実行中のプログラムがデバッガーにアタッチされているときにのみアセンブラーが表示されます。Specifying pdbonly enables source code debugging when the program is started in the debugger, but only displays assembler when the running program is attached to the debugger.

このパラメーターは EmitDebugInformation パラメーターに優先します。This parameter overrides the EmitDebugInformation parameter.

詳しくは、「/debug (C# コンパイラ オプション)」をご覧ください。For more information, see /debug (C# Compiler Options).
DefineConstants 省略可能な String 型のパラメーターです。Optional String parameter.

プリプロセッサ シンボルを定義します。Defines preprocessor symbols. 詳しくは、「/define (C# コンパイラ オプション)」をご覧ください。For more information, see /define (C# Compiler Options).
DelaySign 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、完全署名されたアセンブリを必要とすることが指定されます。If true, specifies that you want a fully signed assembly. false の場合、アセンブリに公開キーを含めることだけを要求するように指定されます。If false, specifies that you only want to place the public key in the assembly.

KeyFile または KeyContainer パラメーターと併用しない限り、このパラメーターには何の効果もありません。This parameter has no effect unless used with either the KeyFile or KeyContainer parameter.

詳しくは、「/delaysign (C# コンパイラ オプション)」をご覧ください。For more information, see /delaysign (C# Compiler Options).
DisabledWarnings 省略可能な String 型のパラメーターです。Optional String parameter.

無効にする警告の一覧を指定します。Specifies the list of warnings to be disabled. 詳しくは、「/nowarn (C# コンパイラ オプション)」をご覧ください。For more information, see /nowarn (C# Compiler Options).
DocumentationFile 省略可能な String 型のパラメーターです。Optional String parameter.

ドキュメント コメントを XML ファイルに出力します。Processes documentation comments to an XML file. 詳しくは、「/doc (C# コンパイラ オプション)」をご覧ください。For more information, see /doc (C# Compiler Options).
EmitDebugInformation 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、このタスクはデバッグ情報を生成し、プログラム データベース (.pdb) ファイルにその情報を追加します。If true, the task generates debugging information and places it in a program database (.pdb) file. false の場合、このタスクはデバッグ情報を生成しません。If false, the task emits no debug information. 既定値は false です。Default is false. 詳しくは、「/debug (C# コンパイラ オプション)」をご覧ください。For more information, see /debug (C# Compiler Options).
ErrorReport 省略可能な String 型のパラメーターです。Optional String parameter.

C# 内部エラーを Microsoft に報告する便利な方法を提供します。Provides a convenient way to report a C# internal error to Microsoft. このパラメーターの値には、promptsend、または none を指定できます。This parameter can have a value of prompt, send, or none. このパラメーターが prompt に設定されている場合、内部コンパイラにエラーが発生すると、プロンプトが表示されます。If the parameter is set to prompt, you will receive a prompt when an internal compiler error occurs. このプロンプトで、Microsoft にバグ レポートを電子的に送信できます。The prompt lets you send a bug report electronically to Microsoft. このパラメーターが send に設定されている場合、バグ レポートは自動的に送信されます。If the parameter is set to send, a bug report is sent automatically. このパラメーターが none に設定されている場合、コンパイラのテキスト出力でのみエラーが報告されます。If the parameter is set to none, the error is reported only in the text output of the compiler. 既定値は none です。Default is none. 詳しくは、「/errorreport (C# コンパイラ オプション)」をご覧ください。For more information, see /errorreport (C# Compiler Options).
FileAlignment 省略可能な Int32 型のパラメーターです。Optional Int32 parameter.

出力ファイル内のセクションのサイズを指定します。Specifies the size of sections in the output file. 詳しくは、「/filealign (C# コンパイラ オプション)」をご覧ください。For more information, see /filealign (C# Compiler Options).
GenerateFullPaths 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、コンパイラ出力に含まれるファイルの絶対パスが指定されます。If true, specifies the absolute path to the file in the compiler output. false の場合、ファイルの名前が指定されます。If false, specifies the name of the file. 既定値は false です。Default is false. 詳しくは、「/fullpaths (C# コンパイラ オプション)」をご覧ください。For more information, see /fullpaths (C# Compiler Options).
KeyContainer 省略可能な String 型のパラメーターです。Optional String parameter.

暗号化キー コンテナーの名前を指定します。Specifies the name of the cryptographic key container. 詳しくは、「/keycontainer (C# コンパイラ オプション)」をご覧ください。For more information, see /keycontainer (C# Compiler Options).
KeyFile 省略可能な String 型のパラメーターです。Optional String parameter.

暗号化キーを格納するファイル名を指定します。Specifies the file name containing the cryptographic key. 詳しくは、「/keyfile (C# コンパイラ オプション)」をご覧ください。For more information, see /keyfile (C# Compiler Options).
LangVersion 省略可能な String 型のパラメーターです。Optional String parameter.

使用する言語のバージョンを指定します。Specifies the version of the language to use. 詳しくは、「/langversion (C# コンパイラ オプション)」をご覧ください。For more information, see /langversion (C# Compiler Options).
LinkResources 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

出力ファイル内で .NET Framework.NET Framework リソースへのリンクを作成します。リソース ファイルは出力ファイル内に置かれません。Creates a link to a .NET Framework.NET Framework resource in the output file; the resource file is not placed in the output file.

このパラメーターに渡される項目には、「LogicalName」や「Access」という名前のメタデータ エントリを任意で指定できます。Items passed into this parameter can have optional metadata entries named LogicalName and Access. LogicalName/linkresource スイッチの identifier パラメーターに対応し、Accessaccessibility-modifier パラメーターに対応します。LogicalName corresponds to the identifier parameter of the /linkresource switch, and Access corresponds to accessibility-modifier parameter. 詳しくは、「/linkresource (C# コンパイラ オプション)」をご覧ください。For more information, see /linkresource (C# Compiler Options).
MainEntryPoint 省略可能な String 型のパラメーターです。Optional String parameter.

Main メソッドの場所を指定します。Specifies the location of the Main method. 詳細については、「/main (C# コンパイラ オプション)」を参照してください。For more information, see /main (C# Compiler Options).
ModuleAssemblyName 省略可能な String 型のパラメーターです。Optional String parameter.

このモジュールが一部となるアセンブリの名前を指定します。Specifies the name of the assembly that this module will be a part of.
NoConfig 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、csc.rsp ファイルを使用してコンパイルしないようにコンパイラに指示します。If true, tells the compiler not to compile with the csc.rsp file. 詳しくは、「/noconfig (C# コンパイラ オプション)」をご覧ください。For more information, see /noconfig (C# Compiler Options).
NoLogo 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、コンパイラの著作権情報が表示されません。If true, suppresses display of compiler banner information. 詳しくは、「/nologo (C# コンパイラ オプション)」をご覧ください。For more information, see /nologo (C# Compiler Options).
NoStandardLib 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、System 名前空間の全体を定義する mscorlib.dll がインポートされません。If true, prevents the import of mscorlib.dll, which defines the entire System namespace. 独自の System 名前空間およびオブジェクトを定義または作成する場合は、このパラメーターを使用します。Use this parameter if you want to define or create your own System namespace and objects. 詳しくは、「/nostdlib (C# コンパイラ オプション)」をご覧ください。For more information, see /nostdlib (C# Compiler Options).
NoWin32Manifest 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、既定の Win32 マニフェストを含めないでください。If true, do not include the default Win32 manifest.
Optimize 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、最適化が有効になります。If true, enables optimizations. false の場合、最適化が無効になります。If false, disables optimizations. 詳しくは、「/optimize (C# コンパイラ オプション)」をご覧ください。For more information, see /optimize (C# Compiler Options).
OutputAssembly 省略可能な String 型の出力パラメーターです。Optional String output parameter.

出力ファイルの名前を指定します。Specifies the name of the output file. 詳しくは、「/out (C# コンパイラ オプション)」をご覧ください。For more information, see /out (C# Compiler Options).
PdbFile 省略可能な String 型のパラメーターです。Optional String parameter.

デバッグ情報ファイルの名前を指定します。Specifies the debug information file name. 既定の名前は、出力ファイルの名前に .pdb 拡張子が付いたものになります。The default name is the output file name with a .pdb extension.
Platform 省略可能な String 型のパラメーターです。Optional String parameter.

出力ファイルのターゲットとするプロセッサ プラットフォームを指定します。Specifies the processor platform to be targeted by the output file. このパラメーターの値には、x86x64、または anycpu を指定できます。This parameter can have a value of x86, x64, or anycpu. 既定値は anycpu です。Default is anycpu. 詳しくは、「/platform (C# コンパイラ オプション)」をご覧ください。For more information, see /platform (C# Compiler Options).
References 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

指定したアイテムから現在のプロジェクトにパブリック型の情報をインポートするようにタスクに指示します。Causes the task to import public type information from the specified items into the current project. 詳しくは、「/reference (C# コンパイラ オプション)」をご覧ください。For more information, see /reference (C# Compiler Options).

メタデータ Aliases を元の "参照" アイテムに追加することで、MSBuildMSBuild ファイルに Visual C#Visual C# 参照エイリアスを指定できます。You can specify a Visual C#Visual C# reference alias in an MSBuildMSBuild file by adding the metadata Aliases to the original "Reference" item. たとえば、次の "LS1" コマンド ラインにエイリアス を設定する場合:For example, to set the alias "LS1" in the following CSC command line:

csc /r:LS1=MyCodeLibrary.dll /r:LS2=MyCodeLibrary2.dll *.cs

次を使用します。you would use:

<Reference Include="MyCodeLibrary"> <Aliases>LS1</Aliases> </Reference>
Resources 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

.NET Framework.NET Framework リソースを出力ファイルに組み込みます。Embeds a .NET Framework.NET Framework resource into the output file.

このパラメーターに渡される項目には、「LogicalName」や「Access」という名前のメタデータ エントリを任意で指定できます。Items passed into this parameter can have optional metadata entries named LogicalName and Access. LogicalName/resource スイッチの identifier パラメーターに対応し、Accessaccessibility-modifier パラメーターに対応します。LogicalName corresponds to the identifier parameter of the /resource switch, and Access corresponds to accessibility-modifier parameter. 詳しくは、「/resource (C# コンパイラ オプション)」をご覧ください。For more information, see /resource (C# Compiler Options).
ResponseFiles 省略可能な String 型のパラメーターです。Optional String parameter.

このタスクのコマンドを含む応答ファイルを指定します。Specifies the response file that contains commands for this task. 詳しくは、「@ (応答ファイルの指定)」をご覧ください。For more information, see @ (Specify Response File).
Sources 省略可能な ITaskItem[] 型のパラメーターです。Optional ITaskItem[] parameter.

1 つまたは複数の Visual C#Visual C# ソース ファイルを指定します。Specifies one or more Visual C#Visual C# source files.
TargetType 省略可能な String 型のパラメーターです。Optional String parameter.

出力ファイルのファイル形式を指定します。Specifies the file format of the output file. このパラメーターには値として、コード ライブラリを作成する library、コンソール アプリケーションを作成する exe、モジュールを作成する module、Windows プログラムを作成する winexe を指定できます。This parameter can have a value of library, which creates a code library, exe, which creates a console application, module, which creates a module, or winexe, which creates a Windows program. 既定値は library です。The default value is library. 詳しくは、「/target (C# コンパイラ オプション)」をご覧ください。For more information, see /target (C# Compiler Options).
TreatWarningsAsErrors 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

true の場合、すべての警告をエラーとして扱います。If true, treats all warnings as errors. 詳しくは、「/warnaserror (C# コンパイラ オプション)」をご覧ください。For more information, see /warnaserror (C# Compiler Options).
UseHostCompilerIfAvailable 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

利用できる場合、インプロセス コンパイラ オブジェクトを使用するようにタスクに指示します。Instructs the task to use the in-process compiler object, if available. Visual StudioVisual Studio によってのみ使用されます。Used only by Visual StudioVisual Studio.
Utf8Output 省略可能な Boolean 型のパラメーターです。Optional Boolean parameter.

UTF-8 エンコードを使用してコンパイラ出力をログに記録します。Logs compiler output using UTF-8 encoding. 詳しくは、「/utf8output (C# コンパイラ オプション)」をご覧ください。For more information, see /utf8output (C# Compiler Options).
WarningLevel 省略可能な Int32 型のパラメーターです。Optional Int32 parameter.

コンパイラが表示する警告レベルを指定します。Specifies the warning level for the compiler to display. 詳しくは、「/warn (C# コンパイラ オプション)」をご覧ください。For more information, see /warn (C# Compiler Options).
WarningsAsErrors 省略可能な String 型のパラメーターです。Optional String parameter.

エラーとして扱う警告の一覧を指定します。Specifies a list of warnings to treat as errors. 詳しくは、「/warnaserror (C# コンパイラ オプション)」をご覧ください。For more information, see /warnaserror (C# Compiler Options).

このパラメーターは TreatWarningsAsErrors パラメーターに優先します。This parameter overrides the TreatWarningsAsErrors parameter.
WarningsNotAsErrors 省略可能な String 型のパラメーターです。Optional String parameter.

エラーとして扱わない警告の一覧を指定します。Specifies a list of warnings that are not treated as errors. 詳しくは、「/warnaserror (C# コンパイラ オプション)」をご覧ください。For more information, see /warnaserror (C# Compiler Options).

このパラメーターは、TreatWarningsAsErrors パラメーターが true に設定されている場合にのみ役に立ちます。This parameter is only useful if the TreatWarningsAsErrors parameter is set to true.
Win32Icon 省略可能な String 型のパラメーターです。Optional String parameter.

エクスプローラーで出力ファイルを適切に表示する .ico ファイルをアセンブリに挿入します。Inserts an .ico file in the assembly, which gives the output file the desired appearance in File Explorer. 詳細については、「/win32icon (C# コンパイラ オプション)」を参照してください。For more information, see /win32icon (C# Compiler Options).
Win32Manifest 省略可能な String 型のパラメーターです。Optional String parameter.

追加する Win32 マニフェストを指定します。Specifies the Win32 manifest to be included.
Win32Resource 省略可能な String 型のパラメーターです。Optional String parameter.

Win32 リソース (.res) ファイルを出力ファイルに挿入します。Inserts a Win32 resource (.res) file in the output file. 詳しくは、「/win32res (C# コンパイラ オプション)」をご覧ください。For more information, see /win32res (C# Compiler Options).

コメントRemarks

上記のパラメーター以外に、このタスクは Microsoft.Build.Tasks.ManagedCompiler クラスからパラメーターを継承します。このクラス自体は ToolTaskExtension クラスから継承されますが、それにはさらに ToolTask クラスという継承元が存在します。In addition to the parameters listed above, this task inherits parameters from the Microsoft.Build.Tasks.ManagedCompiler class, which inherits 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

次の例では、Csc タスクを使用し、Compile アイテム コレクションのソース ファイルから実行可能ファイルをコンパイルしています。The following example uses the Csc task to compile an executable from the source files in the Compile item collection.

<CSC  
    Sources="@(Compile)"  
    OutputAssembly="$(AppName).exe"  
    EmitDebugInformation="true" />  

関連項目See Also

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