Win32 API 日本語リファレンス
ホームDevices.WebServicesOnDevices › IWSDServiceProxy

IWSDServiceProxy

COM
IIDd4c7fb9c-03ab-4175-9d67-094fafebf487継承元IWSDMetadataExchange自前メソッド開始 vtbl4

メソッド 7

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

vtbl 4 HRESULT BeginGetMetadata(IWSDAsyncResult** ppResult)
ppResultIWSDAsyncResult**outメタデータ取得の非同期結果 IWSDAsyncResult を受け取る出力先である。
vtbl 5 HRESULT EndGetMetadata(IWSDAsyncResult* pResult, WSD_METADATA_SECTION_LIST** ppMetadata)
pResultIWSDAsyncResult*inBeginGetMetadata で得た非同期結果を指定する。
ppMetadataWSD_METADATA_SECTION_LIST**out取得したメタデータセクション一覧を受け取る出力先である。
vtbl 6 HRESULT GetServiceMetadata(WSD_SERVICE_METADATA** ppServiceMetadata)
ppServiceMetadataWSD_SERVICE_METADATA**outキャッシュ済みのサービスメタデータを受け取る出力先である。
vtbl 7 HRESULT SubscribeToOperation(WSD_OPERATION* pOperation, IUnknown* pUnknown, WSDXML_ELEMENT* pAny, WSDXML_ELEMENT** ppAny)
pOperationWSD_OPERATION*in購読対象のイベント操作を記述する WSD_OPERATION を指定する。
pUnknownIUnknown*inイベント通知を受け取るコールバックオブジェクトを指定する。
pAnyWSDXML_ELEMENT*in購読要求に追加するカスタム XML 要素を指定する。NULL 可。
ppAnyWSDXML_ELEMENT**outoptional購読応答のカスタム XML 要素を受け取る出力先である。NULL 可。
vtbl 8 HRESULT UnsubscribeToOperation(WSD_OPERATION* pOperation)
pOperationWSD_OPERATION*in購読解除する操作を記述する WSD_OPERATION を指定する。
vtbl 9 HRESULT SetEventingStatusCallback(IWSDEventingStatus* pStatus)
pStatusIWSDEventingStatus*inoptional購読更新や終了の状態通知を受け取る IWSDEventingStatus を指定する。
vtbl 10 HRESULT GetEndpointProxy(IWSDEndpointProxy** ppProxy)
ppProxyIWSDEndpointProxy**outこの操作に対応する IWSDEndpointProxy を受け取る出力先である。

HSP用 COM定義

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

出力引数:
#define global IID_IWSDServiceProxy "{D4C7FB9C-03AB-4175-9D67-094FAFEBF487}"
#usecom global IWSDServiceProxy IID_IWSDServiceProxy "{}"
#comfunc global IWSDServiceProxy_BeginGetMetadata           4 sptr
#comfunc global IWSDServiceProxy_EndGetMetadata             5 sptr,var
#comfunc global IWSDServiceProxy_GetServiceMetadata         6 var
#comfunc global IWSDServiceProxy_SubscribeToOperation       7 var,sptr,var,var
#comfunc global IWSDServiceProxy_UnsubscribeToOperation     8 var
#comfunc global IWSDServiceProxy_SetEventingStatusCallback  9 sptr
#comfunc global IWSDServiceProxy_GetEndpointProxy           10 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。