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

IMarkupServices2

COM
IID3050f682-98b5-11cf-bb82-00aa00bdce0b継承元IMarkupServices自前メソッド開始 vtbl23

メソッド 3

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

vtbl 23 HRESULT ParseGlobalEx(HGLOBAL hglobalHTML, DWORD dwFlags, IMarkupContainer* pContext, IMarkupContainer** ppContainerResult, IMarkupPointer* pPointerStart, IMarkupPointer* pPointerFinish)
hglobalHTMLHGLOBALin解析対象の HTML を格納したグローバルメモリのハンドルを指定する HGLOBAL である。
dwFlagsDWORDin解析動作を制御するフラグを指定する DWORD である。
pContextIMarkupContainer*in解析時のコンテキストとして用いるマークアップコンテナを指定する IMarkupContainer へのポインタである。
ppContainerResultIMarkupContainer**out解析結果を格納したマークアップコンテナを受け取る IMarkupContainer へのポインタである。不要になったら Release する。
pPointerStartIMarkupPointer*in解析結果の開始位置を受け取る IMarkupPointer へのポインタである。
pPointerFinishIMarkupPointer*in解析結果の終了位置を受け取る IMarkupPointer へのポインタである。
vtbl 24 HRESULT ValidateElements(IMarkupPointer* pPointerStart, IMarkupPointer* pPointerFinish, IMarkupPointer* pPointerTarget, IMarkupPointer* pPointerStatus, IHTMLElement** ppElemFailBottom, IHTMLElement** ppElemFailTop)
pPointerStartIMarkupPointer*in検証する範囲の開始位置を示す IMarkupPointer へのポインタである。
pPointerFinishIMarkupPointer*in検証する範囲の終了位置を示す IMarkupPointer へのポインタである。
pPointerTargetIMarkupPointer*in検証結果を移動させる対象位置を示す IMarkupPointer へのポインタである。
pPointerStatusIMarkupPointer*in検証状態を受け取るマークアップポインタを指定する IMarkupPointer へのポインタである。
ppElemFailBottomIHTMLElement**out検証に失敗した範囲の最下位要素を受け取る IHTMLElement へのポインタである。不要になったら Release する。
ppElemFailTopIHTMLElement**out検証に失敗した範囲の最上位要素を受け取る IHTMLElement へのポインタである。不要になったら Release する。
vtbl 25 HRESULT SaveSegmentsToClipboard(ISegmentList* pSegmentList, DWORD dwFlags)
pSegmentListISegmentList*inクリップボードへ保存する対象のセグメントリストを指定する ISegmentList へのポインタである。
dwFlagsDWORDin保存動作を制御するフラグを指定する DWORD である。

HSP用 COM定義

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

#define global IID_IMarkupServices2 "{3050F682-98B5-11CF-BB82-00AA00BDCE0B}"
#usecom global IMarkupServices2 IID_IMarkupServices2 "{}"
#comfunc global IMarkupServices2_ParseGlobalEx            23 sptr,int,sptr,sptr,sptr,sptr
#comfunc global IMarkupServices2_ValidateElements         24 sptr,sptr,sptr,sptr,sptr,sptr
#comfunc global IMarkupServices2_SaveSegmentsToClipboard  25 sptr,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。