IGPMAsyncCancel
COMIDispatch (デュアル)comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。公式ドキュメント
IGPMAsyncCancel インターフェイスへのポインターは、クライアントが非同期に呼び出したグループポリシー管理コンソール (GPMC) のメソッドによってクライアントに返されます。
解説(Remarks)
バックアップ、復元、インポート、コピー、レポート生成などの GPMC の操作は、非同期に実行できます。非同期操作でこのインターフェイスを使用する方法の詳細については、 IGPMAsyncProgress インターフェイスの「解説」セクションを参照してください。サーバーは IGPMAsyncProgress::Status メソッドを呼び出して、操作の進行状況をクライアントに通知します。 Status メソッドは、結果として得られるオブジェクト (たとえば GPMGPO オブジェクトや GPMBackup オブジェクト) へのインターフェイスポインターも返します。呼び出し元は、 IGPMAsyncCancel::Cancel メソッドを呼び出すことで操作をキャンセルできます。
メソッド 1
vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。
クライアントは、非同期のグループポリシー管理コンソール (GPMC) 操作をキャンセルするためにこのメソッドを呼び出します。バックアップ、復元、インポート、コピー、レポート生成などの GPMC の操作は、非同期に実行できます。
戻り値
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IGPMAsyncCancel "{DDC67754-BE67-4541-8166-F48166868C9C}"
#usecom global IGPMAsyncCancel IID_IGPMAsyncCancel "{}"
#comfunc global IGPMAsyncCancel_Cancel 7
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。