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

IPersistHistory

COM
IID91a565c1-e38f-11d0-94bf-00a0c9055cbf継承元IPersist自前メソッド開始 vtbl4

メソッド 4

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

vtbl 4 HRESULT LoadHistory(IStream* pStream, IBindCtx* pbc)
pStreamIStream*in履歴情報を読み出すストリームを指定する。
pbcIBindCtx*in読み込み時に使用するバインドコンテキストを指定する。NULL を指定できる。
vtbl 5 HRESULT SaveHistory(IStream* pStream)
pStreamIStream*in履歴情報を書き出すストリームを指定する。
vtbl 6 HRESULT SetPositionCookie(DWORD dwPositioncookie)
dwPositioncookieDWORDin復元する履歴位置を識別するクッキー値を指定する。
vtbl 7 HRESULT GetPositionCookie(DWORD* pdwPositioncookie)
pdwPositioncookieDWORD*out現在の履歴位置を識別するクッキー値を受け取る。

HSP用 COM定義

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

出力引数:
#define global IID_IPersistHistory "{91A565C1-E38F-11D0-94BF-00A0C9055CBF}"
#usecom global IPersistHistory IID_IPersistHistory "{}"
#comfunc global IPersistHistory_LoadHistory        4 sptr,sptr
#comfunc global IPersistHistory_SaveHistory        5 sptr
#comfunc global IPersistHistory_SetPositionCookie  6 int
#comfunc global IPersistHistory_GetPositionCookie  7 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。