VisualStudioではコンパイル時にコンパイラに渡す定数を定義しておいて、コード上のプリプロセッサで実行ファイルにその部分を含めるか定義する事が出来る事をさっき知った。

こういうコードだと、定数ZANMAIが定義されていればざんまい!!されていなければかず助になる。実行中に条件分岐するのではなく、実行ファイルに丸ごと含まれるか/含まれないかが、コンパイル構成プロファイル毎に変化する。#ifZANMAI

MessageBox.Show("ざんまい!!");

#else

MessageBox.Show("かず助!!!!");

#endif

構成プロファイル「NIKU」を新規作成する。

構成マネージャ

プロジェクトのプロパティのビルドで、条件付きコンパイルシンボルをNIKUプロファイル固有の定数として追加しておく

条件付きコンパイルシンボル

この部分を含んでコンパイルするか、含まない実行ファイルを作るかを解釈するようになる。

動作の違う実行ファイルをそれぞれ書き出せるようになると、それだけ設定画面などを作る必要がなくなるのでうまく使えば便利そう