• ベストアンサー

MFCと.NETFramework

MFCも.NETFrameworkも、OSだけが入っている環境だと動作しないと思うのですが、 MFCは、アプリケーションと一緒に配布して、インストーラーなしでアプリケーションを起動出来ますか? 出来るだけ必要なファイルを最小限にとどめた簡単なアプリケーションを作りたいのです。

質問者が選んだベストアンサー

  • ベストアンサー
  • MrBan
  • ベストアンサー率53% (331/615)
回答No.1

MFC6のランタイムは最近のXPだと予め入っていたりとかしますし、 MFCのバージョンにもよります。OSのバージョンにもよります。 他にActiveXとか使ってるとインストーラが必要になったりとか、 あまり一概に言えるものではありません。 まぁ、MFC6(VC6),MFC7(VC7.1)あたりだと、他に特殊なものを使っていなければ、 スタティックリンク(ものによってはPro版以上?)すればexe単体で動きます。 ダイナミックリンクでも、dllを添付すればインストーラは必須ではありません。

naktak
質問者

お礼

ありがとうございます。 そういえばそんな事が出来ましたね!すっかり忘れてました。 逆に疑問になったのが、MFCがOS内に含まれており、アプリケーションと一緒に 配布したMFCが存在した場合、どちらを見に行くか?という事です。 一番最初に見るのって、実行アプリと同ディレクトリでしたっけ?

その他の回答 (2)

  • MrBan
  • ベストアンサー率53% (331/615)
回答No.3

> 一番最初に見るのって、実行アプリと同ディレクトリでしたっけ? Windows PCの場合、DLLの評価順はMSDNのLoadLibraryの説明を読むと書いてあります。

  • furyfox
  • ベストアンサー率56% (58/103)
回答No.2

MFCに関しては既出の通りMFCのライブラリを スタティックリンクすればexe単体で実行出来ます。 ただしある程度実行ファイルのサイズは大きくなります。 .NET Frameworkはおっしゃるように実行には.NET Frameworkの環境が必要になります。 (VC#2005で作成したアプリなら.NET Framework2.0の実行環境) Vistaでは.NET Framework3.0(WinFX)が入っているようです。

naktak
質問者

お礼

ありがとうございます。 確かに、重くなりそうです・・・。メモリも。 まー、大きいプログラムではないので、その辺は気にしない事にします(笑)

関連するQ&A