Win32 API 日本語リファレンス
ホームSystem.Search › ISearchProtocol

ISearchProtocol

COM
IIDc73106ba-ac80-11d1-8df3-00c04fb6ef4f継承元IUnknown自前メソッド開始 vtbl3

メソッド 4

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

vtbl 3 HRESULT Init(TIMEOUT_INFO* pTimeoutInfo, IProtocolHandlerSite* pProtocolHandlerSite, PROXY_INFO* pProxyInfo)
pTimeoutInfoTIMEOUT_INFO*in処理に適用するタイムアウト設定を記述する TIMEOUT_INFO へのポインタである。
pProtocolHandlerSiteIProtocolHandlerSite*inプロトコルハンドラーのサイトサービスを提供する IProtocolHandlerSite へのポインタである。
pProxyInfoPROXY_INFO*in接続に使用するプロキシ設定を記述する PROXY_INFO へのポインタである。
vtbl 4 HRESULT CreateAccessor(LPWSTR pcwszURL, AUTHENTICATION_INFO* pAuthenticationInfo, INCREMENTAL_ACCESS_INFO* pIncrementalAccessInfo, ITEM_INFO* pItemInfo, IUrlAccessor** ppAccessor)
pcwszURLLPWSTRinアクセサーを作成する対象の URL 文字列を指定する。
pAuthenticationInfoAUTHENTICATION_INFO*inアクセスに使用する認証情報を記述する AUTHENTICATION_INFO へのポインタである。
pIncrementalAccessInfoINCREMENTAL_ACCESS_INFO*in増分アクセスに使用する情報を記述する INCREMENTAL_ACCESS_INFO へのポインタである。
pItemInfoITEM_INFO*in対象アイテムに関する情報を記述する ITEM_INFO へのポインタである。
ppAccessorIUrlAccessor**out作成された IUrlAccessor を受け取る出力ポインタである。
vtbl 5 HRESULT CloseAccessor(IUrlAccessor* pAccessor)
pAccessorIUrlAccessor*in閉じる対象の IUrlAccessor へのポインタである。
vtbl 6 HRESULT ShutDown()

HSP用 COM定義

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

出力引数:
#define global IID_ISearchProtocol "{C73106BA-AC80-11D1-8DF3-00C04FB6EF4F}"
#usecom global ISearchProtocol IID_ISearchProtocol "{}"
#comfunc global ISearchProtocol_Init            3 var,sptr,var
#comfunc global ISearchProtocol_CreateAccessor  4 wstr,var,var,var,sptr
#comfunc global ISearchProtocol_CloseAccessor   5 sptr
#comfunc global ISearchProtocol_ShutDown        6
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。