| /* |
| * 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 { |
| importlib("stdole2.tlb"); |
| |
| 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; |
| |
| typedef enum { |
| wmplcUnknown, |
| wmplcClear, |
| wmplcInfoChange, |
| wmplcMove, |
| wmplcDelete, |
| wmplcInsert, |
| wmplcAppend, |
| wmplcPrivate, |
| wmplcNameChange, |
| wmplcMorph, |
| wmplcSort, |
| wmplcLast |
| } WMPPlaylistChangeEventType; |
| |
| typedef enum { |
| wmpdsUnknown, |
| wmpdsPartnershipExists, |
| wmpdsPartnershipDeclined, |
| wmpdsPartnershipAnother, |
| wmpdsManualDevice, |
| wmpdsNewDevice, |
| wmpdsLast |
| } WMPDeviceStatus; |
| |
| typedef enum { |
| wmpssUnknown, |
| wmpssSynchronizing, |
| wmpssStopped, |
| wmpssEstimating, |
| wmpssLast |
| } WMPSyncState; |
| |
| typedef enum { |
| wmprsUnknown, |
| wmprsRipping, |
| wmprsStopped |
| } WMPRipState; |
| |
| typedef enum { |
| wmpbfAudioCD, |
| wmpbfDataCD |
| } WMPBurnFormat; |
| |
| typedef enum { |
| wmpbsUnknown, |
| wmpbsBusy, |
| wmpbsReady, |
| wmpbsWaitingForDisc, |
| wmpbsRefreshStatusPending, |
| wmpbsPreparingToBurn, |
| wmpbsBurning, |
| wmpbsStopped, |
| wmpbsErasing, |
| wmpbsDownloading |
| } WMPBurnState; |
| |
| typedef enum { |
| wmpltUnknown, |
| wmpltAll, |
| wmpltLocal, |
| wmpltRemote, |
| wmpltDisc, |
| wmpltPortableDevice |
| } WMPLibraryType; |
| |
| typedef enum { |
| wmpfssUnknown, |
| wmpfssScanning, |
| wmpfssUpdating, |
| wmpfssStopped |
| } WMPFolderScanState; |
| |
| typedef enum { |
| wmpsccetUnknown, |
| wmpsccetInsert, |
| wmpsccetChange, |
| wmpsccetDelete, |
| wmpsccetClear, |
| wmpsccetBeginUpdates, |
| wmpsccetEndUpdates |
| } WMPStringCollectionChangeEventType; |
| |
| 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(6f030d25-0890-480f-9775-1f7e40ab5b8e), |
| dual, |
| oleautomation |
| ] |
| interface IWMPControls2 : IWMPControls |
| { |
| [id(0x0040)] |
| HRESULT step([in] long lStep); |
| } |
| |
| [ |
| odl, |
| uuid(cbb92747-741f-44fe-ab5b-f1a48f3b2a59), |
| oleautomation |
| ] |
| interface IWMPRemoteMediaServices : IUnknown |
| { |
| HRESULT GetServiceType([out, retval] BSTR *type); |
| |
| HRESULT GetApplicationName([out, retval] BSTR *name); |
| |
| HRESULT GetScriptableObject([out, retval] BSTR *name, [out, retval] IDispatch **out); |
| |
| HRESULT GetCustomUIMode([out, retval] BSTR *file); |
| } |
| |
| [ |
| 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(ab7c88bb-143e-4ea4-acc3-e4350b2106c3), |
| dual, |
| oleautomation |
| ] |
| interface IWMPMedia2 : IWMPMedia |
| { |
| [id(0x0300), propget] |
| HRESULT error([out, retval] IWMPErrorItem **out); |
| } |
| |
| [ |
| odl, |
| uuid(f118efc7-f03a-4fb4-99c9-1c02a5c1065b), |
| dual, |
| oleautomation |
| ] |
| interface IWMPMedia3 : IWMPMedia2 |
| { |
| [id(0x0301)] |
| HRESULT getAttributeCountByType([in] BSTR type, [in] BSTR language, [out, retval] long *out); |
| |
| [id(0x0302)] |
| HRESULT getItemInfoByType([in] BSTR type, [in] BSTR language, [in] long index, [out, retval] VARIANT *out); |
| } |
| |
| [ |
| 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); |
| } |
| |
| [ |
| odl, |
| uuid(6BF52A4F-394A-11D3-B153-00C04F79FAA6), |
| dual, |
| oleautomation |
| ] |
| interface IWMPPlayer : IWMPCore { |
| [id(0x00000013), propget] |
| HRESULT enabled([out, retval] VARIANT_BOOL* pbEnabled); |
| [id(0x00000013), propput] |
| HRESULT enabled([in] VARIANT_BOOL pbEnabled); |
| [id(0x00000015), propget] |
| HRESULT fullScreen([out, retval] VARIANT_BOOL* pbFullScreen); |
| [id(0x00000015), propput] |
| HRESULT fullScreen(VARIANT_BOOL pbFullScreen); |
| [id(0x00000016), propget] |
| HRESULT enableContextMenu([out, retval] VARIANT_BOOL* pbEnableContextMenu); |
| [id(0x00000016), propput] |
| HRESULT enableContextMenu(VARIANT_BOOL pbEnableContextMenu); |
| [id(0x00000017), propput] |
| HRESULT uiMode([in] BSTR pbstrMode); |
| [id(0x00000017), propget] |
| HRESULT uiMode([out, retval] BSTR* pbstrMode); |
| }; |
| |
| [ |
| odl, |
| uuid(82a2986c-0293-4fd0-b279-b21b86c058be), |
| oleautomation |
| ] |
| interface IWMPSyncDevice : IUnknown |
| { |
| [propget] |
| HRESULT friendlyName([out, retval] BSTR *name); |
| |
| [propput] |
| HRESULT friendlyName([in] BSTR name); |
| |
| [propget] |
| HRESULT deviceName([out, retval] BSTR *name); |
| |
| [propget] |
| HRESULT deviceId([out, retval] BSTR *device); |
| |
| [propget] |
| HRESULT partnershipIndex([out, retval] long *index); |
| |
| [propget] |
| HRESULT connected([out, retval] VARIANT_BOOL *connected); |
| |
| [propget] |
| HRESULT status([out, retval] WMPDeviceStatus *status); |
| |
| [propget] |
| HRESULT syncState([out, retval] WMPSyncState *state); |
| |
| [propget] |
| HRESULT progress([out, retval] long *progress); |
| |
| HRESULT getItemInfo( |
| [in] BSTR name, |
| [out, retval] BSTR *val); |
| |
| HRESULT createPartnership([in] VARIANT_BOOL showui); |
| |
| HRESULT deletePartnership(); |
| |
| HRESULT start(); |
| |
| HRESULT stop(); |
| |
| HRESULT showSettings(); |
| |
| HRESULT isIdentical( |
| [in] IWMPSyncDevice *device, |
| [out, retval] VARIANT_BOOL *ret); |
| } |
| |
| [ |
| odl, |
| uuid(88afb4b2-140a-44d2-91e6-4543da467cd1), |
| oleautomation |
| ] |
| interface IWMPSyncDevice2 : IWMPSyncDevice |
| { |
| HRESULT setItemInfo( |
| [in] BSTR name, |
| [in] BSTR val); |
| } |
| |
| [ |
| odl, |
| uuid(56e2294f-69ed-4629-a869-aea72c0dcc2c), |
| oleautomation |
| ] |
| interface IWMPCdromRip : IUnknown |
| { |
| [propget] |
| HRESULT ripState([out, retval] WMPRipState *state); |
| |
| [propget] |
| HRESULT ripProgress([out, retval] long *progress); |
| |
| HRESULT startRip(); |
| |
| HRESULT stopRip(); |
| } |
| |
| [ |
| odl, |
| uuid(bd94dbeb-417f-4928-aa06-087d56ed9b59), |
| oleautomation |
| ] |
| interface IWMPCdromBurn : IUnknown |
| { |
| HRESULT isAvailable( |
| [in] BSTR item, |
| [out, retval] VARIANT_BOOL *available); |
| |
| HRESULT getItemInfo( |
| [in] BSTR item, |
| [out, retval] BSTR *val); |
| |
| [propget] |
| HRESULT label([out, retval] BSTR *label); |
| |
| [propput] |
| HRESULT label([in] BSTR label); |
| |
| [propget] |
| HRESULT burnFormat([out, retval] WMPBurnFormat *format); |
| |
| [propput] |
| HRESULT burnFormat([in] WMPBurnFormat format); |
| |
| [propget] |
| HRESULT burnPlaylist([out, retval] IWMPPlaylist **playlist); |
| |
| [propput] |
| HRESULT burnPlaylist([in] IWMPPlaylist *playlist); |
| |
| HRESULT refreshStatus(); |
| |
| [propget] |
| HRESULT burnState([out, retval] WMPBurnState *state); |
| |
| [propget] |
| HRESULT burnProgress([out, retval] long *progress); |
| |
| HRESULT startBurn(); |
| |
| HRESULT stopBurn(); |
| |
| HRESULT erase(); |
| } |
| |
| [ |
| odl, |
| uuid(3df47861-7df1-4c1f-a81b-4c26f0f7a7c6), |
| oleautomation |
| ] |
| interface IWMPLibrary : IUnknown |
| { |
| [propget] |
| HRESULT name([out, retval] BSTR *name); |
| |
| [propget] |
| HRESULT type([out, retval] WMPLibraryType *type); |
| |
| [propget] |
| HRESULT mediaCollection([out, retval] IWMPMediaCollection **collection); |
| |
| HRESULT isIdentical( |
| [in] IWMPLibrary *wmplibrary, |
| [out, retval] VARIANT_BOOL *ret); |
| } |
| |
| [ |
| uuid(19a6627b-da9e-47c1-bb23-00b5e668236a), |
| odl |
| ] |
| interface IWMPEvents : IUnknown |
| { |
| void OpenStateChange([in] long state); |
| |
| void PlayStateChange([in] long state); |
| |
| void AudioLanguageChange([in] long lang); |
| |
| void StatusChange(); |
| |
| void ScriptCommand( |
| [in] BSTR type, |
| [in] BSTR param); |
| |
| void NewStream(); |
| |
| void Disconnect([in] long result); |
| |
| void Buffering([in] VARIANT_BOOL start); |
| |
| void Error(); |
| |
| void Warning( |
| [in] long warning, |
| [in] long param, |
| [in] BSTR description); |
| |
| void EndOfStream([in] long result); |
| |
| void PositionChange( |
| [in] double old_position, |
| [in] double new_position); |
| |
| void MarkerHit([in] long marker); |
| |
| void DurationUnitChange([in] long duration); |
| |
| void CdromMediaChange([in] long num); |
| |
| void PlaylistChange( |
| [in] IDispatch *playlist, |
| [in] WMPPlaylistChangeEventType change); |
| |
| void CurrentPlaylistChange([in] WMPPlaylistChangeEventType change); |
| |
| void CurrentPlaylistItemAvailable([in] BSTR item); |
| |
| void MediaChange([in] IDispatch *item); |
| |
| void CurrentMediaItemAvailable([in] BSTR name); |
| |
| void CurrentItemChange([in] IDispatch *media); |
| |
| void MediaCollectionChange(); |
| |
| void MediaCollectionAttributeStringAdded( |
| [in] BSTR name, |
| [in] BSTR val); |
| |
| void MediaCollectionAttributeStringRemoved( |
| [in] BSTR name, |
| [in] BSTR val); |
| |
| void MediaCollectionAttributeStringChanged( |
| [in] BSTR name, |
| [in] BSTR old_val, |
| [in] BSTR new_val); |
| |
| void PlaylistCollectionChange(); |
| |
| void PlaylistCollectionPlaylistAdded([in] BSTR name); |
| |
| void PlaylistCollectionPlaylistRemoved([in] BSTR name); |
| |
| void PlaylistCollectionPlaylistSetAsDeleted( |
| [in] BSTR name, |
| [in] VARIANT_BOOL deleted); |
| |
| void ModeChange( |
| [in] BSTR ModeName, |
| [in] VARIANT_BOOL value); |
| |
| void MediaError([in] IDispatch *media); |
| |
| void OpenPlaylistSwitch([in] IDispatch *item); |
| |
| void DomainChange([in] BSTR domain); |
| |
| void SwitchedToPlayerApplication(); |
| |
| void SwitchedToControl(); |
| |
| void PlayerDockedStateChange(); |
| |
| void PlayerReconnect(); |
| |
| void Click( |
| [in] short button, |
| [in] short shift_state, |
| [in] long x, |
| [in] long y); |
| |
| void DoubleClick( |
| [in] short button, |
| [in] short shift_state, |
| [in] long fX, |
| [in] long fY); |
| |
| void KeyDown( |
| [in] short keycode, |
| [in] short shift_state); |
| |
| void KeyPress([in] short ascii); |
| |
| void KeyUp( |
| [in] short keycode, |
| [in] short shift_state); |
| |
| void MouseDown( |
| [in] short button, |
| [in] short nShiftState, |
| [in] long x, |
| [in] long y); |
| |
| void MouseMove( |
| [in] short button, |
| [in] short shift_state, |
| [in] long x, |
| [in] long y); |
| |
| void MouseUp( |
| [in] short button, |
| [in] short shift_state, |
| [in] long x, |
| [in] long y); |
| } |
| |
| [ |
| uuid(1e7601fa-47ea-4107-9ea9-9004ed9684ff), |
| odl |
| ] |
| interface IWMPEvents2 : IWMPEvents |
| { |
| void DeviceConnect([in] IWMPSyncDevice *device); |
| |
| void DeviceDisconnect([in] IWMPSyncDevice *device); |
| |
| void DeviceStatusChange( |
| [in] IWMPSyncDevice *device, |
| [in] WMPDeviceStatus status); |
| |
| void DeviceSyncStateChange( |
| [in] IWMPSyncDevice *device, |
| [in] WMPSyncState state); |
| |
| void DeviceSyncError( |
| [in] IWMPSyncDevice *device, |
| [in] IDispatch *media); |
| |
| void CreatePartnershipComplete( |
| [in] IWMPSyncDevice *device, |
| [in] HRESULT result); |
| } |
| |
| [ |
| uuid(1f504270-a66b-4223-8e96-26a06c63d69f), |
| odl |
| ] |
| interface IWMPEvents3 : IWMPEvents2 |
| { |
| void CdromRipStateChange( |
| [in] IWMPCdromRip *rip, |
| [in] WMPRipState state); |
| |
| void CdromRipMediaError( |
| [in] IWMPCdromRip *rip, |
| [in] IDispatch *media); |
| |
| void CdromBurnStateChange( |
| [in] IWMPCdromBurn *burn, |
| [in] WMPBurnState state); |
| |
| void CdromBurnMediaError( |
| [in] IWMPCdromBurn *burn, |
| [in] IDispatch *media); |
| |
| void CdromBurnError( |
| [in] IWMPCdromBurn *burn, |
| [in] HRESULT error); |
| |
| void LibraryConnect( |
| [in] IWMPLibrary *wmplibrary); |
| |
| void LibraryDisconnect( |
| [in] IWMPLibrary *wmplibrary); |
| |
| void FolderScanStateChange( |
| [in] WMPFolderScanState state); |
| |
| void StringCollectionChange( |
| [in] IDispatch *collection, |
| [in] WMPStringCollectionChangeEventType change, |
| [in] long index); |
| |
| void MediaCollectionMediaAdded( |
| [in] IDispatch *media); |
| |
| void MediaCollectionMediaRemoved( |
| [in] IDispatch *media); |
| } |
| |
| [ |
| uuid(26dabcfa-306b-404d-9a6f-630a8405048d), |
| odl |
| ] |
| interface IWMPEvents4 : IWMPEvents3 |
| { |
| void DeviceEstimation( |
| [in] IWMPSyncDevice *device, |
| [in] HRESULT result, |
| [in] LONGLONG used_space, |
| [in] LONGLONG estimated_space); |
| } |
| |
| [ |
| hidden, |
| uuid(6bf52a51-394a-11d3-b153-00c04f79faa6) |
| ] |
| interface _WMPOCXEvents : IDispatch |
| {} |
| |
| [ |
| helpstring("Windows Media Player"), |
| threading(apartment), |
| progid("WMPlayer.OCX.7"), |
| vi_progid("WMPlayer.OCX"), |
| uuid(6bf52a52-394a-11d3-b153-00c04f79faa6) |
| ] |
| coclass WindowsMediaPlayer |
| { |
| [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; |
| } |
| } |