« フィルタDLLの作成 | メイン | 多重継承 »

August 31, 2004

IDLの記述

新しいインターフェイスを作るのでIDLを書くことにした。
IDLを書けば、MIDLでヘッダーとか自動生成されるはず。
で、必要なメソッドはバッファの取得/設定のみかな。
とりあえず、書いてみるとこんな感じかな。
// IRendererBufferAccess.idl
import "oaidl.idl";
[
object,
uuid(2F8FFFC5-E7BE-497a-9254-DB97639131A6),
]
interface IRendererBufferAccess : IUnknown
{
HRESULT SetFrontBuffer( [in] BYTE *buff, [in,out] long *size );
HRESULT SetBackBuffer( [in] BYTE *buff, [in,out] long *size );
HRESULT GetFrontBuffer( [out] BYTE *buff, [in,out] long *size );
HRESULT GetBackBuffer( [out] BYTE *buff, [in,out] long *size );
}

このソースは、試していないのでうまく行くかどうかは不明。
さあ、MIDLだ。コマンドラインでVCのバッチを実行して

MIDL IRendererBufferAccess.idl

と入力する。
すると、いくつかソースが出力されるが、実際に使うのは、_i.cと.hのみ。
他はリモートコールなどの時に使用されるようだ。
とりあえずは、.hをインクルードして、インターフェイスを継承すればいい。

投稿者 Takenori : August 31, 2004 10:40 PM

Trackback Pings

このエントリーのトラックバックURL:
http://blog.kaede-software.com/mt-tb.cgi/121

コメント

Total : Today : Yesterday :