バイト配列画像データをイメージコントロールに表示するには?

解決


jaws  2005-09-09 19:03:21  No: 125085

バイト配列の画像データを、イメージコントロールに表示したいのですが、その際ファイルを経由しないでメモリ上で行う方法はないでしょうか?


jaws  2005-09-09 19:17:54  No: 125086

質問に不足がありました。
画像データはjpgでOS他は
windows2000sp4+VB6sp5で開発中です。


ガッ  2005-09-09 19:18:05  No: 125087

環境明記してください。
-.NET-
System.Drawing.Image.FromStream()が使えそうです。
System.IO.BufferdStreamとか…?

-VB6-
普通にWinAPIのSetDIBitsToDeviceなんかで。


K.J.K.  2005-09-09 20:28:14  No: 125088

バイト配列からIStreamを作り出し、それに対してOleLoadPicture
とか。バイト配列->IStreamは、ole32.dllの提供する既定のIStream
(Global Memory Handleに関連付けられたもの)を利用するか、自力で
IStreamをImplementsしたものを作るか、辺りでしょう。


魔界の仮面弁士  2005-09-09 21:09:31  No: 125089

こんな感じかな。
http://yaplog.jp/orator/archive/19

上記をコピーした上で、
   Set Image1.Picture = BytesToPicture(バイト配列)
のイメージで作れるかと。


jaws  2005-09-09 21:22:18  No: 125090

魔界の仮面弁士さんありがとうございました。
やりたいことがそのままできました。
後々ソースを解析して勉強します。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加