次の方法で共有


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

次の表は、Visual Studio プロジェクト ファイルで定義される、または MSBuild に用意されている .targets ファイルに含まれている、使用頻度の高いプロパティを示しています。

Visual Studio のプロジェクト ファイル ( .csproj.vbproj.vcxproj など) には、IDE を使用してプロジェクトをビルドするときに実行される MSBuild XML コードが含まれています。 通常、プロジェクトでは、ビルド プロセスを定義するために、1 つ以上の .targets ファイルをインポートします。 詳しくは、「MSBuild .Targets ファイル」をご覧ください。

プロパティ値を設定する場合、共通プロパティは多数のインポートされたファイルで設定、リセット、使用される可能性があることに注意してください。 したがって、プロパティを設定する場所 (プロジェクト ファイル、Directory.Build.props、または別のインポートされたファイル) が重要になります。 どこかでプロパティを設定しても期待した結果が得られない場合は、プロパティがどこでどのように変更または使用されるかを、プロジェクトによってインポートされるすべてのファイルで考えてください。これには Sdk 属性を使う場合に暗黙的に追加されるインポートも含まれます。 「.props ファイルまたは .targets ファイルのどちらにプロパティを追加するかを選択する」を参照してください。 前処理が役立つ場合があります (「MSBuild コマンド ライン リファレンス」の /preprocess または /pp コマンド ライン オプションを参照)。

共通のプロパティおよびパラメーター一覧

プロパティ名またはパラメーター名 プロジェクトの種類 説明
AdditionalLibPaths .NET コンパイラが参照アセンブリを検索する追加のフォルダーを指定します。
AddModules .NET 指定ファイル内のすべての型情報をコンパイル対象のプロジェクトで使用できるようにします。 このプロパティは、/addModules コンパイラ スイッチに相当します。
ALToolPath .NET AL.exe へのパス。 このプロパティによって、AL.exe の現在のバージョンをオーバーライドし、別のバージョンを使用できます。
ApplicationIcon .NET Win32 アイコンとして埋め込むためにコンパイラに渡す .ico アイコン ファイルです。 このプロパティは、/win32icon コンパイラ スイッチに相当します。
ApplicationManifest すべて 外部のユーザー アカウント制御 (UAC: User Account Control) マニフェスト情報を生成するのに使用するファイルのパスを指定します。 Windows Vista をターゲットとする Visual Studio プロジェクトにのみ適用されます。

ほとんどの場合、マニフェストは埋め込まれます。 ただし、登録を必要としない COM 配置または ClickOnce 配置を使用する場合は、アプリケーション アセンブリと共にインストールされる外部ファイルをマニフェストとして使用できます。 詳細については、このトピックの NoWin32Manifest プロパティを参照してください。
AssemblyOriginatorKeyFile .NET アセンブリ (.snk または .pfx) に署名するために使用されるファイルを指定します。また、このファイルは ResolveKeySource タスクに渡され、アセンブリの署名に使用される実際のキーが生成されます。
AssemblySearchPaths .NET ビルド時に参照アセンブリを解決するときに検索する場所のリストです。 前に示したパスは後のエントリよりも優先されるため、このリストにパスが表示される順序に意味があります。
AssemblyName .NET プロジェクトのビルド後に生成される最終的な出力アセンブリの名前です。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
BaseAddress .NET メイン出力アセンブリのベース アドレスを指定します。‎ このプロパティは、/baseaddress コンパイラ スイッチに相当します。
BaseIntermediateOutputPath すべて すべての構成固有の中間出力ファイルが作成されるトップレベル フォルダーです。 既定値は obj\ です。 次にコード例を示します。<BaseIntermediateOutputPath>c:\xyz\obj\</BaseIntermediateOutputPath>
BaseOutputPath すべて 出力ファイルのベース パスを指定します。 設定されている場合、MSBuild により OutputPath = $(BaseOutputPath)\$(Configuration)\ が使用されます。 構文例: <BaseOutputPath>c:\xyz\bin\</BaseOutputPath>
BuildInParallel すべて 複数プロセッサの MSBuild が使用されている場合に、複数のプロジェクト参照を並列にビルドまたはクリーンするかどうかを示すブール値です。 既定値は true です。システムに複数のコアまたはプロセッサがある場合に既定値を使用すると、複数のプロジェクトが同時にビルドされます。
BuildProjectReferences すべて MSBuild によってプロジェクト参照がビルドされるかどうかを示すブール値です。 プロジェクトを Visual Studio 統合開発環境 (IDE) でビルドしている場合は自動的に false に設定され、それ以外の場合は true に設定されます。 -p:BuildProjectReferences=false をコマンド ラインで指定して、参照先のプロジェクトが最新かどうかのチェックを回避できます。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
CleanFile すべて "クリーン キャッシュ" として使用されるファイルの名前です。クリーン キャッシュとは、クリーン操作の実行中に削除される対象の生成されたファイルのリストです。 このファイルは、ビルド プロセスによって中間出力パスに追加されます。

