注
このページでは、Visual Studio 2019 のプロジェクト デザイナー エクスペリエンスと、Visual Studio 2022 を使用した .NET Framework プロジェクトについて説明します。
プロジェクト デザイナーの [コンパイル ] ページを使用して、コンパイル手順を指定します。 このページでは、高度なコンパイラ オプションとビルド前またはビルド後のイベントを指定することもできます。
[コンパイル] ページにアクセスするには、ソリューション エクスプローラーで (ソリューション ノードではなく) プロジェクト ノードを選択します。 次に、メニュー バーの [プロジェクト]、[プロパティ] の順に選択します。 プロジェクト デザイナーが表示されたら、[ コンパイル ] タブをクリックします。
注
あなたのコンピューターでは、この記事中の Visual Studio のユーザーインターフェイス要素の名前や場所が異なる場合があります。 別のエディションの Visual Studio または異なる環境設定を使用している場合があります。 詳細については、「IDEのカスタマイズ」を参照してください。
構成とプラットフォーム
次の設定を使用すると、表示または変更する構成とプラットフォームを選択できます。
注
ビルド構成が簡略化された場合、プロジェクト システムはデバッグ バージョンとリリース バージョンのどちらをビルドするかを決定します。 そのため、 構成 と プラットフォーム の一覧は表示されません。
構成
表示または変更する構成設定を指定します。 設定は 、デバッグ (既定)、 リリース、または すべての構成です。 詳細については、「 ビルド構成について 」および「 方法: 構成を作成および編集する」を参照してください。
プラットフォーム
表示または変更するプラットフォーム設定を指定します。 任意の CPU (既定)、x64、または x86 を指定できます。
コンパイラ構成オプション
次の設定を使用すると、コンパイラ構成オプションを設定できます。
ビルド出力パス
このプロジェクトの構成の出力ファイルの場所を指定します。 このボックスにビルド出力のパスを入力するか、[ 参照 ] ボタンをクリックしてパスを選択します。 パスは相対パスであることに注意してください。絶対パスを入力すると、相対パスとして保存されます。 既定のパスは bin\Debug\ または bin\Release\ です。
ビルド構成が簡略化された場合、プロジェクト システムはデバッグ バージョンとリリース バージョンのどちらをビルドするかを決定します。 デバッグ メニュー (F5) の Build コマンドは、指定した 出力パスに関係なく、デバッグの場所にビルド 配置します。 ただし、ビルド メニューの Build コマンドは、指定した場所に配置します。
オプションの明示的な指定
変数の暗黙的な宣言を許可するかどうかを指定します。 変数の明示的な宣言を要求するには 、[オン] を 選択します。 これにより、変数が使用される前に宣言されていない場合、コンパイラはエラーを報告します。 変数の暗黙的な宣言を許可するには 、[オフ] を 選択します。
この設定は 、/optionexplicit コンパイラ オプションに対応します。
ソース コード ファイルに Option Explicit ステートメントが含まれている場合、ステートメントのOn
値またはOff
値は、[コンパイル] ページの Option Explicit 設定をオーバーライドします。
新しいプロジェクトを作成すると、[コンパイル] ページの [オプションの明示的な設定] は、[オプション] ダイアログ ボックスの [オプションの明示的な設定] の値に設定されます。 このダイアログ ボックスの設定を表示または変更するには、[ ツール ] メニューの [オプション] をクリックします。 [ オプション ] ダイアログ ボックスで、[ プロジェクトとソリューション] を展開し、[ VB の既定値] をクリックします。 VB の既定値での Option Explicit の初期 の既定の 設定は [オン] です。
オプションを明示的にOff
に設定することは、一般に適切な方法ではありません。 1 つ以上の場所で変数名のスペルを間違えると、プログラムの実行時に予期しない結果が発生する可能性があります。
オプション厳密
厳密な型セマンティクスを適用するかどうかを指定します。 Option Strict がオンの場合、次の条件によってコンパイル時エラーが発生します。
暗黙的な縮小変換
遅延バインディング
Object
型になる暗黙的な型指定
暗黙的な縮小変換エラーは、縮小変換である暗黙的なデータ型変換がある場合に発生します。 詳細については、「 Option Strict ステートメント」、 暗黙的および明示的な変換、および 拡大変換と縮小変換を参照してください。
オブジェクトは、 Object
型として宣言されている変数のプロパティまたはメソッドに割り当てられると遅延バインドされます。 詳細については、「 Option Strict ステートメント 」および「 早期バインディングと遅延バインディング」を参照してください。
暗黙的なオブジェクト型エラーは、宣言された変数に対して適切な型を推論できないため、 Object
の型が推論されるときに発生します。 これは主に、Dim
句を使用せずに As
ステートメントを使用して変数を宣言し、Option Infer
がオフの場合に発生します。 詳細については、「 Option Strict ステートメント」、 Option Infer ステートメント、および Visual Basic 言語仕様を参照してください。
Option Strict 設定は、/optionstrict コンパイラ オプションに対応します。
ソース コード ファイルに Option Strict ステートメントが含まれている場合、ステートメントのOn
値またはOff
値は、[コンパイル] ページの Option Strict 設定をオーバーライドします。
プロジェクトを作成すると、[コンパイル] ページの [Option Strict] 設定は、[オプション] ダイアログ ボックスの [Option Strict] 設定の値に設定されます。 このダイアログ ボックスの設定を表示または変更するには、[ ツール ] メニューの [オプション] をクリックします。 [ オプション ] ダイアログ ボックスで、[ プロジェクトとソリューション] を展開し、[ VB の既定値] をクリックします。 VB の既定値の Option Strict の初期 の既定の 設定は オフです。
オプションの厳密な個別の警告
[コンパイル] ページの [警告の構成] セクションには、Option Strict
がオンのときにコンパイル時エラーが発生する 3 つの条件に対応する設定があります。 これらの設定を次に示します。
暗黙的な変換
遅延バインディング;呼び出しが実行時に失敗する可能性がある
暗黙的な型。object assumed
[Option Strict] を [オン] に設定すると、これらの 3 つの警告構成設定がすべて [エラー] に設定されます。 [オプションの厳格] を [オフ] に設定すると、3 つの設定がすべて [なし] に設定されます。
各警告構成設定は、個別に [なし]、[ 警告]、または [エラー] に変更できます。 3 つの警告構成設定がすべて [エラー] に設定されている場合は、[On
] ボックスにOption strict
が表示されます。 3 つすべてが [なし] に設定されている場合は、このボックス Off
表示されます。 これらの設定のその他の組み合わせの場合は、 (カスタム) が表示されます。
オプション比較
使用する文字列比較の種類を指定します。 バイナリの大文字と小文字を区別する文字列比較を使用するようにコンパイラに指示するには、[ バイナリ ] を選択します。 ロケール固有の大文字と小文字を区別しないテキスト文字列の比較を使用するには、[テキスト] を選択します。
この設定は 、/optioncompare コンパイラ オプションに対応します。
ソース コード ファイルに Option Compare ステートメントが含まれている場合、ステートメントのBinary
値またはText
値は、[コンパイル] ページの [オプション比較] 設定をオーバーライドします。
プロジェクトを作成すると、[コンパイル] ページの [オプション比較] 設定は、[オプション] ダイアログ ボックスの [オプション比較] 設定の値に設定されます。 このダイアログ ボックスの設定を表示または変更するには、[ ツール ] メニューの [オプション] をクリックします。 [ オプション ] ダイアログ ボックスで、[ プロジェクトとソリューション] を展開し、[ VB の既定値] をクリックします。 VB の既定値での Option Compare の初期の 既定の 設定は バイナリです。
オプション推論
変数宣言でローカル型の推論を許可するかどうかを指定します。 ローカル型推論の使用を許可するには 、[オン] を 選択します。 ローカル型の推論をブロックするには 、[オフ] を 選択します。
この設定は、 /optioninfer コンパイラ オプションに対応します。
ソース コード ファイルに Option Infer ステートメントが含まれている場合、ステートメントのOn
またはOff
値は、[コンパイル] ページの Option Infer 設定をオーバーライドします。
プロジェクトを作成すると、[コンパイル] ページの [オプション推論] 設定は、[オプション] ダイアログ ボックスの [オプション推論] 設定の値に設定されます。 このダイアログ ボックスの設定を表示または変更するには、[ ツール ] メニューの [オプション] をクリックします。 [ オプション ] ダイアログ ボックスで、[ プロジェクトとソリューション] を展開し、[ VB の既定値] をクリックします。 VB の既定値 での Option Infer の初期 の既定の 設定は [オン] です。
ターゲット CPU
出力ファイルの対象となるプロセッサを指定します。 任意の 32 ビット Intel 互換プロセッサの 場合は x86 、任意の 64 ビット Intel 互換プロセッサの 場合は x64 、ARM プロセッサの場合は ARM 、任意のプロセッサが許容可能であることを指定するには 任意の CPU を指定します。 任意の CPU が新しいプロジェクトの既定値です。これは、アプリケーションを最大のハードウェアの種類で実行できるためです。
詳細については、「 /platform (Visual Basic)」を参照してください。
32 ビットを優先する
[ Prefer32 ビット ] チェック ボックスがオンの場合、アプリケーションは 32 ビット バージョンと 64 ビット バージョンの両方の Windows で 32 ビット アプリケーションとして実行されます。 それ以外の場合、アプリケーションは 32 ビット バージョンの Windows では 32 ビット アプリケーションとして、64 ビット バージョンの Windows では 64 ビット アプリケーションとして実行されます。
64 ビット アプリケーションとして実行するとポインター サイズが 2 倍になり、32 ビットのみのライブラリとの互換性の問題が発生する可能性があります。 アプリケーションを 64 ビットとして実行するのは、アプリケーションの実行速度が大幅に速い場合や、4 GB を超えるメモリが必要な場合にのみ有効です。
このチェック ボックスは、次のすべての条件に該当する場合にのみ使用できます。
[コンパイル] ページで、[ターゲット CPU] の一覧が [任意の CPU] に設定されています。
[ アプリケーション] ページの [ アプリケーションの種類 ] の一覧で、プロジェクトがアプリケーションであることを指定します。
[アプリケーション] ページで、ターゲット フレームワークの一覧で .NET Framework 4.5 を指定します。
警告の構成
次の表に、ビルド条件と、それぞれの None、 Warning、または Error の対応する通知レベルを示します。
既定では、コンパイル時にすべてのコンパイラ警告がタスク リストに追加されます。 警告またはエラーを発行しないようにコンパイラに指示するには、[ すべての警告を無効にする] を選択 します。 コンパイラで警告を修正する必要がある エラーとして 扱う場合は、[すべての警告をエラーとして扱う] を選択します。
すべての警告を無効にする
このドキュメントで前述した 条件と通知 の表で指定したとおりに、コンパイラが通知を発行できるようにするかどうかを指定します。 既定では、このチェック ボックスはオフになっています。 警告やエラーを発行しないようにコンパイラに指示するには、このチェック ボックスをオンにします。
この設定は 、/nowarn コンパイラ オプションに対応します。
すべての警告をエラーとして扱う
警告の処理方法を指定します。 既定では、すべての警告通知が [警告] に設定されたままになるように、このチェック ボックスはオフになっています。 すべての警告通知を [エラー] に変更するには、このチェック ボックスをオンにします。
このオプションは、[ すべての警告を無効にする] がオフになっている場合にのみ使用できます。
XML ドキュメント ファイルを生成する
ドキュメント情報を生成するかどうかを指定します。 既定では、このチェック ボックスがオンになり、ドキュメント情報を生成して XML ファイルに含めるようコンパイラに指示します。 コンパイラにドキュメントを作成しないように指示するには、このチェック ボックスをオフにします。
この設定は 、/doc コンパイラ オプションに対応します。
COM 相互運用機能に登録する
マネージド アプリケーションが COM オブジェクト (COM 呼び出し可能ラッパー) を公開して、COM オブジェクトがアプリケーションと対話できるかどうかを指定します。
既定では、このチェック ボックスはオフになっています。このチェック ボックスは、アプリケーションが COM 相互運用を許可しないことを指定します。 COM 相互運用を許可するには、このチェック ボックスをオンにします。
このオプションは、Windows アプリケーション またはコンソール アプリケーション プロジェクトでは使用できません。
ビルド イベント
[ ビルド イベント ] ダイアログ ボックスにアクセスするには、このボタンをクリックします。 このダイアログ ボックスを使用して、プロジェクトのビルド前とビルド後の構成手順を指定します。 このダイアログ ボックスは、Visual Basic プロジェクトにのみ適用されます。 詳細については、「 ビルド イベント] ダイアログ ボックス (Visual Basic)」を参照してください。
高度なコンパイル オプション
このボタンをクリックすると、[ AdvancedCompiler Settings] ダイアログ ボックスにアクセスできます。 [AdvancedCompiler 設定] ダイアログ ボックスを使用して、プロジェクトの高度なビルド構成プロパティを指定します。 このダイアログ ボックスは、Visual Basic プロジェクトにのみ適用されます。 詳細については、「 コンパイラの詳細設定] ダイアログ ボックス (Visual Basic)」を参照してください。