Win32 API 日本語リファレンス
ホームMedia.DirectShow.Tv › IESOpenMmiEvent

IESOpenMmiEvent

COM
IIDba4b6526-1a35-4635-8b56-3ec612746a8c継承元IESEvent自前メソッド開始 vtbl8

公式ドキュメント

OpenMMI イベントから情報を取得します。

解説(Remarks)

このインターフェイスのインターフェイス識別子 (IID) を宣言するには、__uuidof 演算子を使用します: __uuidof(IESOpenMmiEvent)

メソッド 4

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

vtbl 8 HRESULT GetDialogNumber(DWORD* pDialogRequest, DWORD* pDialogNumber)

GetDialogNumber メソッドは、送信側デバイスが生成したダイアログ番号を返します。ダイアログ番号は、受信側が OpenMMI イベントを処理している間、そのダイアログを受信側に対して識別するために使用されます。

pDialogRequestDWORD*outOpenMMI 要求を生成した操作 (たとえば IBDA::CheckEntitlementToken の呼び出し) におけるダイアログ要求の値へのポインター。
pDialogNumberDWORD*outダイアログを開くデバイスが生成した、ダイアログを識別する番号を取得します。

戻り値

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

vtbl 9 HRESULT GetDialogType(GUID* guidDialogType)

GetDialogType メソッドは、開こうとしているダイアログのエクスペリエンスの種類を表す GUID を取得します。

guidDialogTypeGUID*outダイアログのエクスペリエンスの種類を識別する GUID を取得します。アプリケーションがそのエクスペリエンスの種類を認識できない場合は、ERROR_ INVALID_TYPE の結果を返してイベントを完了として設定する必要があります。

戻り値

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

vtbl 10 HRESULT GetDialogData(SAFEARRAY** pbData)

OpenMMI イベントに関連付けられたデータを、バイトストリーム形式で取得します。このデータには、開かれるダイアログの内容、またはそのダイアログを格納する Uniform Resource Locator (URL) を指定できます。

pbDataSAFEARRAY**out

イベントデータを格納する SAFEARRAY オブジェクトへのポインター。

      このメモリの解放は呼び出し側の責任です。

戻り値

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

vtbl 11 HRESULT GetDialogStringData(LPWSTR* pbstrBaseUrl, LPWSTR* pbstrData)

OpenMMI イベントに関連付けられたデータを、Unicode 文字列形式で取得します。このデータには、開かれるダイアログの内容、またはそのダイアログを格納する Uniform Resource Locator (URL) を指定できます。

pbstrBaseUrlLPWSTR*outダイアログを格納する URL を受け取る文字列へのポインター。 このメモリの解放は呼び出し側の責任です。
pbstrDataLPWSTR*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_IESOpenMmiEvent "{BA4B6526-1A35-4635-8B56-3EC612746A8C}"
#usecom global IESOpenMmiEvent IID_IESOpenMmiEvent "{}"
#comfunc global IESOpenMmiEvent_GetDialogNumber      8 var,var
#comfunc global IESOpenMmiEvent_GetDialogType        9 var
#comfunc global IESOpenMmiEvent_GetDialogData        10 var
#comfunc global IESOpenMmiEvent_GetDialogStringData  11 var,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。