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

IESIsdbCasResponseEvent

COM
IID2017cb03-dc0f-4c24-83ca-36307b2cd19f継承元IESEvent自前メソッド開始 vtbl8

公式ドキュメント

Protected Broadcast Driver Architecture (PBDA) の IsdbCasResponse イベントから情報を取得するメソッドを実装します。

解説(Remarks)

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

メソッド 4

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

vtbl 8 HRESULT GetRequestId(DWORD* pRequestId)

IsdbCasResponse イベントで返された要求識別子を取得します。この要求識別子は、PBDA メディアシンクデバイス (MSD) が発行した要求を識別します。

pRequestIdDWORD*out要求識別子を受け取ります。

戻り値

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

vtbl 9 HRESULT GetStatus(DWORD* pStatus)

IsdbCasResponse イベントで返された応答ステータスを取得します。

pStatusDWORD*out

ステータスコードを受け取ります。次のいずれかの値を取ります。

意味
0x9000
成功。
0x6400
メモリエラー。
0x6581
書き込みエラー。
0x6700
インターコネクトコマンドの長さ。
0x6800
サポートされていないクラス。
0x6A86
不正なパラメーター。
0x6D00
サポートされていない命令。
0x6E00
サポートされていないクラス。

戻り値

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

vtbl 10 HRESULT GetDataLength(DWORD* pRequestLength)

IsdbCasResponse イベントで返された応答データの長さを取得します。

pRequestLengthDWORD*out応答データの長さをバイト単位で受け取ります。

戻り値

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

vtbl 11 HRESULT GetResponseData(SAFEARRAY** pbData)

IsdbCasResponse イベントで返された応答データを取得します。

pbDataSAFEARRAY**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_IESIsdbCasResponseEvent "{2017CB03-DC0F-4C24-83CA-36307B2CD19F}"
#usecom global IESIsdbCasResponseEvent IID_IESIsdbCasResponseEvent "{}"
#comfunc global IESIsdbCasResponseEvent_GetRequestId     8 var
#comfunc global IESIsdbCasResponseEvent_GetStatus        9 var
#comfunc global IESIsdbCasResponseEvent_GetDataLength    10 var
#comfunc global IESIsdbCasResponseEvent_GetResponseData  11 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。