MSBuild プロジェクトの共通プロパティ
Visual Studio プロジェクトには、プロジェクトの種類に関係なく、すべてのプロジェクトに共通する MSBuild プロパティがいくつかあります。 他に、頻繁に使用されるプロパティもあります。 共通プロパティと頻繁に使用されるプロパティの一覧を次に示します。
共通のプロパティおよびパラメーター一覧
プロパティ名またはパラメーター名 |
説明 |
---|---|
AdditionalLibPaths |
コンパイラが参照アセンブリを検索する追加のフォルダーを指定します。 |
AddModules |
指定ファイル内のすべての型情報をコンパイル対象のプロジェクトで使用できるようにします。 このプロパティは、/addModules コンパイラ スイッチに相当します。 |
ALToolPath |
AL.exe の保存先のパスです。 このプロパティによって、AL.exe の現在のバージョンをオーバーライドし、別のバージョンを使用できます。 |
ApplicationIcon |
Win32 アイコンとして埋め込むためにコンパイラに渡す .ico アイコン ファイルです。 このプロパティは、/win32icon コンパイラ スイッチに相当します。 |
ApplicationManifest |
外部のユーザー アカウント制御 (UAC: User Account Control) マニフェスト情報を生成するのに使用するファイルのパスを指定します。 Windows Vista を対象とする Visual Studio プロジェクトにのみ適用されます。 ほとんどの場合、マニフェストは埋め込まれます。 ただし、登録を必要としない COM 配置または ClickOnce 配置を使用する場合は、アプリケーション アセンブリと共にインストールされる外部ファイルをマニフェストとして使用できます。 詳細については、このトピックの NoWin32Manifest プロパティを参照してください。 |
AssemblySearchPaths |
ビルド時に参照アセンブリを解決するときに検索する場所のリストです。 このリストでは、先頭から順に優先度が低くなるため、パスを指定する順序が意味を持ちます。 |
AssemblyName |
プロジェクトのビルド後に生成される最終的な出力アセンブリの名前です。 |
BaseAddress |
メイン出力アセンブリのベース アドレスを指定します。 このプロパティは、/baseaddress コンパイラ スイッチに相当します。 |
BaseOutputPath |
出力ファイルのベース パスを指定します。 OutputPath = $(BaseOutputPath)\$(Configuration)\ が設定されている場合、MSBuild では、この出力パスが使用されます。 構文例: <BaseOutputPath>c:\xyz\bin\</BaseOutputPath> |
BaseIntermediateOutputPath |
出力ファイルのベース中間パスを指定します。 構文例: <BaseIntermediateOutputPath>c:\xyz\obj\</BaseIntermediateOutputPath> |
BuildInParallel |
Multi-Proc MSBuild の使用時に複数のプロジェクト参照を同時にビルドまたはクリーンするかどうかを示すブール値です。 既定値は true です。システムに複数のコアまたはプロセッサがある場合に既定値を使用すると、複数のプロジェクトが同時にビルドされます。 |
BuildProjectReferences |
MSBuild によってプロジェクト参照をビルドするかどうかを示すブール値です。 プロジェクトを Visual Studio 統合開発環境 (IDE: Integrated Development Environment) でビルドする場合は false、それ以外の場合は true を指定します。 |
BaseIntermediateOutputPath |
すべての構成固有の中間出力ファイルが作成されるトップレベル フォルダーです。 既定値は obj\ です。 |
CleanFile |
"クリーン キャッシュ" として使用されるファイルの名前です。 クリーン キャッシュとは、クリーン操作の実行中に削除される対象の生成されたファイルのリストです。 このファイルは、ビルド プロセスによって中間出力パスに追加されます。 このプロパティでは、パス情報を含まないファイル名だけを指定します。 |
CodePage |
コンパイルですべてのソース コード ファイルに使用するコード ページを指定します。 このプロパティは、/codepage コンパイラ スイッチに相当します。 |
CompilerResponseFile |
コンパイラ タスクに渡すことができる応答ファイルです (省略可能)。 |
Configuration |
ビルドする構成です。"Debug" と "Release" のいずれかを指定します。 |
CscToolPath |
Visual C# コンパイラ csc.exe のパスです。 |
CustomBeforeMicrosoftCommonTargets |
共通ターゲットのインポートの前に自動的にインポートされるプロジェクト ファイルまたは targets ファイルの名前です。 |
DebugSymbols |
ビルド時にシンボルを生成するかどうかを示すブール値です。 コマンド ラインで /p:DebugSymbols=false と設定すると、プログラム データベース (.pdb) シンボル ファイルの生成が無効になります。 |
DefineConstants |
条件付きコンパイル定数を定義します。 次の構文に従い、シンボルと値のペアをセミコロン (;) で区切って指定します。 symbol1 = value1 ; symbol2 = value2 このプロパティは、/define コンパイラ スイッチに相当します。 |
DefineDebug |
定数 DEBUG を定義するかどうかを示すブール値です。 |
DefineTrace |
定数 TRACE を定義するかどうかを示すブール値です。 |
DebugType |
生成するデバッグ情報のレベルを定義します。 有効な値は "full"、"pdbonly"、および "none" です。 |
DelaySign |
アセンブリに完全署名ではなく遅延署名するかどうかを示すブール値です。 |
DisabledWarnings |
指定された警告の出力を抑制します。 警告 ID の数値だけを指定してください。 複数の警告を指定するときは、セミコロン (;) で区切ります。 このパラメーターは、vbc.exe コンパイラの /nowarn スイッチに相当します。 |
DisableFastUpToDateCheck |
Visual Studio のみに適用されるブール値です。 Visual Studio ビルド マネージャーは、FastUpToDateCheck と呼ばれるプロセスを使用して、プロジェクトを再ビルドによって最新の状態にする必要があるかどうかを判断します。 この判断を行う機能としては、MSBuild より、このプロセスの方が高速です。 DisableFastUpToDateCheck プロパティを true に設定すると、Visual Studio ビルド マネージャーに対して、プロジェクトを最新の状態にする必要があるかどうかを判断するために MSBuild を使用するように強制できます。 |
DocumentationFile |
XML ドキュメント ファイルとして生成されるファイルの名前です。 この名前はファイル名のみを示し、パス情報は含んでいません。 |
ErrorReport |
コンパイラ タスクで内部コンパイル エラーを報告するかどうかを指定します。 有効な値は "prompt"、"send"、または "none" です。 このプロパティは、/errorreport コンパイラ スイッチに相当します。 |
ExcludeDeploymentUrl |
プロジェクト ファイルに次の要素が含まれている場合、GenerateDeploymentManifest タスク は、deploymentProvider タグを配置マニフェストに追加します。
ただし、ExcludeDeploymentUrl を使用すると、上記の URL が指定されている場合でも、配置マニフェストに deploymentProvider タグが追加されないようにすることができます。これを行うには、次のプロパティをプロジェクト ファイルに追加します。 <ExcludeDeploymentUrl>true</ExcludeDeploymentUrl>
メモ
ExcludeDeploymentUrl は Visual Studio IDE では公開されていないため、プロジェクト ファイルを手動で編集する方法でしか設定できません。このプロパティを設定しても、Visual Studio 内での発行には影響はありません。つまり、PublishUrl で指定された URL に deploymentProvider タグが追加されます。
|
FileAlignment |
出力ファイルでセクションを揃えるサイズをバイト単位で指定します。 有効値は 512、1024、2048、4096、および 8192 です。 このプロパティは、/filealignment コンパイラ スイッチに相当します。 |
FrameworkPathOverride |
mscorlib.dll および microsoft.visualbasic.dll の位置を指定します。 このパラメーターは、vbc.exe コンパイラの /sdkpath スイッチに相当します。 |
GenerateDocumentation |
ビルドによってドキュメントを生成するかどうかを示すブール値パラメーターです。 true に設定すると、ビルドによってドキュメント情報が生成され、ビルド タスクが作成した実行可能ファイルまたはライブラリの名前と共に .xml ファイルに格納されます。 |
IntermediateOutputPath |
中間出力ファイルの完全パスであり、パスが指定されていない場合に BaseIntermediateOutputPath を基に生成されます。 たとえば、\obj\debug\ のようなパスが生成されます。 このプロパティがオーバーライドされた場合、BaseIntermediateOutputPath は無効になります。 |
KeyContainerName |
厳密名キーのコンテナー名です。 |
KeyOriginatorFile |
厳密名キー ファイルの名前です。 |
NoWin32Manifest |
コンパイル時に既定の Win32 マニフェストを生成して出力ファイルに含めるかどうかを決定します。 既定値の false では、すべてのアプリケーションに対して既定の Win32 マニフェストが生成されます。 このプロパティは、vbc.exe コンパイラの /nowin32manifest スイッチに相当します。 |
ModuleAssemblyName |
コンパイル済みモジュールを組み込むアセンブリの名前です。 このプロパティは、/moduleassemblyname コンパイラ スイッチに相当します。 |
NoLogo |
コンパイラ ロゴをオフにするかどうかを示すブール値です。 このプロパティは、/nologo コンパイラ スイッチに相当します。 |
NoStdLib |
標準ライブラリ (mscorlib.dll) の参照を回避するかどうかを示すブール値です。 既定値は false です。 |
NoVBRuntimeReference |
Visual Basic ランタイム (Microsoft.VisualBasic.dll) を参照としてプロジェクトに含めるかどうかを示すブール値です。 |
NoWin32Manifest |
ユーザー アカウント制御 (UAC) マニフェスト情報をアプリケーションの実行可能ファイルに埋め込むかどうかを示すブール値です。 Windows Vista を対象とする Visual Studio プロジェクトにのみ適用されます。 ClickOnce および登録を必要としない COM を使用して配置されるプロジェクトでは、この要素は無視されます。False (既定値) を指定すると、ユーザー アカウント制御 (UAC) マニフェスト情報がアプリケーションの実行可能ファイルに埋め込まれます。 Trueを指定すると、UAC マニフェスト情報は埋め込まれません。 このプロパティは、Windows Vista を対象とする Visual Studio プロジェクトにのみ適用されます。 ClickOnce および登録を必要としない COM を使用して配置されたプロジェクトでは、このプロパティは無視されます。 Visual Studio でマニフェスト情報をアプリケーションの実行可能ファイルに埋め込まない場合に限り、NoWin32Manifest を追加してください。このプロセスは仮想化と呼ばれます。 仮想化を使用するには、次のように <NoWin32Manifest> と共に <ApplicationManifest> を設定します。
|
Optimize |
true に設定された場合にコンパイラの最適化を有効にするブール値です。 このプロパティは、/optimize コンパイラ スイッチに相当します。 |
OptionCompare |
文字列比較の方法を指定します。 有効な値は "binary" または "text" です。 このプロパティは、vbc.exe コンパイラの /optioncompare スイッチに相当します。 |
OptionExplicit |
true に設定された場合にソース コードで変数が明示的に宣言されていることを要求するブール値です。 このプロパティは、/optionexplicit コンパイラ スイッチに相当します。 |
OptionInfer |
true に設定された場合に変数の型の推論を可能にするブール値です。 このプロパティは、/optioninfer コンパイラ スイッチに相当します。 |
OptionStrict |
true に設定された場合にビルド タスクで厳密な型のセマンティクスを適用して暗黙の型変換を制限するブール値です。 このプロパティは、vbc.exe コンパイラの /optionstrict スイッチに相当します。 |
OutputPath |
出力ディレクトリへのパスを、"bin\Debug" のようにプロジェクト ディレクトリを基準とする相対パスで指定します。 |
OutputType |
出力ファイルのファイル形式を指定します。 このパラメーターには、次のいずれかの値を指定できます。
このプロパティは、vbc.exe コンパイラの /target スイッチに相当します。 |
OverwriteReadOnlyFiles |
ビルドにおいて読み取り専用ファイルを上書きするかエラーを発生させるかを示すブール値です。 |
PdbFile |
出力する .pdb ファイルの名前です。 このプロパティは、csc.exe コンパイラの /pdb スイッチに相当します。 |
Platform |
ビルドの対象とするオペレーティング システムです。 有効な値は "AnyCPU"、"x86"、"x64"、または "Itanium" です。 |
RemoveIntegerChecks |
整数オーバーフロー エラー チェックを無効にするかどうかを示すブール値です。 既定値は false です。 このプロパティは、vbc.exe コンパイラの /removeintchecks スイッチに相当します。 |
SGenUseProxyTypes |
SGen.exe によってプロキシ型を生成するかどうかを示すブール値です。 SGen ターゲットは、このプロパティを使用して UseProxyTypes フラグを設定します。 このプロパティの既定値は true で、これを変更するための UI はありません。 webservice 以外の型のシリアル化アセンブリを生成するには、Microsoft.Common.Targets または C#/VB.targets をインポートする前に、このプロパティをプロジェクト ファイルに追加し、その値を false に設定します。 |
SGenToolPath |
SGen.exe の現在のバージョンがオーバーライドされた場合に SGen.exe を取得する場所を示すツール パスです (省略可能)。 |
StartupObject |
Main メソッドまたは Sub Main プロシージャを含むクラスまたはモジュールを指定します。 このプロパティは、/main コンパイラ スイッチに相当します。 |
ProcessorArchitecture |
アセンブリ参照を解決するときに使用されるプロセッサ アーキテクチャです。 有効な値は "msil"、"x86"、"amd64"、または "ia64" です。 |
RootNamespace |
埋め込みリソースに名前を付けるときに使用するルート名前空間です。 この名前空間が埋め込みリソース マニフェスト名の一部になります。 |
Satellite_AlgorithmId |
サテライト アセンブリの作成時に使用する AL.exe ハッシュ アルゴリズムの ID です。 |
Satellite_BaseAddress |
CreateSatelliteAssemblies ターゲットを使用してカルチャ固有のサテライト アセンブリをビルドするときに使用するベース アドレスです。 |
Satellite_CompanyName |
サテライト アセンブリの生成時に AL.exe に渡す会社名です。 |
Satellite_Configuration |
サテライト アセンブリの生成時に AL.exe に渡す構成名です。 |
Satellite_Description |
サテライト アセンブリの生成時に AL.exe に渡す説明テキストです。 |
Satellite_EvidenceFile |
指定されたファイルをリソース名が "Security.Evidence" であるサテライト アセンブリに埋め込みます。 |
Satellite_FileVersion |
サテライト アセンブリの File Version フィールドに挿入する文字列を指定します。 |
Satellite_Flags |
サテライト アセンブリの Flags フィールドに挿入する値を指定します。 |
Satellite_GenerateFullPaths |
ビルド タスクがエラー メッセージで報告されるすべてのファイルについて絶対パスを使用します。 |
Satellite_LinkResource |
指定されたリソース ファイルをサテライト アセンブリにリンクします。 |
Satellite_MainEntryPoint |
サテライト アセンブリの生成においてモジュールを実行可能ファイルに変換するときにエントリ ポイントとして使用されるメソッドの完全修飾名 (class.method) を指定します。 |
Satellite_ProductName |
サテライト アセンブリの Product フィールドに挿入する文字列を指定します。 |
Satellite_ProductVersion |
サテライト アセンブリの ProductVersion フィールドに挿入する文字列を指定します。 |
Satellite_TargetType |
サテライト アセンブリの出力ファイルの形式として、"library"、"exe"、"win" のいずれかを指定します。 既定値は "library" です。 |
Satellite_Title |
サテライト アセンブリの Title フィールドに挿入する文字列を指定します。 |
Satellite_Trademark |
サテライト アセンブリの Trademark フィールドに挿入する文字列を指定します。 |
Satellite_Version |
サテライト アセンブリのバージョン情報を指定します。 |
Satellite_Win32Icon |
サテライト アセンブリに .ico アイコン ファイルを挿入します。 |
Satellite_Win32Resource |
サテライト アセンブリに Win32 リソース (.res ファイル) を挿入します。 |
TargetCompactFramework |
ビルドするアプリケーションの実行に必要な .NET Compact Framework のバージョンです。 このプロパティを指定すると、通常は参照できない .NET Framework アセンブリを参照できます。 |
TargetFrameworkVersion |
ビルドするアプリケーションの実行に必要な .NET Framework のバージョンです。 このプロパティを指定すると、通常は参照できない .NET Framework アセンブリを参照できます。 |
TreatWarningsAsErrors |
ブール値パラメーターであり、true に設定すると、すべての警告がエラーとして扱われます。 このパラメーターは、/nowarn コンパイラ スイッチに相当します。 |
UseHostCompilerIfAvailable |
ブール値パラメーターであり、true に設定すると、ビルド タスクはインプロセス コンパイラを使用します (インプロセス コンパイラが用意されている場合)。 このパラメーターは Visual Studio でのみ使用されます。 |
Utf8Output |
ブール値パラメーターであり、true に設定すると、コンパイラ出力が UTF-8 エンコーディングでログに記録されます。 このパラメーターは、/utf8Output コンパイラ スイッチに相当します。 |
VbcToolPath |
vbc.exe の現在のバージョンがオーバーライドされた場合に vbc.exe の別の場所を示すパスです (省略可能)。 |
VbcVerbosity |
Visual Basic コンパイラ出力の詳細度を指定します。 有効な値は "Quiet"、"Normal" (既定値)、または "Verbose" です。 |
WarningsAsErrors |
エラーとして扱う警告の一覧を指定します。 このパラメーターは、/warnaserror コンパイラ スイッチに相当します。 |
WarningsNotAsErrors |
エラーとして扱わない警告の一覧を指定します。 このパラメーターは、/warnaserror コンパイラ スイッチに相当します。 |
Win32Manifest |
最終的なアセンブリに埋め込むマニフェスト ファイルの名前です。 このパラメーターは、/win32Manifest コンパイラ スイッチに相当します。 |
Wint32Resource |
最終的なアセンブリに埋め込む Win32 リソースのファイル名です。 このパラメーターは、/win32resource コンパイラ スイッチに相当します。 |