次の方法で共有


/platform (Visual Basic)

出力ファイルをどのプラットフォーム用の共通言語ランタイム (CLR) で実行するかを指定します。

/platform:{ x86 | x64 | Itanium | arm | anycpu | anycpu32bitpreferred }

引数

用語

定義

x86

32 ビット x86 互換 CLR で実行されるように、アセンブリをコンパイルします。

x64

AMD64 または EM64T 命令セットをサポートするコンピューター上の 64 ビット CLR で実行されるように、アセンブリをコンパイルします。

Itanium

Itanium プロセッサ搭載のコンピューター上の 64 ビット CLR で実行されるように、アセンブリをコンパイルします。

arm

ARM (アドバンスト RISC マシン) プロセッサ搭載のコンピューター上で実行されるように、アセンブリをコンパイルします。

anycpu

任意のプラットフォーム上で実行されるように、アセンブリをコンパイルします。 アプリケーションは、Windows の 32 ビット バージョンでは 32 ビット アプリケーションとして、Windows の 64 ビット バージョンでは 64 ビット アプリケーションとして実行されます。 このフラグが既定値です。

anycpu32bitpreferred

任意のプラットフォーム上で実行されるように、アセンブリをコンパイルします。 アプリケーションは、Windows の 32 ビット バージョンおよび 64 ビット バージョンの両方で、 32 ビット アプリケーションとして実行されます。 このフラグは、実行可能ファイル (.EXE) に対してのみ有効であり、.NET Framework 4.5 を要求します。

解説

出力ファイルの対象となるプロセッサの種類を指定するには、/platform オプションを使用します。

通常、Visual Basic で記述された .NET Framework アセンブリは、プラットフォームに関係なく、同じように実行されます。 ただし、プラットフォーム間で動作が異なる場合があります。 その一般的な例を次に示します。

  • プラットフォームによってメンバーのサイズが変わる構造体 (ポインター型など)

  • 定数のサイズを含むポインター演算

  • ハンドルに Integer ではなく IntPtr を使用した不適切なプラットフォーム呼び出しまたは COM 宣言

  • IntPtr の Integer へのキャスト

  • すべてのプラットフォームに存在するとは限らないコンポーネントを使用したプラットフォーム呼び出しまたは COM 相互運用機能の使用

コードの実行対象となるアーキテクチャをあらかじめ想定している場合には、/platform オプションを使用することで、問題が軽減されることがあります。 具体的には、次のように使用します。

  • 64 ビット プラットフォームを対象にし、アプリケーションを 32 ビット マシンで実行した場合、エラー メッセージは、このスイッチを使用しない場合よりも、エラー メッセージがかなり早期に出力され、より絞り込まれた内容になります。

  • オプションに x86 フラグを設定し、その後、アプリケーションを 64 ビット マシンで実行した場合、アプリケーションはネイティブに実行されず、WOW サブシステムで実行されます。

64 ビット Windows オペレーティング システムの場合:

  • /platform:x86 でコンパイルされたアセンブリは、WOW64 の下で動作する 32 ビット CLR で実行されます。

  • /platform:anycpu でコンパイルされた実行可能ファイルは、64 ビット CLR で実行されます。

  • /platform:anycpu でコンパイルでされた DLL は、ロード先のプロセスと同じ CLR で実行されます。

  • /platform:anycpu32bitpreferred でコンパイルされた実行可能ファイルは、32 ビット CLR で実行されます。

64 ビット バージョンの Windows で動作するアプリケーションを開発する方法の詳細については、「64 ビット アプリケーション」を参照してください。

Visual Studio IDE で /platform を設定するには

  1. ソリューション エクスプローラーで、プロジェクトを選択し、[プロジェクト] メニューを開き、[プロパティ] をクリックします。

    詳細については、「Introduction to the Project Designer」を参照してください。

  2. [コンパイル] タブで、[32 ビットを優先] チェック ボックスをオンまたはオフにするか、または [対象の CPU] ボックスの一覧で値を選択します。

    詳細については、「[コンパイル] ページ (プロジェクト デザイナー) (Visual Basic)」を参照してください。

使用例

次の例は、/platform コンパイラ オプションを使用する方法を示しています。

vbc /platform:x86 myFile.vb

参照

関連項目

/target (Visual Basic)

コンパイル コマンド ラインのサンプル (Visual Basic)

その他の技術情報

Visual Basic のコマンド ライン コンパイラ