WebView2 日本語リファレンス
WebView2インターフェース › ICoreWebView2PermissionRequestedEventArgs

ICoreWebView2PermissionRequestedEventArgs

COM
IID973ae2ef-ff18-4894-8fb2-3c758f046810継承元IUnknown自前メソッド開始 vtbl3

メソッド 6

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

vtbl 3 HRESULT get_Uri(LPWSTR* uri)
uriLPWSTR*outアクセス許可を要求しているページのURIを受け取る。呼び出し側は CoTaskMemFree で解放する必要がある。
vtbl 4 HRESULT get_PermissionKind(COREWEBVIEW2_PERMISSION_KIND* permissionKind)
permissionKindCOREWEBVIEW2_PERMISSION_KIND*out要求されたアクセス許可の種類 (カメラ、マイク、位置情報など) を受け取る。
vtbl 5 HRESULT get_IsUserInitiated(BOOL* isUserInitiated)
isUserInitiatedBOOL*outアクセス許可要求がユーザー操作によって開始されたものかどうかを受け取る。
vtbl 6 HRESULT get_State(COREWEBVIEW2_PERMISSION_STATE* state)
stateCOREWEBVIEW2_PERMISSION_STATE*outアクセス許可の現在の状態 (既定、許可、拒否) を受け取る。
vtbl 7 HRESULT put_State(COREWEBVIEW2_PERMISSION_STATE state)
stateCOREWEBVIEW2_PERMISSION_STATEinアクセス許可の状態 (許可、拒否、既定) を指定する。
vtbl 8 HRESULT GetDeferral(ICoreWebView2Deferral** deferral)
deferralICoreWebView2Deferral**outイベント処理を非同期に遅延させるための Deferral オブジェクト (ICoreWebView2Deferral) を受け取る。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。WebView2 のインターフェースは環境/ローダ経由で取得するため #usecom 末尾は "{}"

出力引数:
#define global IID_ICoreWebView2PermissionRequestedEventArgs "{973AE2EF-FF18-4894-8FB2-3C758F046810}"
#usecom global ICoreWebView2PermissionRequestedEventArgs IID_ICoreWebView2PermissionRequestedEventArgs "{}"
#comfunc global ICoreWebView2PermissionRequestedEventArgs_get_Uri              3 var
#comfunc global ICoreWebView2PermissionRequestedEventArgs_get_PermissionKind   4 var
#comfunc global ICoreWebView2PermissionRequestedEventArgs_get_IsUserInitiated  5 var
#comfunc global ICoreWebView2PermissionRequestedEventArgs_get_State            6 var
#comfunc global ICoreWebView2PermissionRequestedEventArgs_put_State            7 int
#comfunc global ICoreWebView2PermissionRequestedEventArgs_GetDeferral          8 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。

関連項目

バージョン違い・関連インターフェース