- ベストアンサー
Visual C++ Express Editionのランタイムなしで起動する方法
いま、Visual C++ Express Edition を使って、開発しています。 前回、同じようなことを質問したのですが いまいちわからなかったので、もう一度質問させていただきます。 Visual C++ Express Edition で作ったWin32アプリケーションは、 VCランタイムが必要らしいですが、 VCランタイムをほかのPCにインストールしなくても 起動できるようにはできないのですか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
コンパイラオプションかリンカオプションの所に「ランタイムライブラリを使うかどうか?」の設定があったような気がします。 「ランタイムライブラリを使う」にすると、exeファイルが小さくなりますが、実行時にVCランタイムライブラリが要ります。 「ランタイムライブラリを使わない」にすると、exeファイルが肥大化しますが、実行時にVCランタイムライブラリは要りません。
その他の回答 (2)
- redfox63
- ベストアンサー率71% (1325/1856)
IDEでプロジェクト > 一番下のプロジェクトのプロパティ 左ペインで C/C++ > コード生成 右ペインの ランタイムライブラリを 『マルチスレッド(/MT)』または『マルチスレッド デバッグ (/MTd)』を選択します プロジェクトまたはソリューションのリビルドを実行してみましょう
お礼
回答ありがとうございます 前回にその方法を教えてもらったのですが、 逆にファイル本体の容量が小さくなり 29KB⇒2.4KB ほかのPCでは起動できませんでした。 また、ほかのプロジェクトでは、ビルドもできなくなってしまい、 リリースモードでしかビルドができなくなっていたので、 効果はなかったかのように見えますが、 No2回答の、ランタイムライブラリの依存 と組み合わせることでできるようになりました!! ありがとうございました!
- Situgyosya
- ベストアンサー率41% (21/51)
「Win32プロジェクト」又は「Win32コンソールアプリケーション プロジェクト」を使用した場合*.exe単体で動作できます。 何もいりません。対象PCに*.exeをコピーするだけです。
お礼
回答ありがとうございます。 通常のC++ではそのようなランタイムは必要ないのですが、 Visual C++ 2008 Expfress Editionでは VCランタイムが必須みたいです。 でも、わざわざありがとうございました。
お礼
回答ありがとうございます。 >コンパイラオプションかリンカオプションの所に これは、プロジェクトのリンカの全般のツリーにある 「ランタイムライブラリの依存」だと思います。 これをOFFにしたところ、ファイル容量が 29KB⇒259KB に肥大化しましたので、これだと思います。 おかげで解決しました!ありがとうございます