dポイントプレゼントキャンペーン実施中!

CImageクラスを使うには atlimage.h をインクルードする必要がありますが、atlimage.h がオープンできないというエラーが出ます。VisualC++6.0だと使えないのでしょうか。
.NETでは無事コンパイルできました。しかし.NETが入っているのは会社のパソコンなので、できれば自宅の6.0でやりたいです。

6.0でCImageクラスを使う方法はないでしょうか?
もしくは、他にPNG画像の読み込み・表示ができるクラスはないでしょうか?
分かる方、どうか教えてください。

A 回答 (2件)

VC.NET2002以降をお持ちで MFCのソースがあるなら



VCのインストールフォルダーの下の
atlmfc\include\atlimage.hやatlmfc\src\atls\atlimage.cpp,atlimage2.cppなどを参考に移植しましょう

CImageクラスは GDI+の単なるラッパーですよ
GDIPlusStartupやReleaseGDIPlusをオブジェクトの構築・破棄で呼び出しながら GDI+のメンバーをMFCクラスのようにしてあるだけです
マルチスレッドでも安全に呼び出せるような仕掛けがしてはありますが・・・

VC6.0付属のMSDNの英語版解説の『Graphics and Mulimedia』の下の『GDI+』を参照してみましょう
なお VC6のインストールCDなどは結構古めのPlatformSDKなので
『Windows Server 2003 SDK』などをインストールしたほうがいいでしょう
GDIPLUS.Hはインクリュードパスに無かったりします

PNGを扱えるDLLなら vectorあたりで検索すれば見つかると思いますよ
Webで『PNG DLL C/C++』などをキーワードに検索してもそこそこの情報は取得出来そうですよ
ソースつきのライブラリーなんかもありそうです
    • good
    • 0
この回答へのお礼

なるほど、DLLですが。思いつきませんでした。(汗)
探したらありました。
ご回答ありがとうございます。

お礼日時:2008/05/13 00:56

CImageがMFCに追加されたのは、MFC7以降です。


VC6の頃はMFC6ですので、CImageはありません。

自分で「GDI+」を使えばいけるのではないでしょうか。
調べてみてください。
    • good
    • 0
この回答へのお礼

手元の参考書にはビットマップリソースの表示方法しか載ってないもので・・・
今はフリーのDLLに頼ることにします。
ご回答ありがとうございました。

お礼日時:2008/05/13 01:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!