ホーム › Media.MediaPlayer › IWMPContentPartner
IWMPContentPartner
COMメソッド 23
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT SetCallback(IWMPContentPartnerCallback* pCallback)
| pCallback | IWMPContentPartnerCallback* | inoptional | プレーヤーが通知を返すためのIWMPContentPartnerCallbackポインタ。 |
vtbl 4 HRESULT Notify(WMPPartnerNotification type, VARIANT* pContext)
| type | WMPPartnerNotification | in | 通知種別を示すWMPPartnerNotification値。 |
| pContext | VARIANT* | in | 通知に付随するコンテキストを格納したVARIANTへのポインタ。 |
| bstrInfoName | LPWSTR | in | 取得する項目情報の名前。 |
| pContext | VARIANT* | in | 対象項目を特定するコンテキストを格納したVARIANTへのポインタ。 |
| pData | VARIANT* | out | 取得した情報値を受け取るVARIANTへのポインタ。 |
| bstrInfoName | LPWSTR | in | 取得するパートナー情報の名前。 |
| pData | VARIANT* | out | 取得した情報値を受け取るVARIANTへのポインタ。 |
vtbl 7 HRESULT GetCommands(LPWSTR location, VARIANT* pLocationContext, LPWSTR itemLocation, DWORD cItemIDs, DWORD* prgItemIDs, DWORD* pcItemIDs, WMPContextMenuInfo** pprgItems)
| location | LPWSTR | in | コマンド要求元の場所を示す文字列。 |
| pLocationContext | VARIANT* | in | 場所に対応するコンテキストを格納したVARIANTへのポインタ。 |
| itemLocation | LPWSTR | in | 対象項目の場所を示す文字列。 |
| cItemIDs | DWORD | in | 対象項目IDの個数。 |
| prgItemIDs | DWORD* | in | 対象項目IDの配列へのポインタ。 |
| pcItemIDs | DWORD* | out | 返すコマンドが対象とする項目ID数を受け取る出力先。 |
| pprgItems | WMPContextMenuInfo** | out | コンテキストメニュー項目(WMPContextMenuInfo配列)を受け取る出力先。 |
vtbl 8 HRESULT InvokeCommand(DWORD dwCommandID, LPWSTR location, VARIANT* pLocationContext, LPWSTR itemLocation, DWORD cItemIDs, DWORD* rgItemIDs)
| dwCommandID | DWORD | in | 実行するコマンドのID。 |
| location | LPWSTR | in | コマンド実行元の場所を示す文字列。 |
| pLocationContext | VARIANT* | in | 場所に対応するコンテキストを格納したVARIANTへのポインタ。 |
| itemLocation | LPWSTR | in | 対象項目の場所を示す文字列。 |
| cItemIDs | DWORD | in | 対象項目IDの個数。 |
| rgItemIDs | DWORD* | in | 対象項目IDの配列へのポインタ。 |
vtbl 9 HRESULT CanBuySilent(IWMPContentContainerList* pInfo, LPWSTR* pbstrTotalPrice, VARIANT_BOOL* pSilentOK)
| pInfo | IWMPContentContainerList* | inoptional | 購入対象を示すIWMPContentContainerListポインタ。 |
| pbstrTotalPrice | LPWSTR* | out | 合計価格の表示文字列を受け取る出力先。 |
| pSilentOK | VARIANT_BOOL* | out | 確認なしで購入可能かをVARIANT_BOOLで受け取る出力先。 |
vtbl 10 HRESULT Buy(IWMPContentContainerList* pInfo, DWORD cookie)
| pInfo | IWMPContentContainerList* | inoptional | 購入対象を示すIWMPContentContainerListポインタ。 |
| cookie | DWORD | in | 購入要求を識別するクッキー値。 |
vtbl 11 HRESULT GetStreamingURL(WMPStreamingType st, VARIANT* pStreamContext, LPWSTR* pbstrURL)
| st | WMPStreamingType | in | ストリーミング種別を示すWMPStreamingType値。 |
| pStreamContext | VARIANT* | in | ストリーミング対象を特定するコンテキストを格納したVARIANTへのポインタ。 |
| pbstrURL | LPWSTR* | out | ストリーミング用URLを受け取る出力先。 |
vtbl 12 HRESULT Download(IWMPContentContainerList* pInfo, DWORD cookie)
| pInfo | IWMPContentContainerList* | inoptional | ダウンロード対象を示すIWMPContentContainerListポインタ。 |
| cookie | DWORD | in | ダウンロード要求を識別するクッキー値。 |
| hrResult | HRESULT | in | トラックダウンロードの結果を示すHRESULT。 |
| contentID | DWORD | in | 対象コンテンツのID。 |
| downloadTrackParam | LPWSTR | in | ダウンロードに付随するパラメータ文字列。 |
vtbl 14 HRESULT RefreshLicense(DWORD dwCookie, VARIANT_BOOL fLocal, LPWSTR bstrURL, WMPStreamingType type, DWORD contentID, LPWSTR bstrRefreshReason, VARIANT* pReasonContext)
| dwCookie | DWORD | in | ライセンス更新要求を識別するクッキー値。 |
| fLocal | VARIANT_BOOL | in | ローカル更新か否かを示すVARIANT_BOOL。 |
| bstrURL | LPWSTR | inoptional | ライセンス取得元のURL。 |
| type | WMPStreamingType | in | ストリーミング種別を示すWMPStreamingType値。 |
| contentID | DWORD | in | 対象コンテンツのID。 |
| bstrRefreshReason | LPWSTR | in | ライセンス更新理由を示す文字列。 |
| pReasonContext | VARIANT* | in | 更新理由に付随するコンテキストを格納したVARIANTへのポインタ。 |
vtbl 15 HRESULT GetCatalogURL(DWORD dwCatalogVersion, DWORD dwCatalogSchemaVersion, DWORD catalogLCID, DWORD* pdwNewCatalogVersion, LPWSTR* pbstrCatalogURL, VARIANT* pExpirationDate)
| dwCatalogVersion | DWORD | in | 現在保持しているカタログバージョン。 |
| dwCatalogSchemaVersion | DWORD | in | 現在保持しているカタログスキーマバージョン。 |
| catalogLCID | DWORD | in | 対象カタログのロケールID(LCID)。 |
| pdwNewCatalogVersion | DWORD* | out | 提供される新しいカタログバージョンを受け取る出力先。 |
| pbstrCatalogURL | LPWSTR* | out | 取得すべきカタログのURLを受け取る出力先。 |
| pExpirationDate | VARIANT* | out | カタログの有効期限を受け取るVARIANTへのポインタ。 |
vtbl 16 HRESULT GetTemplate(WMPTaskType task, LPWSTR location, VARIANT* pContext, LPWSTR clickLocation, VARIANT* pClickContext, LPWSTR bstrFilter, LPWSTR bstrViewParams, LPWSTR* pbstrTemplateURL, WMPTemplateSize* pTemplateSize)
| task | WMPTaskType | in | 対象タスク種別を示すWMPTaskType値。 |
| location | LPWSTR | in | テンプレート要求元の場所を示す文字列。 |
| pContext | VARIANT* | in | 場所に対応するコンテキストを格納したVARIANTへのポインタ。 |
| clickLocation | LPWSTR | in | クリックされた場所を示す文字列。 |
| pClickContext | VARIANT* | in | クリック位置に対応するコンテキストを格納したVARIANTへのポインタ。 |
| bstrFilter | LPWSTR | in | テンプレートに適用するフィルタ文字列。 |
| bstrViewParams | LPWSTR | in | ビューに渡すパラメータ文字列。 |
| pbstrTemplateURL | LPWSTR* | out | 使用するテンプレートのURLを受け取る出力先。 |
| pTemplateSize | WMPTemplateSize* | out | テンプレートの表示サイズを示すWMPTemplateSize値を受け取る出力先。 |
| bstrDeviceName | LPWSTR | in | 更新対象デバイスの名前。 |
vtbl 18 HRESULT GetListContents(LPWSTR location, VARIANT* pContext, LPWSTR bstrListType, LPWSTR bstrParams, DWORD dwListCookie)
| location | LPWSTR | in | リスト要求元の場所を示す文字列。 |
| pContext | VARIANT* | in | 場所に対応するコンテキストを格納したVARIANTへのポインタ。 |
| bstrListType | LPWSTR | in | 取得するリストの種別。 |
| bstrParams | LPWSTR | in | リスト取得に渡すパラメータ文字列。 |
| dwListCookie | DWORD | in | リスト要求を識別するクッキー値。 |
vtbl 19 HRESULT Login(BLOB userInfo, BLOB pwdInfo, VARIANT_BOOL fUsedCachedCreds, VARIANT_BOOL fOkToCache)
| userInfo | BLOB | in | ユーザー名を格納したBLOB。 |
| pwdInfo | BLOB | in | パスワードを格納したBLOB。 |
| fUsedCachedCreds | VARIANT_BOOL | in | キャッシュ済み資格情報を使用したか否かを示すVARIANT_BOOL。 |
| fOkToCache | VARIANT_BOOL | in | 資格情報のキャッシュを許可するか否かを示すVARIANT_BOOL。 |
| userInfo | BLOB | in | 認証に用いるユーザー名を格納したBLOB。 |
| pwdInfo | BLOB | in | 認証に用いるパスワードを格納したBLOB。 |
vtbl 21 HRESULT Logout()
| bstrMsg | LPWSTR | in | 送信するメッセージ名。 |
| bstrParam | LPWSTR | in | 送信するメッセージのパラメータ文字列。 |
vtbl 23 HRESULT StationEvent(LPWSTR bstrStationEventType, DWORD StationId, DWORD PlaylistIndex, DWORD TrackID, LPWSTR TrackData, DWORD dwSecondsPlayed)
| bstrStationEventType | LPWSTR | in | ステーションイベントの種別を示す文字列。 |
| StationId | DWORD | in | 対象ステーションのID。 |
| PlaylistIndex | DWORD | in | プレイリスト内の位置を示すインデックス。 |
| TrackID | DWORD | in | 対象トラックのID。 |
| TrackData | LPWSTR | in | トラックに関する付加データ文字列。 |
| dwSecondsPlayed | DWORD | in | 再生済み秒数。 |
vtbl 24 HRESULT CompareContainerListPrices(IWMPContentContainerList* pListBase, IWMPContentContainerList* pListCompare, INT* pResult)
| pListBase | IWMPContentContainerList* | inoptional | 基準となるコンテナリストのIWMPContentContainerListポインタ。 |
| pListCompare | IWMPContentContainerList* | inoptional | 比較対象のコンテナリストのIWMPContentContainerListポインタ。 |
| pResult | INT* | out | 価格比較結果(符号で大小)を受け取る出力先。 |
| bstrPermission | LPWSTR | in | 検証する権限名。 |
| pContext | VARIANT* | in | 権限検証に付随するコンテキストを格納したVARIANTへのポインタ。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IWMPContentPartner "{55455073-41B5-4E75-87B8-F13BDB291D08}" #usecom global IWMPContentPartner IID_IWMPContentPartner "{}" #comfunc global IWMPContentPartner_SetCallback 3 sptr #comfunc global IWMPContentPartner_Notify 4 int,var #comfunc global IWMPContentPartner_GetItemInfo 5 wstr,var,var #comfunc global IWMPContentPartner_GetContentPartnerInfo 6 wstr,var #comfunc global IWMPContentPartner_GetCommands 7 wstr,var,wstr,int,var,var,var #comfunc global IWMPContentPartner_InvokeCommand 8 int,wstr,var,wstr,int,var #comfunc global IWMPContentPartner_CanBuySilent 9 sptr,var,var #comfunc global IWMPContentPartner_Buy 10 sptr,int #comfunc global IWMPContentPartner_GetStreamingURL 11 int,var,var #comfunc global IWMPContentPartner_Download 12 sptr,int #comfunc global IWMPContentPartner_DownloadTrackComplete 13 int,int,wstr #comfunc global IWMPContentPartner_RefreshLicense 14 int,int,wstr,int,int,wstr,var #comfunc global IWMPContentPartner_GetCatalogURL 15 int,int,int,var,var,var #comfunc global IWMPContentPartner_GetTemplate 16 int,wstr,var,wstr,var,wstr,wstr,var,var #comfunc global IWMPContentPartner_UpdateDevice 17 wstr #comfunc global IWMPContentPartner_GetListContents 18 wstr,var,wstr,wstr,int #comfunc global IWMPContentPartner_Login 19 int,int,int,int #comfunc global IWMPContentPartner_Authenticate 20 int,int #comfunc global IWMPContentPartner_Logout 21 #comfunc global IWMPContentPartner_SendMessage 22 wstr,wstr #comfunc global IWMPContentPartner_StationEvent 23 wstr,int,int,int,wstr,int #comfunc global IWMPContentPartner_CompareContainerListPrices 24 sptr,sptr,var #comfunc global IWMPContentPartner_VerifyPermission 25 wstr,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IWMPContentPartner "{55455073-41B5-4E75-87B8-F13BDB291D08}" #usecom global IWMPContentPartner IID_IWMPContentPartner "{}" #comfunc global IWMPContentPartner_SetCallback 3 sptr #comfunc global IWMPContentPartner_Notify 4 int,sptr #comfunc global IWMPContentPartner_GetItemInfo 5 wstr,sptr,sptr #comfunc global IWMPContentPartner_GetContentPartnerInfo 6 wstr,sptr #comfunc global IWMPContentPartner_GetCommands 7 wstr,sptr,wstr,int,sptr,sptr,sptr #comfunc global IWMPContentPartner_InvokeCommand 8 int,wstr,sptr,wstr,int,sptr #comfunc global IWMPContentPartner_CanBuySilent 9 sptr,sptr,sptr #comfunc global IWMPContentPartner_Buy 10 sptr,int #comfunc global IWMPContentPartner_GetStreamingURL 11 int,sptr,sptr #comfunc global IWMPContentPartner_Download 12 sptr,int #comfunc global IWMPContentPartner_DownloadTrackComplete 13 int,int,wstr #comfunc global IWMPContentPartner_RefreshLicense 14 int,int,wstr,int,int,wstr,sptr #comfunc global IWMPContentPartner_GetCatalogURL 15 int,int,int,sptr,sptr,sptr #comfunc global IWMPContentPartner_GetTemplate 16 int,wstr,sptr,wstr,sptr,wstr,wstr,sptr,sptr #comfunc global IWMPContentPartner_UpdateDevice 17 wstr #comfunc global IWMPContentPartner_GetListContents 18 wstr,sptr,wstr,wstr,int #comfunc global IWMPContentPartner_Login 19 int,int,int,int #comfunc global IWMPContentPartner_Authenticate 20 int,int #comfunc global IWMPContentPartner_Logout 21 #comfunc global IWMPContentPartner_SendMessage 22 wstr,wstr #comfunc global IWMPContentPartner_StationEvent 23 wstr,int,int,int,wstr,int #comfunc global IWMPContentPartner_CompareContainerListPrices 24 sptr,sptr,sptr #comfunc global IWMPContentPartner_VerifyPermission 25 wstr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。