このプロパティでは、パス情報を含まないファイル名だけを指定します。
CodePage .NET コンパイルですべてのソース コード ファイルに使用するコード ページを指定します。 このプロパティは、/codepage コンパイラ スイッチに相当します。
CompilerResponseFile .NET コンパイラ タスクに渡すことができる応答ファイルです (省略可能)。
構成 すべて ビルドしている構成 (通常は Debug または Release) ですが、ソリューションおよびプロジェクトのレベルで構成できます。
CscToolPath C# C# コンパイラ csc.exe のパスです。
CustomAfterMicrosoftCommonTargets すべて 共通ターゲットのインポート後に自動的にインポートされるプロジェクト ファイルまたはターゲット ファイルの名前です。
CustomBeforeMicrosoftCommonTargets すべて 共通ターゲットのインポートの前に自動的にインポートされるプロジェクト ファイルまたは targets ファイルの名前です。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
DebugSymbols すべて ビルド時にシンボルを生成するかどうかを示すブール値です。

コマンド ラインで -p:DebugSymbols=false と設定すると、プログラム データベース ( .pdb) シンボル ファイルの生成が無効になります。
DebugType すべて 生成するデバッグ情報のレベルを定義します。 有効な値は "full"、"pdbonly"、"portable"、"embedded、"および "none" です。
DefineConstants .NET 条件付きコンパイル定数を定義します。 言語に依存した構文を使用して、シンボルと値のペアをセミコロン (;) で区切って指定します。

C#: symbol1; symbol2

Visual Basic: symbol1 = value1, symbol2 = value2

このプロパティは、/define コンパイラ スイッチに相当します。
DefineDebug すべて 定数 DEBUG を定義するかどうかを示すブール値です。
DefineTrace すべて 定数 TRACE を定義するかどうかを示すブール値です。
DelaySign .NET アセンブリに完全署名ではなく遅延署名するかどうかを示すブール値です。
Deterministic .NET コンパイラが同じ入力に対して同じアセンブリを生成するかどうかを指示するブール値。 このパラメーターは、コンパイラの /deterministic スイッチに相当します。
DirectoryBuildPropsPath すべて Directory.Build.props ファイルへのパスを指定します。このプロパティが定義されている場合、既定の検索アルゴリズムがオーバーライドされます。 「ビルドのカスタマイズ」を参照してください。
DirectoryBuildTargetsPath すべて Directory.Build.targets ファイルへのパスを指定します。このプロパティが定義されている場合、既定の検索アルゴリズムがオーバーライドされます。 「ビルドのカスタマイズ」を参照してください。
DisableFastUpToDateCheck すべて Visual Studio のみに適用されるブール値です。 Visual Studio ビルド マネージャーは、FastUpToDateCheck と呼ばれるプロセスを使用して、プロジェクトをリビルドして最新の状態にする必要があるかどうかを判断します。 このプロセスは、MSBuild を使用してこれを判断するよりも高速です。 DisableFastUpToDateCheck プロパティを true に設定すると、Visual Studio ビルド マネージャーをバイパスし、プロジェクトが最新の状態かどうかを判断するために MSBuild を使用するように強制できます。
DocumentationFile .NET XML ドキュメント ファイルとして生成されるファイルの名前です。 この名前はファイル名のみを示し、パス情報は含んでいません。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
ErrorReport .NET コンパイラ タスクで内部コンパイル エラーを報告するかどうかを指定します。 有効な値は "prompt"、"send"、または "none" です。このプロパティは、/errorreport コンパイラ スイッチに相当します。
ExcludeDeploymentUrl .NET プロジェクト ファイルに次の要素が含まれている場合は、GenerateDeploymentManifest タスクによって、deploymentProvider タグが配置マニフェストに追加されます。

