ビルド構成について

異なる設定でプロジェクトをビルドする必要がある場合は、ビルド構成が必要です。 たとえば、[デバッグ][リリース] はビルド構成であり、それらをビルドするときにはそれぞれ異なるコンパイラ オプションが使用されます。 1 つの構成がアクティブになっており、IDE の上部にあるコマンド バーに表示されます。

Visual Studio のメイン ツールバーのアクティブ構成を示すスクリーンショット。

Visual Studio のメイン ツールバーのアクティブ構成を示すスクリーンショット。

構成とプラットフォームによって、ビルドされた出力ファイルが格納される場所が制御されます。 通常、Visual Studio でプロジェクトをビルドすると、アクティブな構成で名前付けされたプロジェクトのサブフォルダー (例: bin/Debug/x86) に出力が配置されます。ただし、これは変更できます。

ソリューション レベルとプロジェクト レベルで独自のビルド構成を作成することができます。 ソリューション構成では、その構成がアクティブなときにビルドに含まれるプロジェクトが決定されます。 アクティブなソリューション構成で指定されているプロジェクトのみがビルドされます。 構成マネージャーで複数のターゲット プラットフォームが選択されている場合、そのプラットフォームに適用されるすべてのプロジェクトがビルドされます。 プロジェクト構成では、そのプロジェクトをビルドするときに使用されるビルド設定とコンパイラ オプションが決定されます。

構成を作成、選択、変更、または削除するには、構成マネージャーを使用できます。 それを開くには、メニュー バーで、 [ビルド]>[構成マネージャー] を選択するか、検索ボックスに「構成」と入力します。 また、 [標準] ツール バーの [ソリューション構成] ボックスの一覧を使用して構成を選択することも、 [構成マネージャー] を開くこともできます。

[構成マネージャー] ダイアログのスクリーンショット。

Note

ツール バーでソリューション構成の設定を見つけることができず、構成マネージャーにアクセスできないときは、Visual Basic の開発設定を使っているためである場合があります。 詳細については、Visual Basic 開発者設定が適用された構成を管理する」を参照してください。

既定では、Visual Studio のテンプレートを使って作成されたプロジェクトには、デバッグ構成とリリース構成が含まれます。 [デバッグ] 構成ではアプリのデバッグがサポートされ、 [リリース] 構成では配置可能なバージョンのアプリがビルドされます。 詳細については、デバッグ構成とリリース構成を設定する」を参照してください。 カスタム ソリューション構成とプロジェクト構成を作成することもできます。 詳細については、構成を作成および編集する」を参照してください。

ソリューション構成

ソリューション構成によって、ソリューション内のプロジェクトをビルドおよび配置する方法が指定されます。 ソリューション構成の変更または新しい構成の定義を行うには、構成マネージャーで、 [アクティブ ソリューション構成][編集] または [新規作成] を選択します。

ソリューション構成の [プロジェクトのコンテキスト] ボックスの各エントリは、ソリューション内のプロジェクトを表します。 [アクティブ ソリューション構成][アクティブ ソリューション プラットフォーム] の組み合わせごとに、各プロジェクトの使用形態を設定できます

新しいソリューション構成を定義し、[新しいプロジェクト構成を作成する] チェック ボックスをオンにした場合、Visual Studio によってすべてのプロジェクトに新しいプロジェクト構成が作成されます。 同様に、新しいソリューション プラットフォームを定義し、[新しいプロジェクト プラットフォームを作成する] チェック ボックスをオンにした場合は、Visual Studio によってすべてのプロジェクトに新しいプラットフォーム オプションが作成されます。 また、新しいプラットフォームを対象とするプロジェクトを追加すると、Visual Studio によって、そのプラットフォームがソリューション プラットフォームの一覧に追加され、すべてのプロジェクトでそのプラットフォームがオプションとして使用可能になります。 一部のプロジェクトでプラットフォームが必要ないか、サポートされない場合は、プロジェクトごとに設定を変更できます。

