2014-01-25 17:21:18 +00:00
|
|
|
/*
|
|
|
|
* Copyright 2014 Jacek Caban for CodeWeavers
|
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
|
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
|
|
|
*/
|
|
|
|
|
|
|
|
import "oaidl.idl";
|
|
|
|
import "ocidl.idl";
|
|
|
|
|
|
|
|
#ifndef __WIDL__
|
|
|
|
#define threading(model)
|
|
|
|
#define progid(str)
|
|
|
|
#define vi_progid(str)
|
|
|
|
#endif
|
|
|
|
|
|
|
|
[
|
|
|
|
helpstring("Windows Media Player"),
|
|
|
|
version(1.0),
|
|
|
|
uuid(6bf52a50-394a-11d3-b153-00c04f79Faa6)
|
|
|
|
]
|
|
|
|
library WMPLib {
|
2014-01-30 13:38:15 +00:00
|
|
|
importlib("stdole2.tlb");
|
|
|
|
|
2014-02-17 16:36:28 +00:00
|
|
|
typedef enum {
|
|
|
|
wmposUndefined,
|
|
|
|
wmposPlaylistChanging,
|
|
|
|
wmposPlaylistLocating,
|
|
|
|
wmposPlaylistConnecting,
|
|
|
|
wmposPlaylistLoading,
|
|
|
|
wmposPlaylistOpening,
|
|
|
|
wmposPlaylistOpenNoMedia,
|
|
|
|
wmposPlaylistChanged,
|
|
|
|
wmposMediaChanging,
|
|
|
|
wmposMediaLocating,
|
|
|
|
wmposMediaConnecting,
|
|
|
|
wmposMediaLoading,
|
|
|
|
wmposMediaOpening,
|
|
|
|
wmposMediaOpen,
|
|
|
|
wmposBeginCodecAcquisition,
|
|
|
|
wmposEndCodecAcquisition,
|
|
|
|
wmposBeginLicenseAcquisition,
|
|
|
|
wmposEndLicenseAcquisition,
|
|
|
|
wmposBeginIndividualization,
|
|
|
|
wmposEndIndividualization,
|
|
|
|
wmposMediaWaiting,
|
|
|
|
wmposOpeningUnknownURL
|
|
|
|
} WMPOpenState;
|
|
|
|
|
|
|
|
typedef enum {
|
|
|
|
wmppsUndefined,
|
|
|
|
wmppsStopped,
|
|
|
|
wmppsPaused,
|
|
|
|
wmppsPlaying,
|
|
|
|
wmppsScanForward,
|
|
|
|
wmppsScanReverse,
|
|
|
|
wmppsBuffering,
|
|
|
|
wmppsWaiting,
|
|
|
|
wmppsMediaEnded,
|
|
|
|
wmppsTransitioning,
|
|
|
|
wmppsReady,
|
|
|
|
wmppsReconnecting,
|
|
|
|
wmppsLast
|
|
|
|
} WMPPlayState;
|
|
|
|
|
|
|
|
interface IWMPMedia;
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(d5f0f4f1-130c-11d3-b14e-00c04f79Faa6),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPPlaylist : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x00c9), propget]
|
|
|
|
HRESULT count([out, retval] long *plCount);
|
|
|
|
|
|
|
|
[id(0x00ca), propget]
|
|
|
|
HRESULT name([out, retval] BSTR *pbstrName);
|
|
|
|
[id(0x00ca), propput]
|
|
|
|
HRESULT name([in] BSTR pbstrName);
|
|
|
|
|
|
|
|
[id(0x00d2), propget]
|
|
|
|
HRESULT attributeCount([out, retval] long *plCount);
|
|
|
|
|
|
|
|
[id(0x00d3), propget]
|
|
|
|
HRESULT attributeName(
|
|
|
|
[in] long lIndex,
|
|
|
|
[out, retval] BSTR *pbstrAttributeName);
|
|
|
|
|
|
|
|
[id(0x00d4), propget]
|
|
|
|
HRESULT Item(
|
|
|
|
[in] long lIndex,
|
|
|
|
[out, retval] IWMPMedia** ppIWMPMedia);
|
|
|
|
|
|
|
|
[id(0x00cb)]
|
|
|
|
HRESULT getItemInfo(
|
|
|
|
[in] BSTR bstrName,
|
|
|
|
[out, retval] BSTR *pbstrVal);
|
|
|
|
|
|
|
|
[id(0x00cc)]
|
|
|
|
HRESULT setItemInfo(
|
|
|
|
[in] BSTR bstrName,
|
|
|
|
[in] BSTR bstrValue);
|
|
|
|
|
|
|
|
[id(0x00d5), propget]
|
|
|
|
HRESULT isIdentical(
|
|
|
|
[in] IWMPPlaylist *pIWMPPlaylist,
|
|
|
|
[out, retval] VARIANT_BOOL *pvbool);
|
|
|
|
|
|
|
|
[id(0x00cd)]
|
|
|
|
HRESULT clear();
|
|
|
|
|
|
|
|
[id(0x00ce)]
|
|
|
|
HRESULT insertItem(
|
|
|
|
[in] long lIndex,
|
|
|
|
[in] IWMPMedia *pIWMPMedia);
|
|
|
|
|
|
|
|
[id(0x00cf)]
|
|
|
|
HRESULT appendItem([in] IWMPMedia *pIWMPMedia);
|
|
|
|
|
|
|
|
[id(0x00d0)]
|
|
|
|
HRESULT removeItem([in] IWMPMedia *pIWMPMedia);
|
|
|
|
|
|
|
|
[id(0x00d1)]
|
|
|
|
HRESULT moveItem(
|
|
|
|
long lIndexOld,
|
|
|
|
long lIndexNew);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(94d55e95-3Fac-11d3-b155-00c04f79faa6),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPMedia : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x02fb), propget]
|
|
|
|
HRESULT isIdentical(
|
|
|
|
[in] IWMPMedia *pIWMPMedia,
|
|
|
|
[out, retval] VARIANT_BOOL *pvbool);
|
|
|
|
|
|
|
|
[id(0x02ef), propget]
|
|
|
|
HRESULT sourceURL([out, retval] BSTR *pbstrSourceURL);
|
|
|
|
|
|
|
|
[id(0x02fc), propget]
|
|
|
|
HRESULT name([out, retval] BSTR *pbstrName);
|
|
|
|
[id(0x02fc), propput]
|
|
|
|
HRESULT name([in] BSTR pbstrName);
|
|
|
|
|
|
|
|
[id(0x02f0), propget]
|
|
|
|
HRESULT imageSourceWidth([out, retval] long *pWidth);
|
|
|
|
|
|
|
|
[id(0x02f1), propget]
|
|
|
|
HRESULT imageSourceHeight([out, retval] long *pHeight);
|
|
|
|
|
|
|
|
[id(0x02f2), propget]
|
|
|
|
HRESULT markerCount([out, retval] long *pMarkerCount);
|
|
|
|
|
|
|
|
[id(0x02f3)]
|
|
|
|
HRESULT getMarkerTime(
|
|
|
|
[in] long MarkerNum,
|
|
|
|
[out, retval] double *pMarkerTime);
|
|
|
|
|
|
|
|
[id(0x02f4)]
|
|
|
|
HRESULT getMarkerName(
|
|
|
|
[in] long MarkerNum,
|
|
|
|
[out, retval] BSTR *pbstrMarkerName);
|
|
|
|
|
|
|
|
[id(0x02f5), propget]
|
|
|
|
HRESULT duration([out, retval] double *pDuration);
|
|
|
|
|
|
|
|
[id(0x02f6), propget]
|
|
|
|
HRESULT durationString([out, retval] BSTR *pbstrDuration);
|
|
|
|
|
|
|
|
[id(0x02f7), propget]
|
|
|
|
HRESULT attributeCount([out, retval] long *plCount);
|
|
|
|
|
|
|
|
[id(0x02f8)]
|
|
|
|
HRESULT getAttributeName(
|
|
|
|
[in] long lIndex,
|
|
|
|
[out, retval] BSTR *pbstrItemName);
|
|
|
|
|
|
|
|
[id(0x02f9)]
|
|
|
|
HRESULT getItemInfo(
|
|
|
|
[in] BSTR bstrItemName,
|
|
|
|
[out, retval] BSTR *pbstrVal);
|
|
|
|
|
|
|
|
[id(0x02fa)]
|
|
|
|
HRESULT setItemInfo(
|
|
|
|
[in] BSTR bstrItemName,
|
|
|
|
[in] BSTR bstrVal);
|
|
|
|
|
|
|
|
[id(0x02fd)]
|
|
|
|
HRESULT getItemInfoByAtom(
|
|
|
|
[in] long lAtom,
|
|
|
|
[out, retval] BSTR *pbstrVal);
|
|
|
|
|
|
|
|
[id(0x02fe)]
|
|
|
|
HRESULT isMemberOf(
|
|
|
|
[in] IWMPPlaylist *pPlaylist,
|
|
|
|
[out, retval] VARIANT_BOOL *pvarfIsMemberOf);
|
|
|
|
|
|
|
|
[id(0x02ff)]
|
|
|
|
HRESULT isReadOnlyItem(
|
|
|
|
[in] BSTR bstrItemName,
|
|
|
|
[out, retval] VARIANT_BOOL *pvarfIsReadOnly);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(74c09E02-f828-11d2-a74b-00a0c905f36e),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPControls : IDispatch {
|
|
|
|
[id(0x003e), propget]
|
|
|
|
HRESULT isAvailable(
|
|
|
|
[in] BSTR bstrItem,
|
|
|
|
[out, retval] VARIANT_BOOL *pIsAvailable);
|
|
|
|
|
|
|
|
[id(0x0033)]
|
|
|
|
HRESULT play();
|
|
|
|
|
|
|
|
[id(0x0034)]
|
|
|
|
HRESULT stop();
|
|
|
|
|
|
|
|
[id(0x0035)]
|
|
|
|
HRESULT pause();
|
|
|
|
|
|
|
|
[id(0x0036)]
|
|
|
|
HRESULT fastForward();
|
|
|
|
|
|
|
|
[id(0x0037)]
|
|
|
|
HRESULT fastReverse();
|
|
|
|
|
|
|
|
[id(0x0038), propget]
|
|
|
|
HRESULT currentPosition([out, retval] double *pdCurrentPosition);
|
|
|
|
[id(0x0038), propput]
|
|
|
|
HRESULT currentPosition([in] double pdCurrentPosition);
|
|
|
|
|
|
|
|
[id(0x0039), propget]
|
|
|
|
HRESULT currentPositionString([out, retval] BSTR *pbstrCurrentPosition);
|
|
|
|
|
|
|
|
[id(0x003a)]
|
|
|
|
HRESULT next();
|
|
|
|
|
|
|
|
[id(0x003b)]
|
|
|
|
HRESULT previous();
|
|
|
|
|
|
|
|
[id(0x003c)]
|
|
|
|
HRESULT currentItem([out, retval] IWMPMedia **ppIWMPMedia);
|
|
|
|
|
|
|
|
[id(0x003c), propput]
|
|
|
|
HRESULT currentItem([in] IWMPMedia *ppIWMPMedia);
|
|
|
|
|
|
|
|
[id(0x003d), propget]
|
|
|
|
HRESULT currentMarker([out, retval] long *plMarker);
|
|
|
|
|
|
|
|
[id(0x003d), propput]
|
|
|
|
HRESULT currentMarker([in] long plMarker);
|
|
|
|
|
|
|
|
[id(0x003f)]
|
|
|
|
HRESULT playItem([in] IWMPMedia *pIWMPMedia);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(9104d1ab-80c9-4fed-abf0-2e6417a6df14),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPSettings : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x0071), propget]
|
|
|
|
HRESULT isAvailable(
|
|
|
|
[in] BSTR bstrItem,
|
|
|
|
[out, retval] VARIANT_BOOL *pIsAvailable);
|
|
|
|
|
|
|
|
[id(0x0065), propget]
|
|
|
|
HRESULT autoStart([out, retval] VARIANT_BOOL *pfAutoStart);
|
|
|
|
[id(0x0065), propput]
|
|
|
|
HRESULT autoStart([in] VARIANT_BOOL pfAutoStart);
|
|
|
|
|
|
|
|
[id(0x006c), propget]
|
|
|
|
HRESULT baseURL([out, retval] BSTR *pbstrBaseURL);
|
|
|
|
[id(0x006c), propput]
|
|
|
|
HRESULT baseURL([in] BSTR pbstrBaseURL);
|
|
|
|
|
|
|
|
[id(0x006d), propget]
|
|
|
|
HRESULT defaultFrame([out, retval] BSTR *pbstrDefaultFrame);
|
|
|
|
[id(0x006d), propput]
|
|
|
|
HRESULT defaultFrame([in] BSTR pbstrDefaultFrame);
|
|
|
|
|
|
|
|
[id(0x0067), propget]
|
|
|
|
HRESULT invokeURLs([out, retval] VARIANT_BOOL *pfInvokeURLs);
|
|
|
|
[id(0x0067), propput]
|
|
|
|
HRESULT invokeURLs([in] VARIANT_BOOL pfInvokeURLs);
|
|
|
|
|
|
|
|
[id(0x0068), propget]
|
|
|
|
HRESULT mute([out, retval] VARIANT_BOOL *pfMute);
|
|
|
|
[id(0x0068), propput]
|
|
|
|
HRESULT mute([in] VARIANT_BOOL pfMute);
|
|
|
|
|
|
|
|
[id(0x0069), propget]
|
|
|
|
HRESULT playCount([out, retval] long *plCount);
|
|
|
|
[id(0x0069), propput]
|
|
|
|
HRESULT playCount([in] long plCount);
|
|
|
|
|
|
|
|
[id(0x006a), propget]
|
|
|
|
HRESULT rate([out, retval] double *pdRate);
|
|
|
|
[id(0x006a), propput]
|
|
|
|
HRESULT rate([in] double pdRate);
|
|
|
|
|
|
|
|
[id(0x0066), propget]
|
|
|
|
HRESULT balance([out, retval] long *plBalance);
|
|
|
|
[id(0x0066), propput]
|
|
|
|
HRESULT balance([in] long plBalance);
|
|
|
|
|
|
|
|
[id(0x006b), propget]
|
|
|
|
HRESULT volume([out, retval] long *plVolume);
|
|
|
|
[id(0x006b), propput]
|
|
|
|
HRESULT volume([in] long plVolume);
|
|
|
|
|
|
|
|
[id(0x006e)]
|
|
|
|
HRESULT getMode(
|
|
|
|
[in] BSTR bstrMode,
|
|
|
|
[out, retval] VARIANT_BOOL *pvarfMode);
|
|
|
|
|
|
|
|
[id(0x006f)]
|
|
|
|
HRESULT setMode(
|
|
|
|
[in] BSTR bstrMode,
|
|
|
|
[in] VARIANT_BOOL varfMode);
|
|
|
|
|
|
|
|
[id(0x0070), propget]
|
|
|
|
HRESULT enableErrorDialogs([out, retval] VARIANT_BOOL *pfEnableErrorDialogs);
|
|
|
|
|
|
|
|
[id(0x0070), propput]
|
|
|
|
HRESULT enableErrorDialogs([in] VARIANT_BOOL pfEnableErrorDialogs);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(4a976298-8c0d-11d3-b389-00c04f68574b),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPStringCollection : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x0191), propget]
|
|
|
|
HRESULT count([out, retval] long *plCount);
|
|
|
|
|
|
|
|
[id(0x0192)]
|
|
|
|
HRESULT Item(
|
|
|
|
[in] long lIndex,
|
|
|
|
[out, retval] BSTR *pbstrString);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(8363bc22-b4b4-4b19-989d-1cd765749dd1),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPMediaCollection : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x01c4)]
|
|
|
|
HRESULT add(
|
|
|
|
[in] BSTR bstrURL,
|
|
|
|
[out, retval] IWMPMedia **ppItem);
|
|
|
|
|
|
|
|
[id(0x01c5)]
|
|
|
|
HRESULT getAll([out, retval] IWMPPlaylist **ppMediaItems);
|
|
|
|
|
|
|
|
[id(0x01c6)]
|
|
|
|
HRESULT getByName(
|
|
|
|
[in] BSTR bstrName,
|
|
|
|
[out, retval] IWMPPlaylist **ppMediaItems);
|
|
|
|
|
|
|
|
[id(0x01c7)]
|
|
|
|
HRESULT getByGenre(
|
|
|
|
[in] BSTR bstrGenre,
|
|
|
|
[out, retval] IWMPPlaylist **ppMediaItems);
|
|
|
|
|
|
|
|
[id(0x01c8)]
|
|
|
|
HRESULT getByAuthor(
|
|
|
|
[in] BSTR bstrAuthor,
|
|
|
|
[out, retval] IWMPPlaylist **ppMediaItems);
|
|
|
|
|
|
|
|
[id(0x01c9)]
|
|
|
|
HRESULT getByAlbum(
|
|
|
|
[in] BSTR bstrAlbum,
|
|
|
|
[out, retval] IWMPPlaylist **ppMediaItems);
|
|
|
|
|
|
|
|
[id(0x01ca)]
|
|
|
|
HRESULT getByAttribute(
|
|
|
|
[in] BSTR bstrAttribute,
|
|
|
|
[in] BSTR bstrValue,
|
|
|
|
[out, retval] IWMPPlaylist **ppMediaItems);
|
|
|
|
|
|
|
|
[id(0x01cb)]
|
|
|
|
HRESULT remove(
|
|
|
|
[in] IWMPMedia *pItem,
|
|
|
|
[in] VARIANT_BOOL varfDeleteFile);
|
|
|
|
|
|
|
|
[id(0x01cd)]
|
|
|
|
HRESULT getAttributeStringCollection(
|
|
|
|
[in] BSTR bstrAttribute,
|
|
|
|
[in] BSTR bstrMediaType,
|
|
|
|
[out, retval] IWMPStringCollection **ppStringCollection);
|
|
|
|
|
|
|
|
[id(0x01d6)]
|
|
|
|
HRESULT getMediaAtom(
|
|
|
|
[in] BSTR bstrItemName,
|
|
|
|
[out, retval] long *plAtom);
|
|
|
|
|
|
|
|
[id(0x01d7)]
|
|
|
|
HRESULT setDeleted(
|
|
|
|
[in] IWMPMedia *pItem,
|
|
|
|
[in] VARIANT_BOOL varfIsDeleted);
|
|
|
|
|
|
|
|
[id(0x01d8)]
|
|
|
|
HRESULT isDeleted(
|
|
|
|
[in] IWMPMedia *pItem,
|
|
|
|
[out, retval] VARIANT_BOOL *pvarfIsDeleted);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(679409c0-99f7-11d3-9fb7-00105aa620bb),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPPlaylistArray : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x01f5), propget]
|
|
|
|
HRESULT count([out, retval] long *plCount);
|
|
|
|
|
|
|
|
[id(0x01f6)]
|
|
|
|
HRESULT Item(
|
|
|
|
[in] long lIndex,
|
|
|
|
[out, retval] IWMPPlaylist **ppItem);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(10a13217-23a7-439b-b1c0-d847c79b7774),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPPlaylistCollection : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x0228)]
|
|
|
|
HRESULT newPlaylist(
|
|
|
|
[in] BSTR bstrName,
|
|
|
|
[out, retval] IWMPPlaylist **ppItem);
|
|
|
|
|
|
|
|
[id(0x0229)]
|
|
|
|
HRESULT getAll([out, retval] IWMPPlaylistArray **ppPlaylistArray);
|
|
|
|
|
|
|
|
[id(0x022a)]
|
|
|
|
HRESULT getByName(
|
|
|
|
[in] BSTR bstrName,
|
|
|
|
[out, retval] IWMPPlaylistArray **ppPlaylistArray);
|
|
|
|
|
|
|
|
[id(0x022c)]
|
|
|
|
HRESULT remove([in] IWMPPlaylist *pItem);
|
|
|
|
|
|
|
|
[id(0x0230)]
|
|
|
|
HRESULT setDeleted(
|
|
|
|
[in] IWMPPlaylist *pItem,
|
|
|
|
[in] VARIANT_BOOL varfIsDeleted);
|
|
|
|
|
|
|
|
[id(0x0231)]
|
|
|
|
HRESULT isDeleted(
|
|
|
|
[in] IWMPPlaylist *pItem,
|
|
|
|
[out, retval] VARIANT_BOOL *pvarfIsDeleted);
|
|
|
|
|
|
|
|
[id(0x0232)]
|
|
|
|
HRESULT importPlaylist(
|
|
|
|
[in] IWMPPlaylist *pItem,
|
|
|
|
[out, retval] IWMPPlaylist **ppImportedItem);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(ec21b779-edef-462d-bba4-ad9dde2b29a7),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPNetwork : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x0321), propget]
|
|
|
|
HRESULT bandWidth([out, retval] long *plBandwidth);
|
|
|
|
|
|
|
|
[id(0x0322), propget]
|
|
|
|
HRESULT recoveredPackets([out, retval] long *plRecoveredPackets);
|
|
|
|
|
|
|
|
[id(0x0323), propget]
|
|
|
|
HRESULT sourceProtocol([out, retval] BSTR *pbstrSourceProtocol);
|
|
|
|
|
|
|
|
[id(0x0324), propget]
|
|
|
|
HRESULT receivedPackets([out, retval] long *plReceivedPackets);
|
|
|
|
|
|
|
|
[id(0x0325), propget]
|
|
|
|
HRESULT lostPackets([out, retval] long *plLostPackets);
|
|
|
|
|
|
|
|
[id(0x0326), propget]
|
|
|
|
HRESULT receptionQuality([out, retval] long *plReceptionQuality);
|
|
|
|
|
|
|
|
[id(0x0327), propget]
|
|
|
|
HRESULT bufferingCount([out, retval] long *plBufferingCount);
|
|
|
|
|
|
|
|
[id(0x0328), propget]
|
|
|
|
HRESULT bufferingProgress([out, retval] long *plBufferingProgress);
|
|
|
|
|
|
|
|
[id(0x0329), propget]
|
|
|
|
HRESULT bufferingTime([out, retval] long *plBufferingTime);
|
|
|
|
|
|
|
|
[id(0x0329), propput]
|
|
|
|
HRESULT bufferingTime([in] long plBufferingTime);
|
|
|
|
|
|
|
|
[id(0x032a), propget]
|
|
|
|
HRESULT frameRate([out, retval] long *plFrameRate);
|
|
|
|
|
|
|
|
[id(0x032b), propget]
|
|
|
|
HRESULT maxBitRate([out, retval] long *plBitRate);
|
|
|
|
|
|
|
|
[id(0x032c), propget]
|
|
|
|
HRESULT bitRate([out, retval] long *plBitRate);
|
|
|
|
|
|
|
|
[id(0x032d)]
|
|
|
|
HRESULT getProxySettings(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[out, retval] long *plProxySetting);
|
|
|
|
|
|
|
|
[id(0x032e)]
|
|
|
|
HRESULT setProxySettings(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[in] long lProxySetting);
|
|
|
|
|
|
|
|
[id(0x032f)]
|
|
|
|
HRESULT getProxyName(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[out, retval] BSTR *pbstrProxyName);
|
|
|
|
|
|
|
|
[id(0x0330)]
|
|
|
|
HRESULT setProxyName(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[in] BSTR bstrProxyName);
|
|
|
|
|
|
|
|
[id(0x0331)]
|
|
|
|
HRESULT getProxyPort(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[out, retval] long *lProxyPort);
|
|
|
|
|
|
|
|
[id(0x0332)]
|
|
|
|
HRESULT setProxyPort(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[in] long lProxyPort);
|
|
|
|
|
|
|
|
[id(0x0333)]
|
|
|
|
HRESULT getProxyExceptionList(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[out, retval] BSTR *pbstrExceptionList);
|
|
|
|
|
|
|
|
[id(0x0334)]
|
|
|
|
HRESULT setProxyExceptionList(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[in] BSTR pbstrExceptionList);
|
|
|
|
|
|
|
|
[id(0x0335)]
|
|
|
|
HRESULT getProxyBypassForLocal(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[out, retval] VARIANT_BOOL *pfBypassForLocal);
|
|
|
|
|
|
|
|
[id(0x0336)]
|
|
|
|
HRESULT setProxyBypassForLocal(
|
|
|
|
[in] BSTR bstrProtocol,
|
|
|
|
[in] VARIANT_BOOL fBypassForLocal);
|
|
|
|
|
|
|
|
[id(0x0337), propget]
|
|
|
|
HRESULT maxBandwidth([out, retval] long *lMaxBandwidth);
|
|
|
|
[id(0x0337), propput]
|
|
|
|
HRESULT maxBandwidth([in] long lMaxBandwidth);
|
|
|
|
|
|
|
|
[id(0x0338), propget]
|
|
|
|
HRESULT downloadProgress([out, retval] long *plDownloadProgress);
|
|
|
|
|
|
|
|
[id(0x0339), propget]
|
|
|
|
HRESULT encodedFrameRate([out, retval] long *plFrameRate);
|
|
|
|
|
|
|
|
[id(0x033a), propget]
|
|
|
|
HRESULT framesSkipped([out, retval] long *plFrames);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(cfab6e98-8730-11d3-b388-00c04f68574b),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPCdrom : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x00fb), propget]
|
|
|
|
HRESULT driveSpecifier([out, retval] BSTR *pbstrDrive);
|
|
|
|
|
|
|
|
[id(0x00fc), propget]
|
|
|
|
HRESULT Playlist([out, retval] IWMPPlaylist **ppPlaylist);
|
|
|
|
|
|
|
|
[id(0x00fd)]
|
|
|
|
HRESULT eject();
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(ee4c8fe2-34b2-11d3-a3bf-006097c9b344),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPCdromCollection : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x012d), propget]
|
|
|
|
HRESULT count([out, retval] long *plCount);
|
|
|
|
|
|
|
|
[id(0x012e)]
|
|
|
|
HRESULT Item(
|
|
|
|
[in] long lIndex,
|
|
|
|
[out, retval] IWMPCdrom **ppItem);
|
|
|
|
|
|
|
|
[id(0x012f)]
|
|
|
|
HRESULT getByDriveSpecifier(
|
|
|
|
[in] BSTR bstrDriveSpecifier,
|
|
|
|
[out, retval] IWMPCdrom **ppCdrom);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(8da61686-4668-4a5c-ae5d-803193293dbe),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPDVD : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x03e9), propget]
|
|
|
|
HRESULT isAvailable(
|
|
|
|
[in] BSTR bstrItem,
|
|
|
|
[out, retval] VARIANT_BOOL *pIsAvailable);
|
|
|
|
|
|
|
|
[id(0x03ea), propget]
|
|
|
|
HRESULT domain([out, retval] BSTR *strDomain);
|
|
|
|
|
|
|
|
[id(0x03eb)]
|
|
|
|
HRESULT topMenu();
|
|
|
|
|
|
|
|
[id(0x03ec)]
|
|
|
|
HRESULT titleMenu();
|
|
|
|
|
|
|
|
[id(0x03ed)]
|
|
|
|
HRESULT back();
|
|
|
|
|
|
|
|
[id(0x03ee)]
|
|
|
|
HRESULT resume();
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(4f2df574-c588-11d3-9ed0-00c04fb6e937),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPClosedCaption : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x03b7), propget]
|
|
|
|
HRESULT SAMIStyle([out, retval] BSTR *pbstrSAMIStyle);
|
|
|
|
[id(0x03b7), propput]
|
|
|
|
HRESULT SAMIStyle([in] BSTR pbstrSAMIStyle);
|
|
|
|
|
|
|
|
[id(0x03b8), propget]
|
|
|
|
HRESULT SAMILang([out, retval] BSTR *pbstrSAMILang);
|
|
|
|
|
|
|
|
[id(0x03b8), propput]
|
|
|
|
HRESULT SAMILang([in] BSTR pbstrSAMILang);
|
|
|
|
|
|
|
|
[id(0x03b9), propget]
|
|
|
|
HRESULT SAMIFileName([out, retval] BSTR *pbstrSAMIFileName);
|
|
|
|
|
|
|
|
[id(0x03b9), propput]
|
|
|
|
HRESULT SAMIFileName([in] BSTR pbstrSAMIFileName);
|
|
|
|
|
|
|
|
[id(0x03ba), propget]
|
|
|
|
HRESULT captioningId([out, retval] BSTR *pbstrCaptioningID);
|
|
|
|
|
|
|
|
[id(0x03ba), propput]
|
|
|
|
HRESULT captioningId([in] BSTR pbstrCaptioningID);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(3614c646-3b3b-4de7-a81e-930e3f2127b3),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPErrorItem : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x0385), propget]
|
|
|
|
HRESULT errorCode([out, retval] long *phr);
|
|
|
|
|
|
|
|
[id(0x0386), propget]
|
|
|
|
HRESULT errorDescription([out, retval] BSTR *pbstrDescription);
|
|
|
|
|
|
|
|
[id(0x0387), propget]
|
|
|
|
HRESULT errorContext([out, retval] VARIANT *pvarContext);
|
|
|
|
|
|
|
|
[id(0x0388), propget]
|
|
|
|
HRESULT remedy([out, retval] long *plRemedy);
|
|
|
|
|
|
|
|
[id(0x0389), propget]
|
|
|
|
HRESULT customUrl([out, retval] BSTR *pbstrCustomUrl);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(a12dcf7d-14ab-4c1b-a8cd-63909f06025b),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPError : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x0353)]
|
|
|
|
HRESULT clearErrorQueue();
|
|
|
|
|
|
|
|
[id(0x0354), propget]
|
|
|
|
HRESULT errorCount([out, retval] long *plNumErrors);
|
|
|
|
|
|
|
|
[id(0x0355), propget]
|
|
|
|
HRESULT Item(
|
|
|
|
[in] long dwIndex,
|
|
|
|
[out, retval] IWMPErrorItem **ppErrorItem);
|
|
|
|
|
|
|
|
[id(0x0356)]
|
|
|
|
HRESULT webHelp();
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(40897764-ceab-47be-ad4a-8e28537f9bbf),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPPlayerApplication : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x044d)]
|
|
|
|
HRESULT switchToPlayerApplication();
|
|
|
|
|
|
|
|
[id(0x044e)]
|
|
|
|
HRESULT switchToControl();
|
|
|
|
|
|
|
|
[id(0x044f), propget]
|
|
|
|
HRESULT playerDocked([out, retval] VARIANT_BOOL* pbPlayerDocked);
|
|
|
|
|
|
|
|
[id(0x0450), propget]
|
|
|
|
HRESULT hasDisplay([out, retval] VARIANT_BOOL *pbHasDisplay);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(d84cca99-cce2-11d2-9ecc-0000f8085981),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPCore : IDispatch
|
|
|
|
{
|
|
|
|
[id(0x0003)]
|
|
|
|
HRESULT close();
|
|
|
|
|
|
|
|
[id(0x0001), propget]
|
|
|
|
HRESULT URL([out, retval] BSTR *pbstrURL);
|
|
|
|
[id(0x0001), propput]
|
|
|
|
HRESULT URL([in] BSTR pbstrURL);
|
|
|
|
|
|
|
|
[id(0x0002), propget]
|
|
|
|
HRESULT openState([out, retval] WMPOpenState *pwmpos);
|
|
|
|
|
|
|
|
[id(0x000a), propget]
|
|
|
|
HRESULT playState([out, retval] WMPPlayState *pwmpps);
|
|
|
|
|
|
|
|
[id(0x0004), propget]
|
|
|
|
HRESULT controls([out, retval] IWMPControls **ppControl);
|
|
|
|
|
|
|
|
[id(0x0005), propget]
|
|
|
|
HRESULT settings([out, retval] IWMPSettings **ppSettings);
|
|
|
|
|
|
|
|
[id(0x0006), propget]
|
|
|
|
HRESULT currentMedia([out, retval] IWMPMedia **ppMedia);
|
|
|
|
[id(0x0006), propput]
|
|
|
|
HRESULT currentMedia([in] IWMPMedia *ppMedia);
|
|
|
|
|
|
|
|
[id(0x0008), propget]
|
|
|
|
HRESULT mediaCollection([out, retval] IWMPMediaCollection **ppMediaCollection);
|
|
|
|
|
|
|
|
[id(0x0009), propget]
|
|
|
|
HRESULT playlistCollection([out, retval] IWMPPlaylistCollection **ppPlaylistCollection);
|
|
|
|
|
|
|
|
[id(0x000b), propget]
|
|
|
|
HRESULT versionInfo([out, retval] BSTR *pbstrVersionInfo);
|
|
|
|
|
|
|
|
[id(0x000c)]
|
|
|
|
HRESULT launchURL([in] BSTR bstrURL);
|
|
|
|
|
|
|
|
[id(0x0007), propget]
|
|
|
|
HRESULT network([out, retval] IWMPNetwork **ppQNI);
|
|
|
|
|
|
|
|
[id(0x000d), propget]
|
|
|
|
HRESULT currentPlaylist([out, retval] IWMPPlaylist **ppPL);
|
|
|
|
[id(0x000d), propput]
|
|
|
|
HRESULT currentPlaylist([in] IWMPPlaylist *ppPL);
|
|
|
|
|
|
|
|
[id(0x000e), propget]
|
|
|
|
HRESULT cdromCollection([out, retval] IWMPCdromCollection **ppCdromCollection);
|
|
|
|
|
|
|
|
[id(0x000f), propget]
|
|
|
|
HRESULT closedCaption([out, retval] IWMPClosedCaption **ppClosedCaption);
|
|
|
|
|
|
|
|
[id(0x0010), propget]
|
|
|
|
HRESULT isOnline([out, retval] VARIANT_BOOL *pfOnline);
|
|
|
|
|
|
|
|
[id(0x0011), propget]
|
|
|
|
HRESULT Error([out, retval] IWMPError **ppError);
|
|
|
|
|
|
|
|
[id(0x0012), propget]
|
|
|
|
HRESULT status([out, retval] BSTR *pbstrStatus);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(bc17e5B7-7561-4c18-bb90-17d485775659),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPCore2 : IWMPCore {
|
|
|
|
[id(0x0028), propget]
|
|
|
|
HRESULT dvd([out, retval] IWMPDVD **ppDVD);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(7587c667-628f-499f-88e7-6A6f4e888464),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPCore3 : IWMPCore2
|
|
|
|
{
|
|
|
|
[id(0x0029)]
|
|
|
|
HRESULT newPlaylist(
|
|
|
|
[in] BSTR bstrName,
|
|
|
|
[in] BSTR bstrURL,
|
|
|
|
[out, retval] IWMPPlaylist **ppPlaylist);
|
|
|
|
|
|
|
|
[id(0x002a)]
|
|
|
|
HRESULT newMedia(
|
|
|
|
[in] BSTR bstrURL,
|
|
|
|
[out, retval] IWMPMedia **ppMedia);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
|
|
odl,
|
|
|
|
uuid(6c497d62-8919-413c-82db-e935fb3ec584),
|
|
|
|
dual,
|
|
|
|
oleautomation
|
|
|
|
]
|
|
|
|
interface IWMPPlayer4 : IWMPCore3
|
|
|
|
{
|
|
|
|
[id(0x0013), propget]
|
|
|
|
HRESULT enabled([out, retval] VARIANT_BOOL *pbEnabled);
|
|
|
|
[id(0x0013), propput]
|
|
|
|
HRESULT enabled([in] VARIANT_BOOL pbEnabled);
|
|
|
|
|
|
|
|
[id(0x0015), propget]
|
|
|
|
HRESULT fullScreen([out, retval] VARIANT_BOOL *pbFullScreen);
|
|
|
|
[id(0x0015), propput]
|
|
|
|
HRESULT fullScreen(VARIANT_BOOL pbFullScreen);
|
|
|
|
|
|
|
|
[id(0x0016), propget]
|
|
|
|
HRESULT enableContextMenu([out, retval] VARIANT_BOOL *pbEnableContextMenu);
|
|
|
|
[id(0x0016), propput]
|
|
|
|
HRESULT enableContextMenu(VARIANT_BOOL pbEnableContextMenu);
|
|
|
|
|
|
|
|
[id(0x0017), propput]
|
|
|
|
HRESULT uiMode([in] BSTR pbstrMode);
|
|
|
|
[id(0x0017), propget]
|
|
|
|
HRESULT uiMode([out, retval] BSTR *pbstrMode);
|
|
|
|
|
|
|
|
[id(0x0018), propget]
|
|
|
|
HRESULT stretchToFit([out, retval] VARIANT_BOOL *pbEnabled);
|
|
|
|
[id(0x0018), propput]
|
|
|
|
HRESULT stretchToFit([in] VARIANT_BOOL pbEnabled);
|
|
|
|
|
|
|
|
[id(0x0019), propget]
|
|
|
|
HRESULT windowlessVideo([out, retval] VARIANT_BOOL *pbEnabled);
|
|
|
|
[id(0x0019), propput]
|
|
|
|
HRESULT windowlessVideo([in] VARIANT_BOOL pbEnabled);
|
|
|
|
|
|
|
|
[id(0x001a), propget]
|
|
|
|
HRESULT isRemote([out, retval] VARIANT_BOOL *pvarfIsRemote);
|
|
|
|
|
|
|
|
[id(0x001b), propget]
|
|
|
|
HRESULT playerApplication([out, retval] IWMPPlayerApplication **ppIWMPPlayerApplication);
|
|
|
|
|
|
|
|
[id(0x001c)]
|
|
|
|
HRESULT openPlayer([in] BSTR bstrURL);
|
|
|
|
}
|
|
|
|
|
2014-01-30 13:38:15 +00:00
|
|
|
[
|
|
|
|
hidden,
|
|
|
|
uuid(6bf52a51-394a-11d3-b153-00c04f79faa6)
|
|
|
|
]
|
|
|
|
interface _WMPOCXEvents : IDispatch
|
|
|
|
{}
|
|
|
|
|
2014-01-25 17:21:18 +00:00
|
|
|
[
|
|
|
|
helpstring("Windows Media Player"),
|
|
|
|
threading(apartment),
|
2014-02-11 10:49:03 +00:00
|
|
|
progid("WMPlayer.OCX.7"),
|
|
|
|
vi_progid("WMPlayer.OCX"),
|
2014-01-25 17:21:18 +00:00
|
|
|
uuid(6bf52a52-394a-11d3-b153-00c04f79faa6)
|
|
|
|
]
|
|
|
|
coclass WindowsMediaPlayer
|
2014-02-17 16:36:28 +00:00
|
|
|
{
|
|
|
|
[default] interface IWMPPlayer4;
|
|
|
|
/* interface IWMPPlayer3; */
|
|
|
|
/* interface IWMPPlayer2; */
|
|
|
|
/* interface IWMPPlayer; */
|
|
|
|
interface IWMPControls;
|
|
|
|
interface IWMPSettings;
|
|
|
|
interface IWMPPlaylist;
|
|
|
|
interface IWMPMedia;
|
|
|
|
interface IWMPMediaCollection;
|
|
|
|
interface IWMPPlaylistCollection;
|
|
|
|
interface IWMPCdromCollection;
|
|
|
|
interface IWMPError;
|
|
|
|
interface IWMPErrorItem;
|
|
|
|
/* interface IWMPErrorItem2; */
|
|
|
|
interface IWMPClosedCaption;
|
|
|
|
interface IWMPDVD;
|
|
|
|
/* interface IWMPControls2; */
|
|
|
|
/* interface IWMPMedia2; */
|
|
|
|
/* interface IWMPMedia3; */
|
|
|
|
/* interface IWMPMetadataPicture; */
|
|
|
|
/* interface IWMPMetadataText; */
|
|
|
|
/* interface IWMPSettings2; */
|
|
|
|
/* interface IWMPControls3; */
|
|
|
|
/* interface IWMPClosedCaption2; */
|
|
|
|
/* interface IWMPMediaCollection2; */
|
|
|
|
/* interface IWMPStringCollection2; */
|
|
|
|
[default, source] dispinterface _WMPOCXEvents;
|
|
|
|
}
|
2014-01-25 17:21:18 +00:00
|
|
|
}
|