- UpdateUrl
- InstallUrl
- PublishUrl

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

<ExcludeDeploymentUrl>true</ExcludeDeploymentUrl>

注: ExcludeDeploymentUrl は Visual Studio IDE では公開されていないため、プロジェクト ファイルを手動で編集することでのみ設定できます。 このプロパティを設定しても、Visual Studio 内での発行には影響はありません。つまり、PublishUrl で指定された URL に引き続き deploymentProvider タグが追加されます。
FileAlignment .NET 出力ファイルでセクションをアラインするサイズをバイト単位で指定します。 有効値は 512、1024、2048、4096、および 8192 です。 このプロパティは、/filealignment コンパイラ スイッチに相当します。
FrameworkPathOverride Visual Basic mscorlib.dll および microsoft.visualbasic.dll の位置を指定します。 このパラメーターは、vbc.exe コンパイラの /sdkpath スイッチに相当します。
GenerateDocumentationFile .NET ビルドによってドキュメントを生成するかどうかを示すブール値パラメーターです。 true に設定すると、ビルドによってドキュメント情報が生成され、ビルド タスクが作成した実行可能ファイルまたはライブラリの名前と共に .xml ファイルに格納されます。
GenerateFullPaths C# -fullpaths コンパイラ オプションを使用して、出力内のファイル名の完全なパスを生成します。
GenerateSerializationAssemblies .NET XML シリアル化アセンブリを SGen.exe で生成するかどうかを示します。これはオン、自動、オフに設定できます。 このプロパティは、.NET Framework のみを対象とするアセンブリに使用されます。 .NET Standard アセンブリまたは .NET Core アセンブリに XML シリアル化アセンブリを生成するには、Microsoft.XmlSerializer.Generator パッケージを参照します。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
ImportDirectoryBuildProps すべて Directory.Build.props ファイルをインポートするかどうかを示すブール値。 「ビルドのカスタマイズ」を参照してください。
ImportDirectoryBuildTargets すべて Directory.Build.targets ファイルをインポートするかどうかを示すブール値。 「ビルドのカスタマイズ」を参照してください。
IntermediateOutputPath すべて 中間出力ファイルの完全パスであり、パスが指定されていない場合に BaseIntermediateOutputPath を基に生成されます。 たとえば、obj\debug\ です。
KeyContainerName すべて 厳密名キーのコンテナー名です。
KeyOriginatorFile すべて 厳密名キー ファイルの名前です。
ModuleAssemblyName .NET コンパイル済みモジュールを組み込むアセンブリの名前です。 このプロパティは、/moduleassemblyname コンパイラ スイッチに相当します。
MSBuildProjectExtensionsPath すべて プロジェクト拡張機能が配置されるパスを指定します。 既定では、BaseIntermediateOutputPath と同じ値が使用されます。
MSBuildTreatWarningsAsErrors すべて 抑制されない限りすべての警告をエラーとして扱うように MSBuild に指示するブール値です。
MSBuildWarningsAsErrors すべて エラーとして処理する警告コードの一覧を指定します。 複数の警告はセミコロンで区切ります。 .NET SDK プロパティ WarningsAsErrors を使っている場合、MSBuildWarningsAsErrors の既定値は WarningsAsErrors の値になります。
MSBuildWarningsAsMessages すべて 重要度の低いメッセージとして扱うことにより抑制する警告コードの一覧を指定します。 複数の警告はセミコロンで区切ります。 MSBuild で出力される警告の中には、このプロパティを使っても抑制できないものがあることにご注意ください。表示しないようにするには、コマンドライン スイッチ -warnAsMessage を使います。 .NET SDK プロパティ NoWarn を使っている場合、MSBuildWarningsAsMessages の既定値は NoWarn の値になります。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
NoLogo すべて コンパイラ ロゴをオフにするかどうかを示すブール値です。 このプロパティは、/nologo コンパイラ スイッチに相当します。
NoStdLib .NET 標準ライブラリ (mscorlib.dll) の参照を回避するかどうかを示すブール値です。 既定値は false です。
NoVBRuntimeReference Visual Basic Visual Basic ランタイム (Microsoft.VisualBasic.dll) を参照としてプロジェクトに含めるかどうかを示すブール値です。
NoWarn .NET 指定された警告の出力を抑制します。 警告 ID の数値だけを指定してください。 複数の警告を指定するときは、セミコロン (;) で区切ります。 このパラメーターは、コンパイラの /nowarn スイッチに相当します。
NoWin32Manifest .NET ユーザー アカウント制御 (UAC) マニフェスト情報をアプリケーションの実行可能ファイルに埋め込むかどうかを示すブール値です。 Windows Vista をターゲットとする Visual Studio プロジェクトにのみ適用されます。 ClickOnce および登録を必要としない COM を使用して配置されたプロジェクトでは、この要素は無視されます。 False (既定値) は、ユーザー アカウント制御 (UAC: User Account Control) マニフェスト情報をアプリケーションの実行可能ファイルに埋め込むことを指定します。 Trueを指定すると、UAC マニフェスト情報は埋め込まれません。

