質問 |
||
| QNo.4015827 | CImageクラスをVisualC++6.0で使いたいのですが | |
|---|---|---|
| 質問者:jeddom |
CImageクラスを使うには atlimage.h をインクルードする必要がありますが、atlimage.h がオープンできないというエラーが出ます。VisualC++6.0だと使えないのでしょうか。 .NETでは無事コンパイルできました。しかし.NETが入っているのは会社のパソコンなので、できれば自宅の6.0でやりたいです。 6.0でCImageクラスを使う方法はないでしょうか? もしくは、他にPNG画像の読み込み・表示ができるクラスはないでしょうか? 分かる方、どうか教えてください。 |
|
困り度:
|
||
| 質問投稿日時: 08/05/12 02:26 |
||
回答良回答20pt |
|
| ANo.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++』などをキーワードに検索してもそこそこの情報は取得出来そうですよ ソースつきのライブラリーなんかもありそうです |
|---|---|
| 回答者:redfox63 | |
| 種類:アドバイス どんな人:専門家 自信:参考意見 |
|
| 回答日時: 08/05/12 03:22 |
|
| |
| この回答へのお礼 | なるほど、DLLですが。思いつきませんでした。(汗) 探したらありました。 ご回答ありがとうございます。 |
回答 |
|
| ANo.1 | CImageがMFCに追加されたのは、MFC7以降です。 VC6の頃はMFC6ですので、CImageはありません。 自分で「GDI+」を使えばいけるのではないでしょうか。 調べてみてください。 |
|---|---|
| 回答者:MrBan | |
| 種類:回答 どんな人:専門家 自信:参考意見 |
|
| 回答日時: 08/05/12 03:05 |
|
| |
| この回答へのお礼 | 手元の参考書にはビットマップリソースの表示方法しか載ってないもので・・・ 今はフリーのDLLに頼ることにします。 ご回答ありがとうございました。 |