◆ プロジェクトのプロパティのビルドタブのプラットフォームターゲットで選択
◆ 実行時のビット数を調べるのは Environment.Is64BitProcess プロパティ

これまであまり意識したことなかったのですが 外部アプリを動かすときに問題が起きたのでビット数を調べてみました

ビット数指定する

ビット数はプロジェクトのプロパティのビルドタブで設定できます

project-property-bit

プラットフォームのターゲット というところです

x86 が 32bit
x64 が 64bit

です

Any CPU を選べば 64bit OS で 64bit で実行できれば 64bit で 32bit OS のときは 32bit で実行してくれます
優先が 64bit ですがすぐ下にある 「32bit を優先」 のチェックを入れると 32bit を優先して 32bit で実行できないときに 64bit で実行されるようになります

注意するのは上にある「プラットフォーム」というところ
「プラットフォーム」に表示されているのはただの名前です
ここに x64 や Any CPU って書いていてもプラットフォームターゲットの設定が x86 なら 32bit アプリケーションが作られます

ウィンドウの上のツールバーにあるセレクトボックスで簡単に切り替えれるようになっているものと対応してます
これ↓

vs-toolbar-build-platform

名前は Any CPU なのに設定を変えて x64 になっていると動かない原因を見つけるのに苦労する可能性があるので 名前と違う設定にはしないのが無難です

この名前を変えたり追加するのは構成マネージャからできます
構成マネージャを出すにはソリューションの右クリックメニューからできます

どっちで動いてるのか調べる

いま 32bit と 64bit のどっちで動いてるのか調べるには Environment.Is64BitProcess で調べられます
if (Environment.Is64BitProcess)
{
    Console.WriteLine("64bit");
}
else
{
    Console.WriteLine("32bit");
}

ついでに OS のビット数も知りたいなら Environment.Is64BitOperatingSystem で見れます

どっちも bool 値でビット数の数値を返してくれる機能はなさそうです