Win32 API 日本語リファレンス
ホームWeb.MsHtml › IMarkupContainer2

IMarkupContainer2

COM
IID3050f648-98b5-11cf-bb82-00aa00bdce0b継承元IMarkupContainer自前メソッド開始 vtbl4

メソッド 6

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 4 HRESULT CreateChangeLog(IHTMLChangeSink* pChangeSink, IHTMLChangeLog** ppChangeLog, BOOL fForward, BOOL fBackward)
pChangeSinkIHTMLChangeSink*in変更通知を受け取るシンクを指定する IHTMLChangeSink へのポインタである。
ppChangeLogIHTMLChangeLog**out作成された変更ログを受け取る IHTMLChangeLog へのポインタである。不要になったら Release する。
fForwardBOOLin順方向の変更を記録するかどうかを指定する BOOL である。
fBackwardBOOLin逆方向の変更を記録するかどうかを指定する BOOL である。
vtbl 5 HRESULT RegisterForDirtyRange(IHTMLChangeSink* pChangeSink, DWORD* pdwCookie)
pChangeSinkIHTMLChangeSink*inダーティ範囲の通知を受け取るシンクを指定する IHTMLChangeSink へのポインタである。
pdwCookieDWORD*out登録を識別するクッキー(解除時に使用)を受け取る DWORD へのポインタである。
vtbl 6 HRESULT UnRegisterForDirtyRange(DWORD dwCookie)
dwCookieDWORDin登録時に取得したクッキーを指定して、ダーティ範囲通知の登録を解除する DWORD である。
vtbl 7 HRESULT GetAndClearDirtyRange(DWORD dwCookie, IMarkupPointer* pIPointerBegin, IMarkupPointer* pIPointerEnd)
dwCookieDWORDin対象の登録を識別するクッキーを指定する DWORD である。
pIPointerBeginIMarkupPointer*inダーティ範囲の開始位置を受け取る IMarkupPointer へのポインタである。
pIPointerEndIMarkupPointer*inダーティ範囲の終了位置を受け取る IMarkupPointer へのポインタである。
vtbl 8 INT GetVersionNumber()
vtbl 9 HRESULT GetMasterElement(IHTMLElement** ppElementMaster)
ppElementMasterIHTMLElement**outこのコンテナのマスター要素を受け取る IHTMLElement へのポインタである。不要になったら Release する。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IMarkupContainer2 "{3050F648-98B5-11CF-BB82-00AA00BDCE0B}"
#usecom global IMarkupContainer2 IID_IMarkupContainer2 "{}"
#comfunc global IMarkupContainer2_CreateChangeLog          4 sptr,sptr,int,int
#comfunc global IMarkupContainer2_RegisterForDirtyRange    5 sptr,var
#comfunc global IMarkupContainer2_UnRegisterForDirtyRange  6 int
#comfunc global IMarkupContainer2_GetAndClearDirtyRange    7 int,sptr,sptr
#comfunc global IMarkupContainer2_GetVersionNumber         8
#comfunc global IMarkupContainer2_GetMasterElement         9 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。