DOBON.NET DOBON.NETプログラミング掲示板過去ログ

クリップボードのメタファイル画像表示

分類:[.NET]

はじめまして。
Excelで作成したグラフをクリップボード経由でピクチャーボックスに表示したいのですが、うまくいかず悩んでいます。
こちらのNo825,838を参考に以下のコードを実行しました。

Dim data As IDataObject = Clipboard.GetDataObject()
If data.GetDataPresent(DataFormats.EnhancedMetafile) Then
Dim mem As System.IO.MemoryStream = data.GetData("Office Drawing Shape Format")
Dim img As New System.Drawing.Imaging.Metafile(mem)
(以下省略)

するとmemを使ってimgを生成するところで例外エラーが発生してしまいます。
ちなみにExcelで作成したグラフをGetFormats()で見ると
Office Drawing Shape Format
MetaFilePict
EnhancedMetafile
の3種類だけで、MetaFilePictとEnhancedMetafileの指定ではmemの生成時点で、エラーは発生しないものの、memの内容がnothingとなってしまいます。

何か良い方法はないでしょうか?
よろしくお願いいたします。
マイクロソフトに問い合わせたところ、VS.NET 2002,2003とも仕様上クリップボード経由ではできないので、ビットマップ等のファイルに落としてやってくれとのことでした。
お騒がせいたしました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板