Win32 API 日本語リファレンス
ホームSecurity.EnterpriseData › IProtectionPolicyManagerInterop

IProtectionPolicyManagerInterop

COM
IID4652651d-c1fe-4ba1-9f0a-c0f56596f721継承元IInspectable自前メソッド開始 vtbl6

公式ドキュメント

保護されたコンテンツに対するエンタープライズ保護ポリシーを管理します。(IProtectionPolicyManagerInterop)

メソッド 2

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

vtbl 6 HRESULT RequestAccessForWindowAsync(HWND appWindow, HSTRING sourceIdentity, HSTRING targetIdentity, GUID* riid, void** asyncOperation)

ID に対して、エンタープライズ保護されたコンテンツへのアクセスを要求します。(IProtectionPolicyManagerInterop.RequestAccessForWindowAsync)

appWindowHWNDin現在のウィンドウのハンドル。
sourceIdentityHSTRINGinコンテンツが保護されている対象のエンタープライズ ID。管理対象のメール アドレスまたはドメインです。
targetIdentityHSTRINGinコンテンツの開示先となるエンタープライズ ID。メール アドレスまたはドメインです。
riidGUID*inasyncOperation で返すインターフェイス ポインターの型を示すインターフェイスの識別子への参照。
asyncOperationvoid**out要求の結果である ProtectionPolicyEvaluationResult 列挙体の値を持つ IAsyncOperation<ProtectionPolicyEvaluationResult>

戻り値

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラー コードを返します。

vtbl 7 HRESULT GetForWindow(HWND appWindow, GUID* riid, void** result)

現在のアプリ ウィンドウに関連付けられた保護ポリシー マネージャー オブジェクトを返します。

appWindowHWNDin現在のウィンドウのハンドル。
riidGUID*inresult で返すインターフェイス ポインターの型を示すインターフェイスの識別子への参照。
resultvoid**out現在のウィンドウに対する保護ポリシー マネージャー オブジェクト。

戻り値

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラー コードを返します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

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

出力引数:
#define global IID_IProtectionPolicyManagerInterop "{4652651D-C1FE-4BA1-9F0A-C0F56596F721}"
#usecom global IProtectionPolicyManagerInterop IID_IProtectionPolicyManagerInterop "{}"
#comfunc global IProtectionPolicyManagerInterop_RequestAccessForWindowAsync  6 sptr,sptr,sptr,var,sptr
#comfunc global IProtectionPolicyManagerInterop_GetForWindow                 7 sptr,var,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。