VB.NET
VB.NETで開発しています。このところ悩んでいるのが、Accessのmdbデータベースのoleオブジェクト型のフィールドにOLEドキュメントを入れたり、出したりするにはどうしたらよいかということ。
VB6ではOLEコンテナコンポーネントがあって、データベースのコンポーネントのフィールドに対応付けることができました。何も考えなくてもOLEコンテナにOLEオブジェクトを入れれば、データベースに入ってくれました。
またAccessを開いて、OLEオブジェクト型のフィールドをダブルクリックすることで、OLEドキュメントを開くことができました。
VB.NETではこのOLEコンテナコンポーネントがありません。OLEオブジェクト型のフィールドにOLEドキュメントを入れるときには何らかの方法でSerializeしてBYTEの配列として代入することになります。
しかし、代入したものをDeserializeして取り出すだけならいいのですが、AccessのフィールドをダブルクリックしてOLEドキュメントを開くことはできそうにありません。
結局、OLEドキュメントを一旦ファイルにセーブして、FileStreamをつくり、これからBinaryReaderを作ってバイト配列を作ると言う回りくどいことをやる羽目になりました。
まだ正常に動作するかどうか試していないのですが・・・。
カテゴリ
ソフトウェアトラックバック(0)
このブログ記事を参照しているブログ一覧: VB.NET
このブログ記事に対するトラックバックURL: http://codeanimato.com/mt/mt-tb.cgi/195


コメントする