IAccServerDocMgr
COM公式ドキュメント
ドキュメントをクライアントアプリケーションから利用できるようにするためのメソッドを公開します。
メソッド 3
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
サーバーアプリケーションは、ドキュメントが利用可能になった時点で IAccServerDocMgr::NewDocument メソッドを呼び出します。アダプターはラップされたドキュメントを作成してストアに登録し、クライアントがそのドキュメント内のテキストに関する情報にアクセスできるようにします。
| riid | GUID* | in | ドキュメントの IID。通常は IID_ITextStoreAnchor です。 |
| punk | IUnknown* | in | [in, iid_is(riid)] ドキュメントへのインターフェイスポインター。 |
戻り値
解説(Remarks)
サーバーアプリケーションは、IAccServerDocMgr::NewDocument メソッドを呼び出して、ドキュメントが利用可能であることを Microsoft Active Accessibility ランタイムに通知します。NewDocument を呼び出すと、そのドキュメントが Microsoft Active Accessibility のストアに追加され、クライアントからアクセスできるようになります。
サーバーアプリケーションは、IAccServerDocMgr::RevokeDocument メソッドを呼び出して、ドキュメントが利用できなくなったことを Microsoft Active Accessibility ランタイムに通知します。RevokeDocument を呼び出すと、そのドキュメントはストアから削除され、クライアントからは見えなくなります。
| punk | IUnknown* | in | 取り消すドキュメントへのインターフェイスポインター。 |
戻り値
Text Services Framework を使用するアプリケーションは、ドキュメントがフォーカスを取得または喪失したときに IAccServerDocMgr::OnDocumentFocus を呼び出して、Microsoft Active Accessibility ランタイムに通知します。
| punk | IUnknown* | in | フォーカスを取得するドキュメントへのインターフェイスポインター。 |
戻り値
解説(Remarks)
これは null にすることができ、その場合はどのドキュメントもフォーカスを持っていないことを示します。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IAccServerDocMgr "{AD7C73CF-6DD5-4855-ABC2-B04BAD5B9153}" #usecom global IAccServerDocMgr IID_IAccServerDocMgr "{6089A37E-EB8A-482D-BD6F-F9F46904D16D}" #comfunc global IAccServerDocMgr_NewDocument 3 var,sptr #comfunc global IAccServerDocMgr_RevokeDocument 4 sptr #comfunc global IAccServerDocMgr_OnDocumentFocus 5 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IAccServerDocMgr "{AD7C73CF-6DD5-4855-ABC2-B04BAD5B9153}" #usecom global IAccServerDocMgr IID_IAccServerDocMgr "{6089A37E-EB8A-482D-BD6F-F9F46904D16D}" #comfunc global IAccServerDocMgr_NewDocument 3 sptr,sptr #comfunc global IAccServerDocMgr_RevokeDocument 4 sptr #comfunc global IAccServerDocMgr_OnDocumentFocus 5 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。