人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VC++6.0のMFCアプリケーション開発で、メモリ上のイメージから直接ビットマップを生成しハンドルを得る方法を探しています。メモリ上のイメージとは、ビットマップ(.bmp)ファイルの構造をそのままメモリ上に置いただけのバイナリイメージです。ビットマップデータは毎秒数回ほどの頻度で、ネットワーク経由で伝送されてくるので、ファイルにいったん保存してLoadImage関数を呼ぶ方法は、使いたくありません。

●質問者: yaman135
●カテゴリ:コンピュータ
✍キーワード:BMP mfc VC++ アプリケーション イメージ
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● hissssa
●60ポイント ベストアンサー

ビットマップファイルの構造は、BITMAPFILEHEADER型構造体+BITMAPINFOHEADER型構造体+画像データ配列です。そのメモリイメージの先頭からこの順序でデータを取り出した後、CreateDIBitmap()を使えばHBITMAPのハンドルが得られますよ。

◎質問者からの返答

ヘッダサイズが固定でないなど、ビットマップファイルの構造を扱うのは面倒そうなのでなるべく避けていたんですが、やっぱりAPI一発のような方法は無いのですね。

ちょっと試しに実装してみたのですが、まだうまくは動作しません。

ですが、方針は決しました。

あとは腰を入れて調べれば、ビットマップの構造自体についての情報は検索で簡単に見つかりますので。

ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