このプロパティは、Windows Vista をターゲットとする Visual Studio プロジェクトにのみ適用されます。 ClickOnce および登録を必要としない COM を使用して配置されたプロジェクトでは、このプロパティは無視されます。

Visual Studio でマニフェスト情報がアプリケーションの実行可能ファイルに埋め込まれないようにしたい場合にのみ、NoWin32Manifest を追加してください。このプロセスは "仮想化" と呼ばれます。 仮想化を使用するには、次のように <ApplicationManifest> と共に <NoWin32Manifest> を設定します。

- Visual Basic プロジェクトの場合は、<ApplicationManifest> ノードを削除します。 (Visual Basic プロジェクトでは、<ApplicationManifest> ノードが存在すると、<NoWin32Manifest> は無視されます。)
- C# プロジェクトの場合は、<ApplicationManifest>False に設定し、<NoWin32Manifest>True に設定します。 (C# プロジェクトでは、<ApplicationManifest> によって <NoWin32Manifest> がオーバーライドされます。)
このプロパティは、vbc.exe コンパイラの /nowin32manifest スイッチに相当します。
Optimize .NET true に設定された場合にコンパイラの最適化を有効にするブール値です。 このプロパティは、/optimize コンパイラ スイッチに相当します。
OptionCompare VisualBasic 文字列比較の方法を指定します。 有効な値は "binary" または "text" です。このプロパティは、vbc.exe コンパイラの /optioncompare スイッチに相当します。
OptionExplicit Visual Basic true に設定された場合にソース コードで変数が明示的に宣言されていることを要求するブール値です。 このプロパティは、/optionexplicit コンパイラ スイッチに相当します。
OptionInfer Visual Basic true に設定された場合に変数の型の推論を可能にするブール値です。 このプロパティは、/optioninfer コンパイラ スイッチに相当します。
OptionStrict Visual Basic true に設定された場合にビルド タスクで厳密な型のセマンティクスを適用して暗黙の型変換を制限するブール値です。 このプロパティは、vbc.exe コンパイラの /optionstrict スイッチに相当します。
OutDir すべて プロジェクトまたはソリューションの最終的な出力場所を示します。 ソリューションをビルドする場合、OutDir を使用すれば、複数のプロジェクト出力を 1 つの場所で収集できます。 さらに、OutDir は、参照を解決する場合に使用される AssemblySearchPaths に取り込まれます。 たとえば、bin\Debug です。
OutputPath すべて プロジェクト ディレクトリからの相対パスで出力ディレクトリを指定します。たとえば、AnyCPU 以外のビルドでは、bin\Debug または bin\Debug\$(Platform) のようになります。
OutputType すべて 出力ファイルのファイル形式を指定します。 このパラメーターには、次のいずれかの値を指定できます。

