Win32 API 日本語リファレンス
ホームUI.Accessibility › IUIAutomationClientInfoSource

IUIAutomationClientInfoSource

COM
IIDf4b8a2e1-9c3d-4a7e-8f6b-2d5e4c1a9b8f継承元IUnknown自前メソッド開始 vtbl3

メソッド 3

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

vtbl 3 HRESULT RegisterClientConnectionCallback(IUIAutomationClientConnectionCallback* callback, ULONGLONG* handle)
callbackIUIAutomationClientConnectionCallback*inクライアントの接続・切断を通知するために登録するコールバックを渡す IUIAutomationClientConnectionCallback へのポインタである。
handleULONGLONG*out登録を解除する際に使用する識別ハンドルを受け取る ULONGLONG へのポインタである。
vtbl 4 HRESULT UnregisterClientConnectionCallback(ULONGLONG handle)
handleULONGLONGin登録時に取得したコールバックの識別ハンドルを渡す ULONGLONG である。
vtbl 5 HRESULT GetConnectedClients(SAFEARRAY** clients)
clientsSAFEARRAY**out現在接続中の各クライアント情報を表す配列を受け取る SAFEARRAY へのポインタである。

HSP用 COM定義

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

出力引数:
#define global IID_IUIAutomationClientInfoSource "{F4B8A2E1-9C3D-4A7E-8F6B-2D5E4C1A9B8F}"
#usecom global IUIAutomationClientInfoSource IID_IUIAutomationClientInfoSource "{}"
#comfunc global IUIAutomationClientInfoSource_RegisterClientConnectionCallback    3 sptr,var
#comfunc global IUIAutomationClientInfoSource_UnregisterClientConnectionCallback  4 int64
#comfunc global IUIAutomationClientInfoSource_GetConnectedClients                 5 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。