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

IDvbServiceDescriptor2

COM
IIDd6c76506-85ab-487c-9b2b-36416511e4a2継承元IDvbServiceDescriptor自前メソッド開始 vtbl11

メソッド 2

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

vtbl 11 HRESULT GetServiceProviderNameW(DVB_STRCONV_MODE convMode, LPWSTR* pbstrName)
convModeDVB_STRCONV_MODEin文字コード変換方法を指定するDVB_STRCONV_MODE値。
pbstrNameLPWSTR*outサービス提供者名をBSTR(Unicode)で受け取る出力ポインタ。要解放。
vtbl 12 HRESULT GetServiceNameW(DVB_STRCONV_MODE convMode, LPWSTR* pbstrName)
convModeDVB_STRCONV_MODEin文字コード変換方法を指定するDVB_STRCONV_MODE値。
pbstrNameLPWSTR*outサービス名をBSTR(Unicode)で受け取る出力ポインタ。要解放。

HSP用 COM定義

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

出力引数:
#define global IID_IDvbServiceDescriptor2 "{D6C76506-85AB-487C-9B2B-36416511E4A2}"
#usecom global IDvbServiceDescriptor2 IID_IDvbServiceDescriptor2 "{}"
#comfunc global IDvbServiceDescriptor2_GetServiceProviderNameW  11 int,var
#comfunc global IDvbServiceDescriptor2_GetServiceNameW          12 int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。