- Library。 コード ライブラリを作成します。 これは既定値です。
- Exe。 コンソール アプリケーションを作成します。
- Module。 モジュールを作成します。
- Winexe。 Windows ベースのプログラムを作成します。

C# と Visual Basic の場合、このプロパティは /target スイッチと同等です。 出力の種類は、推論によって自動的にオーバーライドできます。 「WPF アプリと WinForms アプリで OutputType が WinExe に設定されている」を参照してください。 DisableWinExeOutputInferencetrue に設定して推論を無効にします。
OverwriteReadOnlyFiles すべて ビルドにおいて読み取り専用ファイルを上書きするかエラーを発生させるかを示すブール値です。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
PathMap .NET コンパイラによるソース パス名出力への物理パスのマップ方法を指定します。 このプロパティは、コンパイラの /pathmap スイッチに相当します。
PdbFile .NET 出力する .pdb ファイルのファイル名です。 このプロパティは、csc.exe コンパイラの /pdb スイッチに相当します。
プラットフォーム すべて ビルドの対象とするオペレーティング システムです。 .NET Framework のビルドの例として、[任意の CPU]、[x86]、[x64] があります。
ProcessorArchitecture .NET アセンブリ参照を解決するときに使用されるプロセッサ アーキテクチャです。 有効な値は "msil"、"x86"、"amd64"、または "ia64" です。
ProduceOnlyReferenceAssembly .NET コンパイル済みコードではなく参照アセンブリのみを発行するようにコンパイラに指示するブール値。 ProduceReferenceAssembly と組み合わせて使用することはできません。 このプロパティは、vbc.exe コンパイラと csc.exe コンパイラの /refonly スイッチに対応します。
ProduceReferenceAssembly .NET true に設定すると、現在のアセンブリに対して参照アセンブリの生成が可能になるブール値。 この機能の利用時、Deterministictrue にする必要があります。 このプロパティは、vbc.exe コンパイラと csc.exe コンパイラの /refout スイッチに対応します。
RegisterAssemblyMSBuildArchitecture Windows のみ マネージド DLL を登録する既定のアーキテクチャを指定します。 COM は Windows レジストリを使ってアーキテクチャ固有のハイブに登録を格納するため、このプロパティが役に立ちます。 たとえば、Windows システムでは、AnyCPU マネージド アセンブリは、その種類を 64 ビット ハイブまたは 32 ビット (WoW) ハイブに登録することができ、ビルドはこのプロパティを使って、使用するアーキテクチャ固有のレジストリ ハイブを決定します。 有効な値は、"x86"、"x64"、"ARM64" などです。
RegisterForCOMInterop Windows のみ マネージド アプリケーションが COM オブジェクト (COM 呼び出し可能ラッパー) を公開することを示します。 ビルド ページの出力セクションを参照してください。 この設定は、プロジェクトがビルドされているコンピューターにのみ影響します。 他のコンピューターに展開する場合は、regasm.exe を呼び出して、ターゲット コンピューターにアセンブリを登録します。
RemoveIntegerChecks Visual Basic 整数オーバーフロー エラー チェックを無効にするかどうかを示すブール値です。 既定値は false です。 このプロパティは、vbc.exe コンパイラの /removeintchecks スイッチに相当します。
RootNamespace すべて 埋め込みリソースに名前を付けるときに使用するルート名前空間です。 この名前空間が埋め込みリソース マニフェスト名の一部になります。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
Satellite_AlgorithmId .NET サテライト アセンブリの作成時に使用する AL.exe ハッシュ アルゴリズムの ID です。
Satellite_BaseAddress .NET CreateSatelliteAssemblies ターゲットを使用してカルチャ固有のサテライト アセンブリをビルドするときに使用するベース アドレスです。
Satellite_CompanyName .NET サテライト アセンブリの生成時に AL.exe に渡す会社名です。
Satellite_Configuration .NET サテライト アセンブリの生成時に AL.exe に渡す構成名です。
Satellite_Description .NET サテライト アセンブリの生成時に AL.exe に渡す説明テキストです。
Satellite_EvidenceFile .NET 指定されたファイルをリソース名が "Security.Evidence" であるサテライト アセンブリに埋め込みます。
Satellite_FileVersion .NET サテライト アセンブリの File Version フィールドに挿入する文字列を指定します。
Satellite_Flags .NET サテライト アセンブリの Flags フィールドに挿入する値を指定します。
Satellite_GenerateFullPaths .NET ビルド タスクがエラー メッセージで報告されるすべてのファイルについて絶対パスを使用します。
Satellite_LinkResource .NET 指定されたリソース ファイルをサテライト アセンブリにリンクします。
Satellite_MainEntryPoint .NET サテライト アセンブリの生成においてモジュールを実行可能ファイルに変換するときにエントリ ポイントとして使用されるメソッドの完全修飾名 (class.method) を指定します。
Satellite_ProductName .NET サテライト アセンブリの Product フィールドに挿入する文字列を指定します。
Satellite_ProductVersion .NET サテライト アセンブリの ProductVersion フィールドに挿入する文字列を指定します。
Satellite_TargetType .NET サテライト アセンブリの出力ファイルの形式として、"library"、"exe"、"win" のいずれかを指定します。既定値は "library" です。
Satellite_Title .NET サテライト アセンブリの Title フィールドに挿入する文字列を指定します。
Satellite_Trademark .NET サテライト アセンブリの Trademark フィールドに挿入する文字列を指定します。
Satellite_Version .NET サテライト アセンブリのバージョン情報を指定します。
Satellite_Win32Icon .NET サテライト アセンブリに .ico アイコン ファイルを挿入します。
Satellite_Win32Resource .NET サテライト アセンブリに Win32 リソース ( .res ファイル) を挿入します。
SGenToolPath .NET SGen.exe の現在のバージョンがオーバーライドされた場合に SGen.exe を取得する場所を示すツール パスです (省略可能)。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
SGenUseProxyTypes .NET SGen.exe によってプロキシ型を生成するかどうかを示すブール値です。 これは、GenerateSerializationAssemblies がオンに設定されている場合にのみ適用されます。

