MSBuild プロジェクトの共通プロパティ

更新 : 2007 年 11 月

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 タグを配置マニフェストに追加します。

  • UpdateUrl

  • InstallUrl

  • PublishUrl

ただし、ExcludeDeploymentUrl を使用すると、上記の URL が指定されている場合でも、配置マニフェストに deploymentProvider タグが追加されないようにすることができます。これを行うには、次のプロパティをプロジェクト ファイルに追加します。

<ExcludeDeploymentUrl>true</ExcludeDeploymentUrl>

Bb629394.alert_note(ja-jp,VS.90).gifメモ :
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> を設定します。

  • Visual Basic プロジェクトの場合は、<ApplicationManifest> ノードを削除します (Visual Basic プロジェクトでは、<ApplicationManifest> ノードが存在すると、<NoWin32Manifest> が無視されます)。

  • Visual C# プロジェクトの場合は、<ApplicationManifest> を False に設定し、<NoWin32Manifest> を True に設定します (Visual C# プロジェクトでは、<NoWin32Manifest><ApplicationManifest> によりオーバーライドされます)。

Optimize

true に設定された場合にコンパイラの最適化を有効にするブール値です。このプロパティは、/optimize コンパイラ スイッチに相当します。

OptionCompare

文字列比較の方法を指定します。有効な値は "binary" または "text" です。このプロパティは、vbc.exe コンパイラの /optioncompare スイッチに相当します。

OptionExplicit

true に設定された場合にソース コードで変数が明示的に宣言されていることを要求するブール値です。このプロパティは、/optionexplicit コンパイラ スイッチに相当します。

OptionInfer

true に設定された場合に変数の型の推論を可能にするブール値です。このプロパティは、/optioninfer コンパイラ スイッチに相当します。

OptionStrict

true に設定された場合にビルド タスクで厳密な型のセマンティクスを適用して暗黙の型変換を制限するブール値です。このプロパティは、vbc.exe コンパイラの /optionstrict スイッチに相当します。

OutputPath

このプロパティは、通常、プロジェクト ファイル内に指定され、OutDir と同じように機能します。OutputPath の使用は推奨されていません。できる限り、OutDir を使用してください。

OutputType

出力ファイルのファイル形式を指定します。このパラメータには、次のいずれかの値を指定できます。

  • Library。コード ライブラリを作成します。これは既定値です。

  • Exe。コンソール アプリケーションを作成します。

  • Module。モジュールを作成します。

  • Winexe。Windows ベースのプログラムを作成します。

このプロパティは、vbc.exe コンパイラの /target スイッチに相当します。

OverwriteReadOnlyFiles

ビルドにおいて読み取り専用ファイルを上書きするかエラーを発生させるかを示すブール値です。

PdbFile

出力する .pdb ファイルの名前です。このプロパティは、csc.exe コンパイラの /pdb スイッチに相当します。

Platform

ビルドの対象とするオペレーティング システムです。有効な値は "AnyCPU"、"x86"、"x64"、または "Itanium" です。

RemoveIntegerChecks

整数オーバーフロー エラー チェックを無効にするかどうかを示すブール値です。既定値 false です。このプロパティは、vbc.exe コンパイラの /removeintchecks スイッチに相当します。

SGenUseProxyTypes

SGen.exe によってプロキシ型を生成するかどうかを示すブール値です。

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 コンパイラ スイッチに相当します。

参照

参照

MSBuild プロジェクトの共通項目