Microsoft Visual Studio C++ Express 2010 で Windows 7 を実行している PC でコンパイルした Win32 C++ アプリケーションがあります。アプリケーションは \MT ランタイム フラグ (マルチ スレッド) を使用してリリース モードでコンパイルされます。
私の問題: Windows Vista を実行しているラップトップで .exe を実行しようとすると、アプリケーションがクラッシュし、メイン ウィンドウが開きません。私が使用している .exe は、ビジュアル スタジオ プロジェクトの「リリース」フォルダーからの出力です。
アプリケーションのほとんどの win32 関数を確認しましたが、それらはすべて Windows 2000 以降で動作します。また、Visual Studio プロジェクトを Windows Vista ラップトップに移動してコンパイルしたところ、問題なく動作しました。
.exe がクラッシュするのはなぜですか? これは、異なるバージョンの Windows OS で .exe を動作させるには、インストーラーを使用するしかないということですか? .exe のサイズは 175kb しかないので、インストーラーはおそらく出力された .exe よりも大きくなります笑?