• 締切済み

Visual C++ 2008 Express Editionsで作成されたエグゼファイルを他のPCで実行できない。

こんにちわ。 私は、WindowsXPでVisual C++ 2008 Express Editionsでフォームを使用したアンケートで、回答結果をcsvファイルで出力するようなエグゼを作成しました。このエグゼを他のパソコン(OSはWindows)で実行できるのか試したのですが、できせんでした。実行するパソコンにVisual C++ 2008 Express Editionsが入っていないといけないのでしょうか?そうだとしたら、どのパソコン(OSがWindowsの場合のみ)でも実行することができるようになる方法はありますか?どうかご教授願います。

みんなの回答

  • k_o_j_i
  • ベストアンサー率72% (18/25)
回答No.4

「他のパソコン」には.NET Framework はインストール済みですか? CLRの場合は必須となります。 インストール済みならば、 (1)「ソリューション構成」を「Release」にする (2)「プロジェクト」→「プロジェクト名のプロパティ」で「構成」を「Release」にする (3)引き続きプロパティで「構成プロパティ」→「C/C++」→「コード生成」→「ランタイムライブラリ」で「マルチスレッド DLL (/MD)」を選ぶ (4)F7キーでビルド。Releaseフォルダにビルド済みexeファイルができていることを確認 で作成したexeファイルはどうでしょうか。C++/CLIでは/MTとの併用はできないようです。

noname#208124
noname#208124
回答No.3

4つのうちのどれか1つだけやればOKです わからない方法はスルーしてください

tierra31
質問者

補足

最初の2つの方法を試したのですが、最初の方法は実行できなくて、2つ目はビルドしたら  コマンド ライン オプション '/MT' と '/clr:pure' は同時に指定できません とエラーが出てしまいました。

  • S117
  • ベストアンサー率40% (18/45)
回答No.2

プロジェクトの種類も示していただけるといいのですが。 もしWin32プロジェクトであれば、デバッグでビルドしたexeをそのままコピーしていませんか? ツールバーのデバッグ開始の隣のDebugをReleaseに変えてビルドしてみてください。

tierra31
質問者

補足

ご回答ありがとうございます。 プロジェクトはCLRのWindowsフォームアプリケーションです。

noname#208124
noname#208124
回答No.1

・CRTもインストールさせる http://www.microsoft.com/DOWNLOADS/details.aspx?familyid=A5C84275-3B97-4AB7-A40D-3802B2AF5FC2&displaylang=ja ・プロジェクトのランタイムライブラリのマルチスレッドDLL(/MD)をランタイムライブラリをマルチスレッド(/MT)に変える ・プライベートアセンブリを利用する ・CRT libファイルをWDK/DDKから持ってくる(MSVCRT.DLLにリンクできる) なお、VC++2008自体が内部動作的にも9x系非サポートですので既定では9x系では動きませんのでご注意を

参考URL:
http://nn1234.wordpress.com/2008/04/11/vc-90-msvcrtdll-windows-95/,http://louis.steelbytes.com/vs2008_vs_win40.html
tierra31
質問者

補足

ご回答ありがとうございます。 ・プライベートアセンブリを利用する ・CRT libファイルをWDK/DDKから持ってくる(MSVCRT.DLLにリンクできる) 申し訳ないのですが、この2点をどうすればよいのか分からないので教えたいただけますか?