SGen ターゲットは、このプロパティを使用して UseProxyTypes フラグを設定します。 このプロパティの既定値は true で、これを変更するための UI はありません。 webservice 以外の型のシリアル化アセンブリを生成するには、Microsoft.Common.Targets または C#/VB.targets をインポートする前に、このプロパティをプロジェクト ファイルに追加し、その値を false に設定します。
SkipInvalidConfigurations すべて true の場合、無効なプラットフォームと構成の組み合わせに対して警告が生成されますが、ビルドは失敗しません。false または未定義 (既定値) の場合、エラーが生成されます。
StartupObject .NET Main メソッドまたは Sub Main プロシージャを含むクラスまたはモジュールを指定します。 このプロパティは、/main コンパイラ スイッチに相当します。
SubsystemVersion .NET 生成された実行可能ファイルが使用できるサブシステムの最低限のバージョンを指定します。 このプロパティは、/subsystemversion コンパイラ スイッチに相当します。 このプロパティの既定値については、「/subsystemversion (Visual Basic)」または「/subsystemversion (C# コンパイラ オプション)」を参照してください。
TargetCompactFramework .NET ビルドするアプリケーションの実行に必要な .NET Compact Framework のバージョンです。 このプロパティを指定すると、通常は参照できない .NET Framework アセンブリを参照できます。
TargetFrameworkVersion .NET ビルドするアプリケーションの実行に必要な .NET Framework のバージョンです。 このプロパティを指定すると、通常は参照できない .NET Framework アセンブリを参照できます。
TreatWarningsAsErrors .NET ブール値パラメーターであり、true に設定すると、すべての警告がエラーとして扱われます。 このパラメーターは、/nowarn コンパイラ スイッチに相当します。
UseCommonOutputDirectory .NET ブール型プロパティ。ソリューション内のすべてのビルド出力で同じ出力ディレクトリを使用する場合に true に設定します。 true の場合、参照されたプロジェクトの出力は、通常、この設定が false の場合と同様に、これらの依存関係を使用するプロジェクトにコピーされません。 このパラメーターを true に設定しても、プロジェクトの実際の出力ディレクトリは変更されません。それでも、プロジェクトごとに出力ディレクトリを希望する共通出力ディレクトリに設定する必要があります。
UseHostCompilerIfAvailable .NET ブール値パラメーターであり、true に設定すると、ビルド タスクによりインプロセス コンパイラが使用されます (インプロセス コンパイラが使用できる場合)。 このパラメーターは Visual Studio でのみ使用されます。
Utf8Output .NET ブール値パラメーターであり、true に設定すると、コンパイラ出力が UTF-8 エンコーディングでログに記録されます。 このパラメーターは、/utf8Output コンパイラ スイッチに相当します。
プロパティ名またはパラメーター名 プロジェクトの種類 説明
VbcToolPath Visual Basic vbc.exe の現在のバージョンがオーバーライドされた場合に vbc.exe の別の場所を示すパスです (省略可能)。
VbcVerbosity Visual Basic Visual Basic コンパイラの出力の詳細を指定します。 有効な値は "Quiet"、"Normal" (既定値)、または "Verbose" です。
VisualStudioVersion すべて このプロジェクトが実行されている Visual Studio のバージョンを指定します。 このプロパティが指定されていない場合、MSBuild は既定値の {VisualStudioMajorVersion}.0 に設定されます。たとえば、17.0 は Visual Studio 2022 のすべてのバージョンで使用されます。

このプロパティは複数の種類のプロジェクトで使用され、ビルドで利用されるターゲットのセットが指定されます。 ToolsVersion がプロジェクトに対して 4.0 以上に設定されている場合、VisualStudioVersion によって、使用するサブツールセットが指定されます。 詳細については、「ツール セット (ToolsVersion)」を参照してください。
WarningsAsErrors .NET エラーとして扱う警告の一覧を指定します。 このパラメーターは、/warnaserror コンパイラ スイッチに相当します。
WarningLevel すべて コンパイラが出力する警告に関して、コンパイラに渡す警告レベルを指定します。 この設定は、レベル指定のない MSBuild の警告には影響しません。 C# コンパイラ ドキュメントの警告レベルと、C++ コンパイラ ドキュメントの /W (警告レベル) を参照してください。
WarningsNotAsErrors .NET エラーとして扱わない警告のリストを指定します。 このパラメーターは、/warnaserror コンパイラ スイッチに相当します。
Win32Manifest .NET 最終的なアセンブリに埋め込むマニフェスト ファイルの名前です。 このパラメーターは、/win32Manifest コンパイラ スイッチに相当します。
Win32Resource .NET 最終的なアセンブリに埋め込む Win32 リソースのファイル名です。 このパラメーターは、/win32resource コンパイラ スイッチに相当します。

.NET SDK プロジェクトに固有のプロパティ (TargetFramework など) は、「フレームワークのプロパティ」に記載されています。

関連項目