アクティブなソリューション構成には、IDE 用にコンテキストを用意する役割もあります。 たとえば、プロジェクトでの作業中に、プロジェクトがモバイル デバイス用にビルドされるように構成で指定されていると、モバイル デバイス プロジェクトで使用できる項目のみが [ツールボックス] に表示されます。

プロジェクトの構成

プロジェクトが対象とする構成とプラットフォームは一緒に使用され、そのビルド時に使用されるビルド設定とコンパイラ オプションが指定されます。 プロジェクトは、構成とプラットフォームの組み合わせごとに、異なる設定を持つことができます。 プロジェクトのプロパティを変更するには、ソリューション エクスプローラーでそのソリューションのショートカット メニューを開き、 [プロパティ] を選択します。 プロジェクト デザイナーの [ビルド] タブの上部で、ビルド設定を編集するアクティブな構成を選択します。

プロジェクト デザイナー構成のスクリーンショット。

プロジェクト デザイナー構成のスクリーンショット。

Visual Studio でプロジェクト構成をソリューション構成に関連付ける方法

既存のものから設定をコピーせずに新しいソリューション構成を定義する場合、Visual Studio では、次の基準に従って既存のプロジェクト構成を新しいソリューション構成に関連付けます。 基準は、ここに示されている順序で評価されます。

  1. プロジェクトに、新しいソリューション構成の名前と一致する構成名 (<構成名><プラットフォーム名>) がある場合は、その構成が使用されます。 構成名では大文字と小文字が区別されません。

  2. プロジェクトに、構成名の部分が新しいソリューション構成と一致する構成名がある場合は、プラットフォームの部分が一致するかどうかに関係なく、その構成が使用されます。

  3. 依然として一致しない場合は、プロジェクトで設定されている最初の構成が使用されます。

Visual Studio でソリューション構成を新しいプロジェクト構成に関連付ける方法

プロジェクト構成を作成 (構成マネージャーで、プロジェクトの [構成] 列のドロップダウン メニューで [新規作成] を選択) し、 [新しいソリューション構成を作成する] チェック ボックスをオンにした場合、Visual Studio は、サポートする各プラットフォームでプロジェクトをビルドするために、似た名前のソリューション構成を探します。 場合によっては、Visual Studio が既存のソリューション構成名を変更することも、新しいソリューション構成を作成することもあります。

Visual Studio では、次の基準に従ってソリューション構成をプロジェクト構成に関連付けます。

  • プロジェクト構成でプラットフォームが指定されていない場合や、指定されているプラットフォームが 1 つのみの場合は、新しいプロジェクト構成名と一致する名前のソリューション構成が見つかればその構成が割り当てられ、見つからなければ追加されます。 このソリューション構成の既定の名前にはプラットフォーム名が含まれず、<プロジェクトの構成名> という形式になります。

  • プロジェクトで複数のプラットフォームがサポートされる場合、サポートされている各プラットフォームについて、ソリューション構成が見つかればその構成が割り当てられ、見つからなければ追加されます。 各ソリューション構成の名前には、プロジェクト構成名とプラットフォーム名の両方が含まれ、<プロジェクト構成名><プラットフォーム名> という形式になります。

構成がビルドに与える影響

[ビルド]>[ソリューションのビルド] コマンドを使用してソリューションをビルドする場合、Visual Studio ではアクティブな構成だけがビルドされます。 そのソリューション構成で指定されているすべてのプロジェクトがビルドされます。また、ビルドされるプロジェクト構成は、Visual Studio 内のツールバーに表示されるアクティブ ソリューション構成とアクティブ ソリューション プラットフォームで指定されているものだけです。 たとえば、Debugx86 です。 その他の定義済みの構成とプラットフォームは、ビルドされません。

1 回の操作で複数の構成とプラットフォームをビルドする場合は、Visual Studio で [ビルド]>[バッチ ビルド] オプションを使用できます。 この機能にアクセスするには、Ctrl+Q キーを押して検索ボックスを開き、「Batch build」と入力します。 バッチ ビルドは、すべてのプロジェクトの種類で使用できるわけではありません。 「方法:複数の構成を同時にビルドする」を参照してください。