• ベストアンサー

VisualC++ exeファイルと画像の関係

VisualC++2008 Express Edition(win32アプリケーションモード)でショートゲームプログラムを作成してみましたが、release ビルドで作成された.exeファイルに、プログラム内の画像を含めることができません。例えばエンディング画面などは、ゲームをクリアするまで見ることができない設定にするほうがよいと思うのですが、 現在の設定では、作成されたreleaseフォルダに使用する画像(.bmpや.jpg)を手動で追加しなければならず、最初から見えてしまいます。何かいい方法はないでしょうか?

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

  • ベストアンサー
  • Tasuke22
  • ベストアンサー率33% (1799/5383)
回答No.2

Virtual C++ 2008は使ったことが無いのですが、Visual Studio95 だったかな? ではリソースエディタが付いていて、プログラムの アイコンやヘルプのバージョン情報やプログラム内で使用するメッ セージなどをリソース登録していました。 同じようにBMPもリソース登録出来ましたがJPEGは分かりません。 プログラムの実際のコーディング時はリソース名で扱っていました。 これらのリソースはコンパイルするとモジュールの中に組込まれ、 実行形式ファイルの中に埋もれてしまいます。 ただし、実行形式ファイルからリソースを抜き出すフリーソフトは 存在しています。 リソースを読み込むのはMFCだったような記憶があります。 曖昧ですみません。

okwave_q_a
質問者

お礼

Tasuke22さん、ありがとうございました! 質問してすぐに回答していただけたので疑問点をさらに質問でき、 解決策が見つかりました。 OkWaveさんのサイトで質問をしたのは初めてですが、とても ありがたいコミュニティーだとおもいます。

okwave_q_a
質問者

補足

回答ありがとうございます。 リソースエディタというのがキーワードですね。 http://gurigumi.s349.xrea.com/programming/visualcpp/resedit.html リソースエディタがVirtual C++ 2008のExpress Editionにはついていないようなのですが、リソースエディタで検索してみたところ上記のサイトなどで、ResEditというソフトが勧められていました。 とりあえず、使いこなせるかどうかわかりませんが、とりあえずチャレンジしてみます。 諦めていたアイコンの作成、バージョン管理もできるようになるかもしれないので楽しみです。 (VisualStudio2005も持っているのでMFC環境も使えないことはないのですが、持っている参考文献がwin32を勧めていたのでMFCで何かプログラムを作成したことはありません。 MFCでアプリケーションを作成すると、作成された実行する際に.netフレームワークがないといけないとか聞いたことがあるのでややこしそうで敬遠していましたのもMFCを使ったことがない理由の一つです。 MFCを使ったほうがメリットが多いようなのかもしれませんが、とりあえずwin32アプリケーションモードしか使ったことしかないので・・・) リソースを抜き出すソフトがあるということですが、そこまでしてみたいという人であれば、仕方がないと思うしかないですね。 とりあえず、Win32アプリケーションモードでリソースエディタを使えないか試してみます。 回答ありがとうございました。

その他の回答 (1)

  • Tasuke22
  • ベストアンサー率33% (1799/5383)
回答No.1

画像を画像ファイルの読み込みでなく、リソースで 定義出来ませんか?

okwave_q_a
質問者

補足

回答ありがとうございます。 画像を画像ファイルの読み込みではなくリソースで定義するという方法があるということですね。 これまでの設定では 画像の読み込みはDXライブラリという簡単に画像が扱えるものをインストールして、 LoadGraphという関数(?)を使って読み込み、DrawGraphで出力しています。 ソリューションエクスプローラでは、画像ファイルはリソースファイル内にある状態です。 リソースで定義という方法は、DXライブラリを使わない方法になるということなのでしょうか?

関連するQ&A