次の方法で共有


Csc タスク

更新 : 2007 年 11 月

実行可能ファイル (.exe ファイル)、ダイナミック リンク ライブラリ (.dll ファイル)、またはコード モジュール (.netmodule ファイル) を作成する CSC.exe をラップします。CSC.exe の詳細については、「C# コンパイラ オプション」を参照してください。

パラメータ

Csc タスクのパラメータの説明を次の表に示します。

パラメータ

説明

AdditionalLibPaths

省略可能な String[] 型のパラメータです。

参照の検索対象とするディレクトリを追加指定します。詳細については、「/lib (アセンブリ参照場所の指定) (C# コンパイラ オプション)」を参照してください。

AddModules

省略可能な String 型のパラメータです。

アセンブリの一部となる 1 つ以上のモジュールを指定します。詳細については、「/addmodule (メタデータのインポート) (C# コンパイラ オプション)」を参照してください。

AllowUnsafeBlocks

省略可能な Boolean 型のパラメータです。

true に設定すると、unsafe キーワードを使用するコードをコンパイルできます。詳細については、「/unsafe (unsafe モードの有効化) (C# コンパイラ オプション)」を参照してください。

BaseAddress

省略可能な String 型のパラメータです。

DLL を読み込むベース アドレスを指定します。DLL の既定のベース アドレスは、.NET Framework 共通言語ランタイムによって設定されます。詳細については、「/baseaddress (DLL のベース アドレスの指定) (C# コンパイラ オプション)」を参照してください。

CheckForOverflowUnderflow

省略可能な Boolean 型のパラメータです。

データ型の境界をオーバーフローする整数算術演算の実行時に例外を発生するかどうかを指定します。詳細については、「/checked (整数算術演算のチェック) (C# コンパイラ オプション)」を参照してください。

CodePage

省略可能な Int32 型のパラメータです。

コンパイルですべてのソース コード ファイルに使用するコード ページを指定します。詳細については、「/codepage (ソース コード ファイルのコード ページの指定) (C# コンパイラ オプション)」を参照してください。

DebugType

省略可能な String 型のパラメータです。

デバッグの種類を指定します。DebugType には、full または pdbonly を指定できます。既定値は、full です。この場合には実行中のプログラムにデバッガをアタッチできます。pdbonly を指定すると、プログラムがデバッガで開始されたときにはソース コードをデバッグできますが、実行中のプログラムをデバッガにアタッチしたときはアセンブラしか表示されません。

このパラメータは、EmitDebugInformation パラメータをオーバーライドします。

詳細については、「/debug (デバッグ情報の生成) (C# コンパイラ オプション)」を参照してください。

DefineConstants

省略可能な String 型のパラメータです。

プリプロセッサ シンボルを定義します。詳細については、「/define (プリプロセッサ定義) (C# コンパイラ オプション)」を参照してください。

DelaySign

省略可能な Boolean 型のパラメータです。

完全署名されたアセンブリを作成する場合は、true を設定します。アセンブリに公開キーだけを含める場合は、false を設定します。

KeyFile パラメータまたは KeyContainer パラメータと一緒に使用しない場合、このパラメータは無効になります。

詳細については、「/delaysign (アセンブリの遅延署名) (C# コンパイラ オプション)」を参照してください。

DisabledWarnings

省略可能な String 型のパラメータです。

無効にする警告のリストを指定します。詳細については、「/nowarn (指定した警告の非表示) (C# コンパイラ オプション)」を参照してください。

DocumentationFile

省略可能な String 型のパラメータです。

ドキュメント コメントを XML ファイルに出力します。詳細については、「/doc (ドキュメント コメントの処理) (C# コンパイラ オプション)」を参照してください。

EmitDebugInformation

省略可能な Boolean 型のパラメータです。

true に設定すると、デバッグ情報が生成され、プログラム データベース (.pdb) ファイルに置かれます。false に設定した場合は、デバック情報は出力されません。既定値は false です。詳細については、「/debug (デバッグ情報の生成) (C# コンパイラ オプション)」を参照してください。

ErrorReport

省略可能な String 型のパラメータです。

このパラメータは、C# 内部のエラーを Microsoft に報告するときの便利な方法として機能します。このパラメータの値には、promptsend、または none を指定できます。パラメータを prompt に設定すると、内部コンパイル エラーが発生した時点でプロンプトが表示されます。このプロンプトを使用すると、Microsoft に電子的にバグ レポートを送信できます。パラメータを send に設定すると、バグ レポートは自動的に送信されます。パラメータを none に設定すると、エラーはコンパイラのテキスト出力としてのみ報告されます。既定値は none です。詳細については、「/errorreport (エラー報告動作の設定) (C# コンパイラ オプション)」を参照してください。

FileAlignment

省略可能な Int32 型のパラメータです。

出力ファイル内のセクションのサイズを指定します。詳細については、「/filealign (セクション配置の指定) (C# コンパイラ オプション)」を参照してください。

GenerateFullPaths

省略可能な Boolean 型のパラメータです。

true の場合は、コンパイラ出力にファイルの絶対パスを指定します。false の場合は、ファイルの名前を指定します。既定値は false です。詳細については、「/fullpaths (コンパイラ出力の絶対パスの指定) (C# コンパイラ オプション)」を参照してください。

KeyContainer

省略可能な String 型のパラメータです。

暗号化キー コンテナの名前を指定します。詳細については、「/keycontainer (厳密名キー コンテナの指定) (C# コンパイラ オプション)」を参照してください。

KeyFile

省略可能な String 型のパラメータです。

暗号化キーを格納してあるファイル名を指定します。詳細については、「/keyfile (厳密名キー ファイルの指定) (C# コンパイラ オプション)」を参照してください。

LangVersion

省略可能な String 型のパラメータです。

使用する言語のバージョンを指定します。詳細については、「/langversion (準拠構文) (C# コンパイラ オプション)」を参照してください。

LinkResources

省略可能な ITaskItem[] 型のパラメータです。

出力ファイル内に .NET Framework リソースへのリンクを作成します。リソース ファイル自体は、出力ファイルに含まれません。

このパラメータに渡すアイテムには、LogicalName および Access という名前の省略可能なメタデータ エントリを添付することができます。LogicalName は、/linkresource スイッチの identifier パラメータに相当します。また、Access は、accessibility-modifier パラメータに相当します。詳細については、「/linkresource (.NET Framework リソースへのリンク) (C# コンパイラ オプション)」を参照してください。

MainEntryPoint

省略可能な String 型のパラメータです。

Main メソッドの場所を指定します。詳細については、「/main (Main メソッドの場所の指定) (C# コンパイラ オプション)」を参照してください。

NoConfig

省略可能な Boolean 型のパラメータです。

true に設定すると、コンパイル時に csc.rsp ファイルが使用されなくなります。詳細については、「/noconfig (csc.rsp の無視) (C# コンパイラ オプション)」を参照してください。

NoLogo

省略可能な Boolean 型のパラメータです。

true に設定すると、コンパイラの開始メッセージが表示されなくなります。詳細については、「/nologo (著作権情報の非表示) (C# コンパイラ オプション)」を参照してください。

NoStandardLib

省略可能な Boolean 型のパラメータです。

true に設定すると、System 名前空間の全体を定義する mscorlib.dll がインポートされなくなります。独自の System 名前空間およびオブジェクトを定義または作成する場合は、このパラメータを使用します。詳細については、「/nostdlib (標準ライブラリのインポート禁止) (C# コンパイラ オプション)」を参照してください。

Optimize

省略可能な Boolean 型のパラメータです。

true に設定すると、コンパイラの最適化が有効になります。false に設定すると、最適化が無効になります。詳細については、「/optimize (最適化の有効化/無効化) (C# コンパイラ オプション)」を参照してください。

OutputAssembly

省略可能な String 型のです。

出力ファイルの名前を指定します。詳細については、「/out (出力ファイル名の設定) (C# コンパイラ オプション)」を参照してください。

Platform

省略可能な String 型のパラメータです。

出力ファイルがターゲットとするプロセッサ プラットフォームを指定します。このパラメータの値には、x86x64、または anycpu を指定できます。既定値は anycpu です。詳細については、「/platform (出力プラットフォームの指定) (C# コンパイラ オプション)」を参照してください。

References

省略可能な ITaskItem[] 型のパラメータです。

タスクで、指定したアイテムから現在のプロジェクトに、パブリック型の情報をインポートする場合に指定します。詳細については、「/reference (メタデータのインポート) (C# コンパイラ オプション)」を参照してください。

MSBuild ファイルで、メタデータの Aliases を元の "参照" 項目に追加することにより、Visual C# 参照エイリアスを指定できます。たとえば、次の CSC コマンド ラインのエイリアス "LS1" を設定するとします。

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

この場合、次のようなコードを使用します。

<Reference Include="MyCodeLibrary">
  <Aliases>LS1</Aliases>
</Reference>

Resources

省略可能な ITaskItem[] 型のパラメータです。

.NET Framework リソースを出力ファイルに埋め込みます。

このパラメータに渡すアイテムには、LogicalName および Access という名前の省略可能なメタデータ エントリを添付することができます。LogicalName は、/resource スイッチの identifier パラメータに相当します。また、Access は、accessibility-modifier パラメータに相当します。詳細については、「/resource (出力へのリソース ファイルの埋め込み) (C# コンパイラ オプション)」を参照してください。

ResponseFiles

省略可能な String 型のパラメータです。

このタスク用のコマンドが格納されている応答ファイルを指定します。詳細については、「@ (応答ファイルの指定) (C# コンパイラ オプション)」を参照してください。

Sources

省略可能な ITaskItem[] 型のパラメータです。

1 つ以上の Visual C# ソース ファイルを指定します。

TargetType

省略可能な String 型のパラメータです。

出力ファイルのファイル形式を指定します。このパラメータに指定できる値は、コード ライブラリを作成するための library、コンソール アプリケーションを作成するための exe、モジュールを作成するための module、および、Windows プログラムを作成するための winexe のいずれかです。既定値は、library です。詳細については、「/target (出力ファイル形式の指定) (C# コンパイラ オプション)」を参照してください。

Timeout

省略可能な Int32 型のパラメータです。

実行可能なタスクを終了するまでの時間をミリ秒単位で指定します。既定値は Int.MaxValue であり、タイムアウト期限がないことを示します。

ToolPath

省略可能な String 型のパラメータです。

タスクで基になる実行可能ファイル (CSC.exe) を読み込む場所を指定します。このパラメータを指定しないと、MSBuild を実行しているフレームワークのバージョンに対応する SDK インストール パスが使用されます。

TreatWarningsAsErrors

省略可能な Boolean 型のパラメータです。

true に設定すると、すべての警告をエラーとして扱います。詳細については、「/warnaserror (警告のエラーとしての取り扱い) (C# コンパイラ オプション)」を参照してください。

UseHostCompilerIfAvailable

省略可能な Boolean 型のパラメータです。

タスクでインプロセス コンパイラ オブジェクトを使用するよう指定します (可能な場合)。Visual Studio によってのみ使用されます。

Utf8Output

省略可能な Boolean 型のパラメータです。

コンパイラ出力を UTF-8 エンコーディングでログに記録します。詳細については、「/utf8output (UTF-8 を使用したコンパイラ メッセージの表示) (C# コンパイラ オプション)」を参照してください。

WarningLevel

省略可能な Int32 型のパラメータです。

コンパイラが表示する警告レベルを指定します。詳細については、「/warn (警告レベルの指定) (C# コンパイラ オプション)」を参照してください。

WarningsAsErrors

省略可能な String 型のパラメータです。

エラーとして扱う警告の一覧を指定します。詳細については、「/warnaserror (警告のエラーとしての取り扱い) (C# コンパイラ オプション)」を参照してください。

このパラメータは、TreatWarningsAsErrors パラメータをオーバーライドします。

WarningsNotAsErrors

省略可能な String 型のパラメータです。

エラーとして扱わない警告の一覧を指定します。詳細については、「/warnaserror (警告のエラーとしての取り扱い) (C# コンパイラ オプション)」を参照してください。

このパラメータは、TreatWarningsAsErrors パラメータに true を設定した場合にだけ有効です。

WarningLevel

省略可能な Int32 型のパラメータです。

適切な警告レベル (0 ~ 4) を設定します。詳細については、「/warn (警告レベルの指定) (C# コンパイラ オプション)」を参照してください。

Win32Icon

省略可能な String 型のパラメータです。

アセンブリに .ico ファイルを挿入します。.ico ファイルを挿入すると、Windows エクスプローラで出力ファイルを表示したときの外見を変更できます。詳細については、「/win32icon (.ico ファイルのインポート) (C# コンパイラ オプション)」を参照してください。

Win32Resource

省略可能な String 型のパラメータです。

Win32 リソース ファイル (.res) を出力ファイルに挿入します。詳細については、「/win32res (Win32 リソース ファイルのインポート) (C# コンパイラ オプション)」を参照してください。

使用例

Csc タスクを使用して、Compile アイテム コレクション内のソース ファイルから実行可能ファイルをコンパイルする例を次に示します。

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

参照

概念

MSBuild タスク

その他の技術情報

MSBuild タスク リファレンス