VS2008 で作ったプログラムが、他のパソコンで動かない

http://msdn.microsoft.com/ja-jp/library/abx4dbyh%28v=VS.90%29.aspx

間違って、Debugビルドを配布したら、他のパソコンで動かなかった。

しかし、Releaseビルドを、手持ちの仮想環境のXP(まだランタイムとか入れてない)に入れても、動かなかった。。orz


どうやら、Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ (x86)
というのがいるらしい。。

Visual C++ 2008 SP1 で開発されたアプリケーションを Visual C++ 2008 SP1 がインストールされていないコンピュータ上で実行するために必要な、Visual C++ ライブラリのランタイム コンポーネントをインストールします。

ということで、VS2008で作ったプログラムは、これがないと、動かないらしい。。??


でも、そんなのに頼らなくても、行ける方法があるはず!

とおもって、いろいろ探していたら、どうやら、コンパイルオプションで、/MDではなく、/MTを指定すると、スタティックリンクになるらしい。。


http://msdn.microsoft.com/ja-jp/library/abx4dbyh%28v=VS.90%29.aspx

/MD -> /MT にかえることで、治った。。と思われます。。


ちなみに必要なのは、MFCじゃなくて、Cランタイムライブラリなんですけどねぇ。。
最近のVisual C++は、いろいろありますねぇ。。