1/*** Autogenerated by WIDL 10.4 from include/wmp.idl - Do not edit ***/
    2
    3#ifdef _WIN32
    4#ifndef __REQUIRED_RPCNDR_H_VERSION__
    5#define __REQUIRED_RPCNDR_H_VERSION__ 475
    6#endif
    7#include <rpc.h>
    8#include <rpcndr.h>
    9#endif
   10
   11#ifndef COM_NO_WINDOWS_H
   12#include <windows.h>
   13#include <ole2.h>
   14#endif
   15
   16#ifndef __wmp_h__
   17#define __wmp_h__
   18
   19/* Forward declarations */
   20
   21#ifndef __IWMPPlaylist_FWD_DEFINED__
   22#define __IWMPPlaylist_FWD_DEFINED__
   23typedef interface IWMPPlaylist IWMPPlaylist;
   24#ifdef __cplusplus
   25interface IWMPPlaylist;
   26#endif /* __cplusplus */
   27#endif
   28
   29#ifndef __IWMPMedia_FWD_DEFINED__
   30#define __IWMPMedia_FWD_DEFINED__
   31typedef interface IWMPMedia IWMPMedia;
   32#ifdef __cplusplus
   33interface IWMPMedia;
   34#endif /* __cplusplus */
   35#endif
   36
   37#ifndef __IWMPControls_FWD_DEFINED__
   38#define __IWMPControls_FWD_DEFINED__
   39typedef interface IWMPControls IWMPControls;
   40#ifdef __cplusplus
   41interface IWMPControls;
   42#endif /* __cplusplus */
   43#endif
   44
   45#ifndef __IWMPControls2_FWD_DEFINED__
   46#define __IWMPControls2_FWD_DEFINED__
   47typedef interface IWMPControls2 IWMPControls2;
   48#ifdef __cplusplus
   49interface IWMPControls2;
   50#endif /* __cplusplus */
   51#endif
   52
   53#ifndef __IWMPRemoteMediaServices_FWD_DEFINED__
   54#define __IWMPRemoteMediaServices_FWD_DEFINED__
   55typedef interface IWMPRemoteMediaServices IWMPRemoteMediaServices;
   56#ifdef __cplusplus
   57interface IWMPRemoteMediaServices;
   58#endif /* __cplusplus */
   59#endif
   60
   61#ifndef __IWMPSettings_FWD_DEFINED__
   62#define __IWMPSettings_FWD_DEFINED__
   63typedef interface IWMPSettings IWMPSettings;
   64#ifdef __cplusplus
   65interface IWMPSettings;
   66#endif /* __cplusplus */
   67#endif
   68
   69#ifndef __IWMPStringCollection_FWD_DEFINED__
   70#define __IWMPStringCollection_FWD_DEFINED__
   71typedef interface IWMPStringCollection IWMPStringCollection;
   72#ifdef __cplusplus
   73interface IWMPStringCollection;
   74#endif /* __cplusplus */
   75#endif
   76
   77#ifndef __IWMPMediaCollection_FWD_DEFINED__
   78#define __IWMPMediaCollection_FWD_DEFINED__
   79typedef interface IWMPMediaCollection IWMPMediaCollection;
   80#ifdef __cplusplus
   81interface IWMPMediaCollection;
   82#endif /* __cplusplus */
   83#endif
   84
   85#ifndef __IWMPPlaylistArray_FWD_DEFINED__
   86#define __IWMPPlaylistArray_FWD_DEFINED__
   87typedef interface IWMPPlaylistArray IWMPPlaylistArray;
   88#ifdef __cplusplus
   89interface IWMPPlaylistArray;
   90#endif /* __cplusplus */
   91#endif
   92
   93#ifndef __IWMPPlaylistCollection_FWD_DEFINED__
   94#define __IWMPPlaylistCollection_FWD_DEFINED__
   95typedef interface IWMPPlaylistCollection IWMPPlaylistCollection;
   96#ifdef __cplusplus
   97interface IWMPPlaylistCollection;
   98#endif /* __cplusplus */
   99#endif
  100
  101#ifndef __IWMPNetwork_FWD_DEFINED__
  102#define __IWMPNetwork_FWD_DEFINED__
  103typedef interface IWMPNetwork IWMPNetwork;
  104#ifdef __cplusplus
  105interface IWMPNetwork;
  106#endif /* __cplusplus */
  107#endif
  108
  109#ifndef __IWMPCdrom_FWD_DEFINED__
  110#define __IWMPCdrom_FWD_DEFINED__
  111typedef interface IWMPCdrom IWMPCdrom;
  112#ifdef __cplusplus
  113interface IWMPCdrom;
  114#endif /* __cplusplus */
  115#endif
  116
  117#ifndef __IWMPCdromCollection_FWD_DEFINED__
  118#define __IWMPCdromCollection_FWD_DEFINED__
  119typedef interface IWMPCdromCollection IWMPCdromCollection;
  120#ifdef __cplusplus
  121interface IWMPCdromCollection;
  122#endif /* __cplusplus */
  123#endif
  124
  125#ifndef __IWMPDVD_FWD_DEFINED__
  126#define __IWMPDVD_FWD_DEFINED__
  127typedef interface IWMPDVD IWMPDVD;
  128#ifdef __cplusplus
  129interface IWMPDVD;
  130#endif /* __cplusplus */
  131#endif
  132
  133#ifndef __IWMPClosedCaption_FWD_DEFINED__
  134#define __IWMPClosedCaption_FWD_DEFINED__
  135typedef interface IWMPClosedCaption IWMPClosedCaption;
  136#ifdef __cplusplus
  137interface IWMPClosedCaption;
  138#endif /* __cplusplus */
  139#endif
  140
  141#ifndef __IWMPErrorItem_FWD_DEFINED__
  142#define __IWMPErrorItem_FWD_DEFINED__
  143typedef interface IWMPErrorItem IWMPErrorItem;
  144#ifdef __cplusplus
  145interface IWMPErrorItem;
  146#endif /* __cplusplus */
  147#endif
  148
  149#ifndef __IWMPMedia2_FWD_DEFINED__
  150#define __IWMPMedia2_FWD_DEFINED__
  151typedef interface IWMPMedia2 IWMPMedia2;
  152#ifdef __cplusplus
  153interface IWMPMedia2;
  154#endif /* __cplusplus */
  155#endif
  156
  157#ifndef __IWMPMedia3_FWD_DEFINED__
  158#define __IWMPMedia3_FWD_DEFINED__
  159typedef interface IWMPMedia3 IWMPMedia3;
  160#ifdef __cplusplus
  161interface IWMPMedia3;
  162#endif /* __cplusplus */
  163#endif
  164
  165#ifndef __IWMPError_FWD_DEFINED__
  166#define __IWMPError_FWD_DEFINED__
  167typedef interface IWMPError IWMPError;
  168#ifdef __cplusplus
  169interface IWMPError;
  170#endif /* __cplusplus */
  171#endif
  172
  173#ifndef __IWMPPlayerApplication_FWD_DEFINED__
  174#define __IWMPPlayerApplication_FWD_DEFINED__
  175typedef interface IWMPPlayerApplication IWMPPlayerApplication;
  176#ifdef __cplusplus
  177interface IWMPPlayerApplication;
  178#endif /* __cplusplus */
  179#endif
  180
  181#ifndef __IWMPCore_FWD_DEFINED__
  182#define __IWMPCore_FWD_DEFINED__
  183typedef interface IWMPCore IWMPCore;
  184#ifdef __cplusplus
  185interface IWMPCore;
  186#endif /* __cplusplus */
  187#endif
  188
  189#ifndef __IWMPCore2_FWD_DEFINED__
  190#define __IWMPCore2_FWD_DEFINED__
  191typedef interface IWMPCore2 IWMPCore2;
  192#ifdef __cplusplus
  193interface IWMPCore2;
  194#endif /* __cplusplus */
  195#endif
  196
  197#ifndef __IWMPCore3_FWD_DEFINED__
  198#define __IWMPCore3_FWD_DEFINED__
  199typedef interface IWMPCore3 IWMPCore3;
  200#ifdef __cplusplus
  201interface IWMPCore3;
  202#endif /* __cplusplus */
  203#endif
  204
  205#ifndef __IWMPPlayer4_FWD_DEFINED__
  206#define __IWMPPlayer4_FWD_DEFINED__
  207typedef interface IWMPPlayer4 IWMPPlayer4;
  208#ifdef __cplusplus
  209interface IWMPPlayer4;
  210#endif /* __cplusplus */
  211#endif
  212
  213#ifndef __IWMPPlayer_FWD_DEFINED__
  214#define __IWMPPlayer_FWD_DEFINED__
  215typedef interface IWMPPlayer IWMPPlayer;
  216#ifdef __cplusplus
  217interface IWMPPlayer;
  218#endif /* __cplusplus */
  219#endif
  220
  221#ifndef __IWMPSyncDevice_FWD_DEFINED__
  222#define __IWMPSyncDevice_FWD_DEFINED__
  223typedef interface IWMPSyncDevice IWMPSyncDevice;
  224#ifdef __cplusplus
  225interface IWMPSyncDevice;
  226#endif /* __cplusplus */
  227#endif
  228
  229#ifndef __IWMPSyncDevice2_FWD_DEFINED__
  230#define __IWMPSyncDevice2_FWD_DEFINED__
  231typedef interface IWMPSyncDevice2 IWMPSyncDevice2;
  232#ifdef __cplusplus
  233interface IWMPSyncDevice2;
  234#endif /* __cplusplus */
  235#endif
  236
  237#ifndef __IWMPCdromRip_FWD_DEFINED__
  238#define __IWMPCdromRip_FWD_DEFINED__
  239typedef interface IWMPCdromRip IWMPCdromRip;
  240#ifdef __cplusplus
  241interface IWMPCdromRip;
  242#endif /* __cplusplus */
  243#endif
  244
  245#ifndef __IWMPCdromBurn_FWD_DEFINED__
  246#define __IWMPCdromBurn_FWD_DEFINED__
  247typedef interface IWMPCdromBurn IWMPCdromBurn;
  248#ifdef __cplusplus
  249interface IWMPCdromBurn;
  250#endif /* __cplusplus */
  251#endif
  252
  253#ifndef __IWMPLibrary_FWD_DEFINED__
  254#define __IWMPLibrary_FWD_DEFINED__
  255typedef interface IWMPLibrary IWMPLibrary;
  256#ifdef __cplusplus
  257interface IWMPLibrary;
  258#endif /* __cplusplus */
  259#endif
  260
  261#ifndef __IWMPEvents_FWD_DEFINED__
  262#define __IWMPEvents_FWD_DEFINED__
  263typedef interface IWMPEvents IWMPEvents;
  264#ifdef __cplusplus
  265interface IWMPEvents;
  266#endif /* __cplusplus */
  267#endif
  268
  269#ifndef __IWMPEvents2_FWD_DEFINED__
  270#define __IWMPEvents2_FWD_DEFINED__
  271typedef interface IWMPEvents2 IWMPEvents2;
  272#ifdef __cplusplus
  273interface IWMPEvents2;
  274#endif /* __cplusplus */
  275#endif
  276
  277#ifndef __IWMPEvents3_FWD_DEFINED__
  278#define __IWMPEvents3_FWD_DEFINED__
  279typedef interface IWMPEvents3 IWMPEvents3;
  280#ifdef __cplusplus
  281interface IWMPEvents3;
  282#endif /* __cplusplus */
  283#endif
  284
  285#ifndef __IWMPEvents4_FWD_DEFINED__
  286#define __IWMPEvents4_FWD_DEFINED__
  287typedef interface IWMPEvents4 IWMPEvents4;
  288#ifdef __cplusplus
  289interface IWMPEvents4;
  290#endif /* __cplusplus */
  291#endif
  292
  293#ifndef ___WMPOCXEvents_FWD_DEFINED__
  294#define ___WMPOCXEvents_FWD_DEFINED__
  295typedef interface _WMPOCXEvents _WMPOCXEvents;
  296#ifdef __cplusplus
  297interface _WMPOCXEvents;
  298#endif /* __cplusplus */
  299#endif
  300
  301#ifndef __WindowsMediaPlayer_FWD_DEFINED__
  302#define __WindowsMediaPlayer_FWD_DEFINED__
  303#ifdef __cplusplus
  304typedef class WindowsMediaPlayer WindowsMediaPlayer;
  305#else
  306typedef struct WindowsMediaPlayer WindowsMediaPlayer;
  307#endif /* defined __cplusplus */
  308#endif /* defined __WindowsMediaPlayer_FWD_DEFINED__ */
  309
  310/* Headers for imported files */
  311
  312#include <oaidl.h>
  313#include <ocidl.h>
  314
  315#ifdef __cplusplus
  316extern "C" {
  317#endif
  318
  319#ifndef __WMPLib_LIBRARY_DEFINED__
  320#define __WMPLib_LIBRARY_DEFINED__
  321
  322DEFINE_GUID(LIBID_WMPLib, 0x6bf52a50, 0x394a, 0x11d3, 0xb1,0x53, 0x00,0xc0,0x4f,0x79,0xfa,0xa6);
  323
  324typedef enum __WIDL_wmp_generated_name_00000020 {
  325    wmposUndefined = 0,
  326    wmposPlaylistChanging = 1,
  327    wmposPlaylistLocating = 2,
  328    wmposPlaylistConnecting = 3,
  329    wmposPlaylistLoading = 4,
  330    wmposPlaylistOpening = 5,
  331    wmposPlaylistOpenNoMedia = 6,
  332    wmposPlaylistChanged = 7,
  333    wmposMediaChanging = 8,
  334    wmposMediaLocating = 9,
  335    wmposMediaConnecting = 10,
  336    wmposMediaLoading = 11,
  337    wmposMediaOpening = 12,
  338    wmposMediaOpen = 13,
  339    wmposBeginCodecAcquisition = 14,
  340    wmposEndCodecAcquisition = 15,
  341    wmposBeginLicenseAcquisition = 16,
  342    wmposEndLicenseAcquisition = 17,
  343    wmposBeginIndividualization = 18,
  344    wmposEndIndividualization = 19,
  345    wmposMediaWaiting = 20,
  346    wmposOpeningUnknownURL = 21
  347} WMPOpenState;
  348typedef enum __WIDL_wmp_generated_name_00000021 {
  349    wmppsUndefined = 0,
  350    wmppsStopped = 1,
  351    wmppsPaused = 2,
  352    wmppsPlaying = 3,
  353    wmppsScanForward = 4,
  354    wmppsScanReverse = 5,
  355    wmppsBuffering = 6,
  356    wmppsWaiting = 7,
  357    wmppsMediaEnded = 8,
  358    wmppsTransitioning = 9,
  359    wmppsReady = 10,
  360    wmppsReconnecting = 11,
  361    wmppsLast = 12
  362} WMPPlayState;
  363typedef enum __WIDL_wmp_generated_name_00000022 {
  364    wmplcUnknown = 0,
  365    wmplcClear = 1,
  366    wmplcInfoChange = 2,
  367    wmplcMove = 3,
  368    wmplcDelete = 4,
  369    wmplcInsert = 5,
  370    wmplcAppend = 6,
  371    wmplcPrivate = 7,
  372    wmplcNameChange = 8,
  373    wmplcMorph = 9,
  374    wmplcSort = 10,
  375    wmplcLast = 11
  376} WMPPlaylistChangeEventType;
  377typedef enum __WIDL_wmp_generated_name_00000023 {
  378    wmpdsUnknown = 0,
  379    wmpdsPartnershipExists = 1,
  380    wmpdsPartnershipDeclined = 2,
  381    wmpdsPartnershipAnother = 3,
  382    wmpdsManualDevice = 4,
  383    wmpdsNewDevice = 5,
  384    wmpdsLast = 6
  385} WMPDeviceStatus;
  386typedef enum __WIDL_wmp_generated_name_00000024 {
  387    wmpssUnknown = 0,
  388    wmpssSynchronizing = 1,
  389    wmpssStopped = 2,
  390    wmpssEstimating = 3,
  391    wmpssLast = 4
  392} WMPSyncState;
  393typedef enum __WIDL_wmp_generated_name_00000025 {
  394    wmprsUnknown = 0,
  395    wmprsRipping = 1,
  396    wmprsStopped = 2
  397} WMPRipState;
  398typedef enum __WIDL_wmp_generated_name_00000026 {
  399    wmpbfAudioCD = 0,
  400    wmpbfDataCD = 1
  401} WMPBurnFormat;
  402typedef enum __WIDL_wmp_generated_name_00000027 {
  403    wmpbsUnknown = 0,
  404    wmpbsBusy = 1,
  405    wmpbsReady = 2,
  406    wmpbsWaitingForDisc = 3,
  407    wmpbsRefreshStatusPending = 4,
  408    wmpbsPreparingToBurn = 5,
  409    wmpbsBurning = 6,
  410    wmpbsStopped = 7,
  411    wmpbsErasing = 8,
  412    wmpbsDownloading = 9
  413} WMPBurnState;
  414typedef enum __WIDL_wmp_generated_name_00000028 {
  415    wmpltUnknown = 0,
  416    wmpltAll = 1,
  417    wmpltLocal = 2,
  418    wmpltRemote = 3,
  419    wmpltDisc = 4,
  420    wmpltPortableDevice = 5
  421} WMPLibraryType;
  422typedef enum __WIDL_wmp_generated_name_00000029 {
  423    wmpfssUnknown = 0,
  424    wmpfssScanning = 1,
  425    wmpfssUpdating = 2,
  426    wmpfssStopped = 3
  427} WMPFolderScanState;
  428typedef enum __WIDL_wmp_generated_name_0000002A {
  429    wmpsccetUnknown = 0,
  430    wmpsccetInsert = 1,
  431    wmpsccetChange = 2,
  432    wmpsccetDelete = 3,
  433    wmpsccetClear = 4,
  434    wmpsccetBeginUpdates = 5,
  435    wmpsccetEndUpdates = 6
  436} WMPStringCollectionChangeEventType;
  437#ifndef __IWMPMedia_FWD_DEFINED__
  438#define __IWMPMedia_FWD_DEFINED__
  439typedef interface IWMPMedia IWMPMedia;
  440#ifdef __cplusplus
  441interface IWMPMedia;
  442#endif /* __cplusplus */
  443#endif
  444
  445/*****************************************************************************
  446 * IWMPPlaylist interface
  447 */
  448#ifndef __IWMPPlaylist_INTERFACE_DEFINED__
  449#define __IWMPPlaylist_INTERFACE_DEFINED__
  450
  451DEFINE_GUID(IID_IWMPPlaylist, 0xd5f0f4f1, 0x130c, 0x11d3, 0xb1,0x4e, 0x00,0xc0,0x4f,0x79,0xfa,0xa6);
  452#if defined(__cplusplus) && !defined(CINTERFACE)
  453MIDL_INTERFACE("d5f0f4f1-130c-11d3-b14e-00c04f79faa6")
  454IWMPPlaylist : public IDispatch
  455{
  456    virtual HRESULT STDMETHODCALLTYPE get_count(
  457        LONG *plCount) = 0;
  458
  459    virtual HRESULT STDMETHODCALLTYPE get_name(
  460        BSTR *pbstrName) = 0;
  461
  462    virtual HRESULT STDMETHODCALLTYPE put_name(
  463        BSTR pbstrName) = 0;
  464
  465    virtual HRESULT STDMETHODCALLTYPE get_attributeCount(
  466        LONG *plCount) = 0;
  467
  468    virtual HRESULT STDMETHODCALLTYPE get_attributeName(
  469        LONG lIndex,
  470        BSTR *pbstrAttributeName) = 0;
  471
  472    virtual HRESULT STDMETHODCALLTYPE get_Item(
  473        LONG lIndex,
  474        IWMPMedia **ppIWMPMedia) = 0;
  475
  476    virtual HRESULT STDMETHODCALLTYPE getItemInfo(
  477        BSTR bstrName,
  478        BSTR *pbstrVal) = 0;
  479
  480    virtual HRESULT STDMETHODCALLTYPE setItemInfo(
  481        BSTR bstrName,
  482        BSTR bstrValue) = 0;
  483
  484    virtual HRESULT STDMETHODCALLTYPE get_isIdentical(
  485        IWMPPlaylist *pIWMPPlaylist,
  486        VARIANT_BOOL *pvbool) = 0;
  487
  488    virtual HRESULT STDMETHODCALLTYPE clear(
  489        ) = 0;
  490
  491    virtual HRESULT STDMETHODCALLTYPE insertItem(
  492        LONG lIndex,
  493        IWMPMedia *pIWMPMedia) = 0;
  494
  495    virtual HRESULT STDMETHODCALLTYPE appendItem(
  496        IWMPMedia *pIWMPMedia) = 0;
  497
  498    virtual HRESULT STDMETHODCALLTYPE removeItem(
  499        IWMPMedia *pIWMPMedia) = 0;
  500
  501    virtual HRESULT STDMETHODCALLTYPE moveItem(
  502        LONG lIndexOld,
  503        LONG lIndexNew) = 0;
  504
  505};
  506#ifdef __CRT_UUID_DECL
  507__CRT_UUID_DECL(IWMPPlaylist, 0xd5f0f4f1, 0x130c, 0x11d3, 0xb1,0x4e, 0x00,0xc0,0x4f,0x79,0xfa,0xa6)
  508#endif
  509#else
  510typedef struct IWMPPlaylistVtbl {
  511    BEGIN_INTERFACE
  512
  513    /*** IUnknown methods ***/
  514    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  515        IWMPPlaylist *This,
  516        REFIID riid,
  517        void **ppvObject);
  518
  519    ULONG (STDMETHODCALLTYPE *AddRef)(
  520        IWMPPlaylist *This);
  521
  522    ULONG (STDMETHODCALLTYPE *Release)(
  523        IWMPPlaylist *This);
  524
  525    /*** IDispatch methods ***/
  526    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
  527        IWMPPlaylist *This,
  528        UINT *pctinfo);
  529
  530    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
  531        IWMPPlaylist *This,
  532        UINT iTInfo,
  533        LCID lcid,
  534        ITypeInfo **ppTInfo);
  535
  536    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
  537        IWMPPlaylist *This,
  538        REFIID riid,
  539        LPOLESTR *rgszNames,
  540        UINT cNames,
  541        LCID lcid,
  542        DISPID *rgDispId);
  543
  544    HRESULT (STDMETHODCALLTYPE *Invoke)(
  545        IWMPPlaylist *This,
  546        DISPID dispIdMember,
  547        REFIID riid,
  548        LCID lcid,
  549        WORD wFlags,
  550        DISPPARAMS *pDispParams,
  551        VARIANT *pVarResult,
  552        EXCEPINFO *pExcepInfo,
  553        UINT *puArgErr);
  554
  555    /*** IWMPPlaylist methods ***/
  556    HRESULT (STDMETHODCALLTYPE *get_count)(
  557        IWMPPlaylist *This,
  558        LONG *plCount);
  559
  560    HRESULT (STDMETHODCALLTYPE *get_name)(
  561        IWMPPlaylist *This,
  562        BSTR *pbstrName);
  563
  564    HRESULT (STDMETHODCALLTYPE *put_name)(
  565        IWMPPlaylist *This,
  566        BSTR pbstrName);
  567
  568    HRESULT (STDMETHODCALLTYPE *get_attributeCount)(
  569        IWMPPlaylist *This,
  570        LONG *plCount);
  571
  572    HRESULT (STDMETHODCALLTYPE *get_attributeName)(
  573        IWMPPlaylist *This,
  574        LONG lIndex,
  575        BSTR *pbstrAttributeName);
  576
  577    HRESULT (STDMETHODCALLTYPE *get_Item)(
  578        IWMPPlaylist *This,
  579        LONG lIndex,
  580        IWMPMedia **ppIWMPMedia);
  581
  582    HRESULT (STDMETHODCALLTYPE *getItemInfo)(
  583        IWMPPlaylist *This,
  584        BSTR bstrName,
  585        BSTR *pbstrVal);
  586
  587    HRESULT (STDMETHODCALLTYPE *setItemInfo)(
  588        IWMPPlaylist *This,
  589        BSTR bstrName,
  590        BSTR bstrValue);
  591
  592    HRESULT (STDMETHODCALLTYPE *get_isIdentical)(
  593        IWMPPlaylist *This,
  594        IWMPPlaylist *pIWMPPlaylist,
  595        VARIANT_BOOL *pvbool);
  596
  597    HRESULT (STDMETHODCALLTYPE *clear)(
  598        IWMPPlaylist *This);
  599
  600    HRESULT (STDMETHODCALLTYPE *insertItem)(
  601        IWMPPlaylist *This,
  602        LONG lIndex,
  603        IWMPMedia *pIWMPMedia);
  604
  605    HRESULT (STDMETHODCALLTYPE *appendItem)(
  606        IWMPPlaylist *This,
  607        IWMPMedia *pIWMPMedia);
  608
  609    HRESULT (STDMETHODCALLTYPE *removeItem)(
  610        IWMPPlaylist *This,
  611        IWMPMedia *pIWMPMedia);
  612
  613    HRESULT (STDMETHODCALLTYPE *moveItem)(
  614        IWMPPlaylist *This,
  615        LONG lIndexOld,
  616        LONG lIndexNew);
  617
  618    END_INTERFACE
  619} IWMPPlaylistVtbl;
  620
  621interface IWMPPlaylist {
  622    CONST_VTBL IWMPPlaylistVtbl* lpVtbl;
  623};
  624
  625#ifdef COBJMACROS
  626#ifndef WIDL_C_INLINE_WRAPPERS
  627/*** IUnknown methods ***/
  628#define IWMPPlaylist_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  629#define IWMPPlaylist_AddRef(This) (This)->lpVtbl->AddRef(This)
  630#define IWMPPlaylist_Release(This) (This)->lpVtbl->Release(This)
  631/*** IDispatch methods ***/
  632#define IWMPPlaylist_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  633#define IWMPPlaylist_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  634#define IWMPPlaylist_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  635#define IWMPPlaylist_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  636/*** IWMPPlaylist methods ***/
  637#define IWMPPlaylist_get_count(This,plCount) (This)->lpVtbl->get_count(This,plCount)
  638#define IWMPPlaylist_get_name(This,pbstrName) (This)->lpVtbl->get_name(This,pbstrName)
  639#define IWMPPlaylist_put_name(This,pbstrName) (This)->lpVtbl->put_name(This,pbstrName)
  640#define IWMPPlaylist_get_attributeCount(This,plCount) (This)->lpVtbl->get_attributeCount(This,plCount)
  641#define IWMPPlaylist_get_attributeName(This,lIndex,pbstrAttributeName) (This)->lpVtbl->get_attributeName(This,lIndex,pbstrAttributeName)
  642#define IWMPPlaylist_get_Item(This,lIndex,ppIWMPMedia) (This)->lpVtbl->get_Item(This,lIndex,ppIWMPMedia)
  643#define IWMPPlaylist_getItemInfo(This,bstrName,pbstrVal) (This)->lpVtbl->getItemInfo(This,bstrName,pbstrVal)
  644#define IWMPPlaylist_setItemInfo(This,bstrName,bstrValue) (This)->lpVtbl->setItemInfo(This,bstrName,bstrValue)
  645#define IWMPPlaylist_get_isIdentical(This,pIWMPPlaylist,pvbool) (This)->lpVtbl->get_isIdentical(This,pIWMPPlaylist,pvbool)
  646#define IWMPPlaylist_clear(This) (This)->lpVtbl->clear(This)
  647#define IWMPPlaylist_insertItem(This,lIndex,pIWMPMedia) (This)->lpVtbl->insertItem(This,lIndex,pIWMPMedia)
  648#define IWMPPlaylist_appendItem(This,pIWMPMedia) (This)->lpVtbl->appendItem(This,pIWMPMedia)
  649#define IWMPPlaylist_removeItem(This,pIWMPMedia) (This)->lpVtbl->removeItem(This,pIWMPMedia)
  650#define IWMPPlaylist_moveItem(This,lIndexOld,lIndexNew) (This)->lpVtbl->moveItem(This,lIndexOld,lIndexNew)
  651#else
  652/*** IUnknown methods ***/
  653static inline HRESULT IWMPPlaylist_QueryInterface(IWMPPlaylist* This,REFIID riid,void **ppvObject) {
  654    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  655}
  656static inline ULONG IWMPPlaylist_AddRef(IWMPPlaylist* This) {
  657    return This->lpVtbl->AddRef(This);
  658}
  659static inline ULONG IWMPPlaylist_Release(IWMPPlaylist* This) {
  660    return This->lpVtbl->Release(This);
  661}
  662/*** IDispatch methods ***/
  663static inline HRESULT IWMPPlaylist_GetTypeInfoCount(IWMPPlaylist* This,UINT *pctinfo) {
  664    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
  665}
  666static inline HRESULT IWMPPlaylist_GetTypeInfo(IWMPPlaylist* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
  667    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
  668}
  669static inline HRESULT IWMPPlaylist_GetIDsOfNames(IWMPPlaylist* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
  670    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
  671}
  672static inline HRESULT IWMPPlaylist_Invoke(IWMPPlaylist* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
  673    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
  674}
  675/*** IWMPPlaylist methods ***/
  676static inline HRESULT IWMPPlaylist_get_count(IWMPPlaylist* This,LONG *plCount) {
  677    return This->lpVtbl->get_count(This,plCount);
  678}
  679static inline HRESULT IWMPPlaylist_get_name(IWMPPlaylist* This,BSTR *pbstrName) {
  680    return This->lpVtbl->get_name(This,pbstrName);
  681}
  682static inline HRESULT IWMPPlaylist_put_name(IWMPPlaylist* This,BSTR pbstrName) {
  683    return This->lpVtbl->put_name(This,pbstrName);
  684}
  685static inline HRESULT IWMPPlaylist_get_attributeCount(IWMPPlaylist* This,LONG *plCount) {
  686    return This->lpVtbl->get_attributeCount(This,plCount);
  687}
  688static inline HRESULT IWMPPlaylist_get_attributeName(IWMPPlaylist* This,LONG lIndex,BSTR *pbstrAttributeName) {
  689    return This->lpVtbl->get_attributeName(This,lIndex,pbstrAttributeName);
  690}
  691static inline HRESULT IWMPPlaylist_get_Item(IWMPPlaylist* This,LONG lIndex,IWMPMedia **ppIWMPMedia) {
  692    return This->lpVtbl->get_Item(This,lIndex,ppIWMPMedia);
  693}
  694static inline HRESULT IWMPPlaylist_getItemInfo(IWMPPlaylist* This,BSTR bstrName,BSTR *pbstrVal) {
  695    return This->lpVtbl->getItemInfo(This,bstrName,pbstrVal);
  696}
  697static inline HRESULT IWMPPlaylist_setItemInfo(IWMPPlaylist* This,BSTR bstrName,BSTR bstrValue) {
  698    return This->lpVtbl->setItemInfo(This,bstrName,bstrValue);
  699}
  700static inline HRESULT IWMPPlaylist_get_isIdentical(IWMPPlaylist* This,IWMPPlaylist *pIWMPPlaylist,VARIANT_BOOL *pvbool) {
  701    return This->lpVtbl->get_isIdentical(This,pIWMPPlaylist,pvbool);
  702}
  703static inline HRESULT IWMPPlaylist_clear(IWMPPlaylist* This) {
  704    return This->lpVtbl->clear(This);
  705}
  706static inline HRESULT IWMPPlaylist_insertItem(IWMPPlaylist* This,LONG lIndex,IWMPMedia *pIWMPMedia) {
  707    return This->lpVtbl->insertItem(This,lIndex,pIWMPMedia);
  708}
  709static inline HRESULT IWMPPlaylist_appendItem(IWMPPlaylist* This,IWMPMedia *pIWMPMedia) {
  710    return This->lpVtbl->appendItem(This,pIWMPMedia);
  711}
  712static inline HRESULT IWMPPlaylist_removeItem(IWMPPlaylist* This,IWMPMedia *pIWMPMedia) {
  713    return This->lpVtbl->removeItem(This,pIWMPMedia);
  714}
  715static inline HRESULT IWMPPlaylist_moveItem(IWMPPlaylist* This,LONG lIndexOld,LONG lIndexNew) {
  716    return This->lpVtbl->moveItem(This,lIndexOld,lIndexNew);
  717}
  718#endif
  719#endif
  720
  721#endif
  722
  723
  724#endif  /* __IWMPPlaylist_INTERFACE_DEFINED__ */
  725
  726/*****************************************************************************
  727 * IWMPMedia interface
  728 */
  729#ifndef __IWMPMedia_INTERFACE_DEFINED__
  730#define __IWMPMedia_INTERFACE_DEFINED__
  731
  732DEFINE_GUID(IID_IWMPMedia, 0x94d55e95, 0x3fac, 0x11d3, 0xb1,0x55, 0x00,0xc0,0x4f,0x79,0xfa,0xa6);
  733#if defined(__cplusplus) && !defined(CINTERFACE)
  734MIDL_INTERFACE("94d55e95-3fac-11d3-b155-00c04f79faa6")
  735IWMPMedia : public IDispatch
  736{
  737    virtual HRESULT STDMETHODCALLTYPE get_isIdentical(
  738        IWMPMedia *pIWMPMedia,
  739        VARIANT_BOOL *pvbool) = 0;
  740
  741    virtual HRESULT STDMETHODCALLTYPE get_sourceURL(
  742        BSTR *pbstrSourceURL) = 0;
  743
  744    virtual HRESULT STDMETHODCALLTYPE get_name(
  745        BSTR *pbstrName) = 0;
  746
  747    virtual HRESULT STDMETHODCALLTYPE put_name(
  748        BSTR pbstrName) = 0;
  749
  750    virtual HRESULT STDMETHODCALLTYPE get_imageSourceWidth(
  751        LONG *pWidth) = 0;
  752
  753    virtual HRESULT STDMETHODCALLTYPE get_imageSourceHeight(
  754        LONG *pHeight) = 0;
  755
  756    virtual HRESULT STDMETHODCALLTYPE get_markerCount(
  757        LONG *pMarkerCount) = 0;
  758
  759    virtual HRESULT STDMETHODCALLTYPE getMarkerTime(
  760        LONG MarkerNum,
  761        double *pMarkerTime) = 0;
  762
  763    virtual HRESULT STDMETHODCALLTYPE getMarkerName(
  764        LONG MarkerNum,
  765        BSTR *pbstrMarkerName) = 0;
  766
  767    virtual HRESULT STDMETHODCALLTYPE get_duration(
  768        double *pDuration) = 0;
  769
  770    virtual HRESULT STDMETHODCALLTYPE get_durationString(
  771        BSTR *pbstrDuration) = 0;
  772
  773    virtual HRESULT STDMETHODCALLTYPE get_attributeCount(
  774        LONG *plCount) = 0;
  775
  776    virtual HRESULT STDMETHODCALLTYPE getAttributeName(
  777        LONG lIndex,
  778        BSTR *pbstrItemName) = 0;
  779
  780    virtual HRESULT STDMETHODCALLTYPE getItemInfo(
  781        BSTR bstrItemName,
  782        BSTR *pbstrVal) = 0;
  783
  784    virtual HRESULT STDMETHODCALLTYPE setItemInfo(
  785        BSTR bstrItemName,
  786        BSTR bstrVal) = 0;
  787
  788    virtual HRESULT STDMETHODCALLTYPE getItemInfoByAtom(
  789        LONG lAtom,
  790        BSTR *pbstrVal) = 0;
  791
  792    virtual HRESULT STDMETHODCALLTYPE isMemberOf(
  793        IWMPPlaylist *pPlaylist,
  794        VARIANT_BOOL *pvarfIsMemberOf) = 0;
  795
  796    virtual HRESULT STDMETHODCALLTYPE isReadOnlyItem(
  797        BSTR bstrItemName,
  798        VARIANT_BOOL *pvarfIsReadOnly) = 0;
  799
  800};
  801#ifdef __CRT_UUID_DECL
  802__CRT_UUID_DECL(IWMPMedia, 0x94d55e95, 0x3fac, 0x11d3, 0xb1,0x55, 0x00,0xc0,0x4f,0x79,0xfa,0xa6)
  803#endif
  804#else
  805typedef struct IWMPMediaVtbl {
  806    BEGIN_INTERFACE
  807
  808    /*** IUnknown methods ***/
  809    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
  810        IWMPMedia *This,
  811        REFIID riid,
  812        void **ppvObject);
  813
  814    ULONG (STDMETHODCALLTYPE *AddRef)(
  815        IWMPMedia *This);
  816
  817    ULONG (STDMETHODCALLTYPE *Release)(
  818        IWMPMedia *This);
  819
  820    /*** IDispatch methods ***/
  821    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
  822        IWMPMedia *This,
  823        UINT *pctinfo);
  824
  825    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
  826        IWMPMedia *This,
  827        UINT iTInfo,
  828        LCID lcid,
  829        ITypeInfo **ppTInfo);
  830
  831    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
  832        IWMPMedia *This,
  833        REFIID riid,
  834        LPOLESTR *rgszNames,
  835        UINT cNames,
  836        LCID lcid,
  837        DISPID *rgDispId);
  838
  839    HRESULT (STDMETHODCALLTYPE *Invoke)(
  840        IWMPMedia *This,
  841        DISPID dispIdMember,
  842        REFIID riid,
  843        LCID lcid,
  844        WORD wFlags,
  845        DISPPARAMS *pDispParams,
  846        VARIANT *pVarResult,
  847        EXCEPINFO *pExcepInfo,
  848        UINT *puArgErr);
  849
  850    /*** IWMPMedia methods ***/
  851    HRESULT (STDMETHODCALLTYPE *get_isIdentical)(
  852        IWMPMedia *This,
  853        IWMPMedia *pIWMPMedia,
  854        VARIANT_BOOL *pvbool);
  855
  856    HRESULT (STDMETHODCALLTYPE *get_sourceURL)(
  857        IWMPMedia *This,
  858        BSTR *pbstrSourceURL);
  859
  860    HRESULT (STDMETHODCALLTYPE *get_name)(
  861        IWMPMedia *This,
  862        BSTR *pbstrName);
  863
  864    HRESULT (STDMETHODCALLTYPE *put_name)(
  865        IWMPMedia *This,
  866        BSTR pbstrName);
  867
  868    HRESULT (STDMETHODCALLTYPE *get_imageSourceWidth)(
  869        IWMPMedia *This,
  870        LONG *pWidth);
  871
  872    HRESULT (STDMETHODCALLTYPE *get_imageSourceHeight)(
  873        IWMPMedia *This,
  874        LONG *pHeight);
  875
  876    HRESULT (STDMETHODCALLTYPE *get_markerCount)(
  877        IWMPMedia *This,
  878        LONG *pMarkerCount);
  879
  880    HRESULT (STDMETHODCALLTYPE *getMarkerTime)(
  881        IWMPMedia *This,
  882        LONG MarkerNum,
  883        double *pMarkerTime);
  884
  885    HRESULT (STDMETHODCALLTYPE *getMarkerName)(
  886        IWMPMedia *This,
  887        LONG MarkerNum,
  888        BSTR *pbstrMarkerName);
  889
  890    HRESULT (STDMETHODCALLTYPE *get_duration)(
  891        IWMPMedia *This,
  892        double *pDuration);
  893
  894    HRESULT (STDMETHODCALLTYPE *get_durationString)(
  895        IWMPMedia *This,
  896        BSTR *pbstrDuration);
  897
  898    HRESULT (STDMETHODCALLTYPE *get_attributeCount)(
  899        IWMPMedia *This,
  900        LONG *plCount);
  901
  902    HRESULT (STDMETHODCALLTYPE *getAttributeName)(
  903        IWMPMedia *This,
  904        LONG lIndex,
  905        BSTR *pbstrItemName);
  906
  907    HRESULT (STDMETHODCALLTYPE *getItemInfo)(
  908        IWMPMedia *This,
  909        BSTR bstrItemName,
  910        BSTR *pbstrVal);
  911
  912    HRESULT (STDMETHODCALLTYPE *setItemInfo)(
  913        IWMPMedia *This,
  914        BSTR bstrItemName,
  915        BSTR bstrVal);
  916
  917    HRESULT (STDMETHODCALLTYPE *getItemInfoByAtom)(
  918        IWMPMedia *This,
  919        LONG lAtom,
  920        BSTR *pbstrVal);
  921
  922    HRESULT (STDMETHODCALLTYPE *isMemberOf)(
  923        IWMPMedia *This,
  924        IWMPPlaylist *pPlaylist,
  925        VARIANT_BOOL *pvarfIsMemberOf);
  926
  927    HRESULT (STDMETHODCALLTYPE *isReadOnlyItem)(
  928        IWMPMedia *This,
  929        BSTR bstrItemName,
  930        VARIANT_BOOL *pvarfIsReadOnly);
  931
  932    END_INTERFACE
  933} IWMPMediaVtbl;
  934
  935interface IWMPMedia {
  936    CONST_VTBL IWMPMediaVtbl* lpVtbl;
  937};
  938
  939#ifdef COBJMACROS
  940#ifndef WIDL_C_INLINE_WRAPPERS
  941/*** IUnknown methods ***/
  942#define IWMPMedia_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  943#define IWMPMedia_AddRef(This) (This)->lpVtbl->AddRef(This)
  944#define IWMPMedia_Release(This) (This)->lpVtbl->Release(This)
  945/*** IDispatch methods ***/
  946#define IWMPMedia_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  947#define IWMPMedia_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  948#define IWMPMedia_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  949#define IWMPMedia_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  950/*** IWMPMedia methods ***/
  951#define IWMPMedia_get_isIdentical(This,pIWMPMedia,pvbool) (This)->lpVtbl->get_isIdentical(This,pIWMPMedia,pvbool)
  952#define IWMPMedia_get_sourceURL(This,pbstrSourceURL) (This)->lpVtbl->get_sourceURL(This,pbstrSourceURL)
  953#define IWMPMedia_get_name(This,pbstrName) (This)->lpVtbl->get_name(This,pbstrName)
  954#define IWMPMedia_put_name(This,pbstrName) (This)->lpVtbl->put_name(This,pbstrName)
  955#define IWMPMedia_get_imageSourceWidth(This,pWidth) (This)->lpVtbl->get_imageSourceWidth(This,pWidth)
  956#define IWMPMedia_get_imageSourceHeight(This,pHeight) (This)->lpVtbl->get_imageSourceHeight(This,pHeight)
  957#define IWMPMedia_get_markerCount(This,pMarkerCount) (This)->lpVtbl->get_markerCount(This,pMarkerCount)
  958#define IWMPMedia_getMarkerTime(This,MarkerNum,pMarkerTime) (This)->lpVtbl->getMarkerTime(This,MarkerNum,pMarkerTime)
  959#define IWMPMedia_getMarkerName(This,MarkerNum,pbstrMarkerName) (This)->lpVtbl->getMarkerName(This,MarkerNum,pbstrMarkerName)
  960#define IWMPMedia_get_duration(This,pDuration) (This)->lpVtbl->get_duration(This,pDuration)
  961#define IWMPMedia_get_durationString(This,pbstrDuration) (This)->lpVtbl->get_durationString(This,pbstrDuration)
  962#define IWMPMedia_get_attributeCount(This,plCount) (This)->lpVtbl->get_attributeCount(This,plCount)
  963#define IWMPMedia_getAttributeName(This,lIndex,pbstrItemName) (This)->lpVtbl->getAttributeName(This,lIndex,pbstrItemName)
  964#define IWMPMedia_getItemInfo(This,bstrItemName,pbstrVal) (This)->lpVtbl->getItemInfo(This,bstrItemName,pbstrVal)
  965#define IWMPMedia_setItemInfo(This,bstrItemName,bstrVal) (This)->lpVtbl->setItemInfo(This,bstrItemName,bstrVal)
  966#define IWMPMedia_getItemInfoByAtom(This,lAtom,pbstrVal) (This)->lpVtbl->getItemInfoByAtom(This,lAtom,pbstrVal)
  967#define IWMPMedia_isMemberOf(This,pPlaylist,pvarfIsMemberOf) (This)->lpVtbl->isMemberOf(This,pPlaylist,pvarfIsMemberOf)
  968#define IWMPMedia_isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly) (This)->lpVtbl->isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly)
  969#else
  970/*** IUnknown methods ***/
  971static inline HRESULT IWMPMedia_QueryInterface(IWMPMedia* This,REFIID riid,void **ppvObject) {
  972    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
  973}
  974static inline ULONG IWMPMedia_AddRef(IWMPMedia* This) {
  975    return This->lpVtbl->AddRef(This);
  976}
  977static inline ULONG IWMPMedia_Release(IWMPMedia* This) {
  978    return This->lpVtbl->Release(This);
  979}
  980/*** IDispatch methods ***/
  981static inline HRESULT IWMPMedia_GetTypeInfoCount(IWMPMedia* This,UINT *pctinfo) {
  982    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
  983}
  984static inline HRESULT IWMPMedia_GetTypeInfo(IWMPMedia* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
  985    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
  986}
  987static inline HRESULT IWMPMedia_GetIDsOfNames(IWMPMedia* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
  988    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
  989}
  990static inline HRESULT IWMPMedia_Invoke(IWMPMedia* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
  991    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
  992}
  993/*** IWMPMedia methods ***/
  994static inline HRESULT IWMPMedia_get_isIdentical(IWMPMedia* This,IWMPMedia *pIWMPMedia,VARIANT_BOOL *pvbool) {
  995    return This->lpVtbl->get_isIdentical(This,pIWMPMedia,pvbool);
  996}
  997static inline HRESULT IWMPMedia_get_sourceURL(IWMPMedia* This,BSTR *pbstrSourceURL) {
  998    return This->lpVtbl->get_sourceURL(This,pbstrSourceURL);
  999}
 1000static inline HRESULT IWMPMedia_get_name(IWMPMedia* This,BSTR *pbstrName) {
 1001    return This->lpVtbl->get_name(This,pbstrName);
 1002}
 1003static inline HRESULT IWMPMedia_put_name(IWMPMedia* This,BSTR pbstrName) {
 1004    return This->lpVtbl->put_name(This,pbstrName);
 1005}
 1006static inline HRESULT IWMPMedia_get_imageSourceWidth(IWMPMedia* This,LONG *pWidth) {
 1007    return This->lpVtbl->get_imageSourceWidth(This,pWidth);
 1008}
 1009static inline HRESULT IWMPMedia_get_imageSourceHeight(IWMPMedia* This,LONG *pHeight) {
 1010    return This->lpVtbl->get_imageSourceHeight(This,pHeight);
 1011}
 1012static inline HRESULT IWMPMedia_get_markerCount(IWMPMedia* This,LONG *pMarkerCount) {
 1013    return This->lpVtbl->get_markerCount(This,pMarkerCount);
 1014}
 1015static inline HRESULT IWMPMedia_getMarkerTime(IWMPMedia* This,LONG MarkerNum,double *pMarkerTime) {
 1016    return This->lpVtbl->getMarkerTime(This,MarkerNum,pMarkerTime);
 1017}
 1018static inline HRESULT IWMPMedia_getMarkerName(IWMPMedia* This,LONG MarkerNum,BSTR *pbstrMarkerName) {
 1019    return This->lpVtbl->getMarkerName(This,MarkerNum,pbstrMarkerName);
 1020}
 1021static inline HRESULT IWMPMedia_get_duration(IWMPMedia* This,double *pDuration) {
 1022    return This->lpVtbl->get_duration(This,pDuration);
 1023}
 1024static inline HRESULT IWMPMedia_get_durationString(IWMPMedia* This,BSTR *pbstrDuration) {
 1025    return This->lpVtbl->get_durationString(This,pbstrDuration);
 1026}
 1027static inline HRESULT IWMPMedia_get_attributeCount(IWMPMedia* This,LONG *plCount) {
 1028    return This->lpVtbl->get_attributeCount(This,plCount);
 1029}
 1030static inline HRESULT IWMPMedia_getAttributeName(IWMPMedia* This,LONG lIndex,BSTR *pbstrItemName) {
 1031    return This->lpVtbl->getAttributeName(This,lIndex,pbstrItemName);
 1032}
 1033static inline HRESULT IWMPMedia_getItemInfo(IWMPMedia* This,BSTR bstrItemName,BSTR *pbstrVal) {
 1034    return This->lpVtbl->getItemInfo(This,bstrItemName,pbstrVal);
 1035}
 1036static inline HRESULT IWMPMedia_setItemInfo(IWMPMedia* This,BSTR bstrItemName,BSTR bstrVal) {
 1037    return This->lpVtbl->setItemInfo(This,bstrItemName,bstrVal);
 1038}
 1039static inline HRESULT IWMPMedia_getItemInfoByAtom(IWMPMedia* This,LONG lAtom,BSTR *pbstrVal) {
 1040    return This->lpVtbl->getItemInfoByAtom(This,lAtom,pbstrVal);
 1041}
 1042static inline HRESULT IWMPMedia_isMemberOf(IWMPMedia* This,IWMPPlaylist *pPlaylist,VARIANT_BOOL *pvarfIsMemberOf) {
 1043    return This->lpVtbl->isMemberOf(This,pPlaylist,pvarfIsMemberOf);
 1044}
 1045static inline HRESULT IWMPMedia_isReadOnlyItem(IWMPMedia* This,BSTR bstrItemName,VARIANT_BOOL *pvarfIsReadOnly) {
 1046    return This->lpVtbl->isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly);
 1047}
 1048#endif
 1049#endif
 1050
 1051#endif
 1052
 1053
 1054#endif  /* __IWMPMedia_INTERFACE_DEFINED__ */
 1055
 1056/*****************************************************************************
 1057 * IWMPControls interface
 1058 */
 1059#ifndef __IWMPControls_INTERFACE_DEFINED__
 1060#define __IWMPControls_INTERFACE_DEFINED__
 1061
 1062DEFINE_GUID(IID_IWMPControls, 0x74c09e02, 0xf828, 0x11d2, 0xa7,0x4b, 0x00,0xa0,0xc9,0x05,0xf3,0x6e);
 1063#if defined(__cplusplus) && !defined(CINTERFACE)
 1064MIDL_INTERFACE("74c09e02-f828-11d2-a74b-00a0c905f36e")
 1065IWMPControls : public IDispatch
 1066{
 1067    virtual HRESULT STDMETHODCALLTYPE get_isAvailable(
 1068        BSTR bstrItem,
 1069        VARIANT_BOOL *pIsAvailable) = 0;
 1070
 1071    virtual HRESULT STDMETHODCALLTYPE play(
 1072        ) = 0;
 1073
 1074    virtual HRESULT STDMETHODCALLTYPE stop(
 1075        ) = 0;
 1076
 1077    virtual HRESULT STDMETHODCALLTYPE pause(
 1078        ) = 0;
 1079
 1080    virtual HRESULT STDMETHODCALLTYPE fastForward(
 1081        ) = 0;
 1082
 1083    virtual HRESULT STDMETHODCALLTYPE fastReverse(
 1084        ) = 0;
 1085
 1086    virtual HRESULT STDMETHODCALLTYPE get_currentPosition(
 1087        double *pdCurrentPosition) = 0;
 1088
 1089    virtual HRESULT STDMETHODCALLTYPE put_currentPosition(
 1090        double pdCurrentPosition) = 0;
 1091
 1092    virtual HRESULT STDMETHODCALLTYPE get_currentPositionString(
 1093        BSTR *pbstrCurrentPosition) = 0;
 1094
 1095    virtual HRESULT STDMETHODCALLTYPE next(
 1096        ) = 0;
 1097
 1098    virtual HRESULT STDMETHODCALLTYPE previous(
 1099        ) = 0;
 1100
 1101    virtual HRESULT STDMETHODCALLTYPE currentItem(
 1102        IWMPMedia **ppIWMPMedia) = 0;
 1103
 1104    virtual HRESULT STDMETHODCALLTYPE put_currentItem(
 1105        IWMPMedia *ppIWMPMedia) = 0;
 1106
 1107    virtual HRESULT STDMETHODCALLTYPE get_currentMarker(
 1108        LONG *plMarker) = 0;
 1109
 1110    virtual HRESULT STDMETHODCALLTYPE put_currentMarker(
 1111        LONG plMarker) = 0;
 1112
 1113    virtual HRESULT STDMETHODCALLTYPE playItem(
 1114        IWMPMedia *pIWMPMedia) = 0;
 1115
 1116};
 1117#ifdef __CRT_UUID_DECL
 1118__CRT_UUID_DECL(IWMPControls, 0x74c09e02, 0xf828, 0x11d2, 0xa7,0x4b, 0x00,0xa0,0xc9,0x05,0xf3,0x6e)
 1119#endif
 1120#else
 1121typedef struct IWMPControlsVtbl {
 1122    BEGIN_INTERFACE
 1123
 1124    /*** IUnknown methods ***/
 1125    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 1126        IWMPControls *This,
 1127        REFIID riid,
 1128        void **ppvObject);
 1129
 1130    ULONG (STDMETHODCALLTYPE *AddRef)(
 1131        IWMPControls *This);
 1132
 1133    ULONG (STDMETHODCALLTYPE *Release)(
 1134        IWMPControls *This);
 1135
 1136    /*** IDispatch methods ***/
 1137    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 1138        IWMPControls *This,
 1139        UINT *pctinfo);
 1140
 1141    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 1142        IWMPControls *This,
 1143        UINT iTInfo,
 1144        LCID lcid,
 1145        ITypeInfo **ppTInfo);
 1146
 1147    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 1148        IWMPControls *This,
 1149        REFIID riid,
 1150        LPOLESTR *rgszNames,
 1151        UINT cNames,
 1152        LCID lcid,
 1153        DISPID *rgDispId);
 1154
 1155    HRESULT (STDMETHODCALLTYPE *Invoke)(
 1156        IWMPControls *This,
 1157        DISPID dispIdMember,
 1158        REFIID riid,
 1159        LCID lcid,
 1160        WORD wFlags,
 1161        DISPPARAMS *pDispParams,
 1162        VARIANT *pVarResult,
 1163        EXCEPINFO *pExcepInfo,
 1164        UINT *puArgErr);
 1165
 1166    /*** IWMPControls methods ***/
 1167    HRESULT (STDMETHODCALLTYPE *get_isAvailable)(
 1168        IWMPControls *This,
 1169        BSTR bstrItem,
 1170        VARIANT_BOOL *pIsAvailable);
 1171
 1172    HRESULT (STDMETHODCALLTYPE *play)(
 1173        IWMPControls *This);
 1174
 1175    HRESULT (STDMETHODCALLTYPE *stop)(
 1176        IWMPControls *This);
 1177
 1178    HRESULT (STDMETHODCALLTYPE *pause)(
 1179        IWMPControls *This);
 1180
 1181    HRESULT (STDMETHODCALLTYPE *fastForward)(
 1182        IWMPControls *This);
 1183
 1184    HRESULT (STDMETHODCALLTYPE *fastReverse)(
 1185        IWMPControls *This);
 1186
 1187    HRESULT (STDMETHODCALLTYPE *get_currentPosition)(
 1188        IWMPControls *This,
 1189        double *pdCurrentPosition);
 1190
 1191    HRESULT (STDMETHODCALLTYPE *put_currentPosition)(
 1192        IWMPControls *This,
 1193        double pdCurrentPosition);
 1194
 1195    HRESULT (STDMETHODCALLTYPE *get_currentPositionString)(
 1196        IWMPControls *This,
 1197        BSTR *pbstrCurrentPosition);
 1198
 1199    HRESULT (STDMETHODCALLTYPE *next)(
 1200        IWMPControls *This);
 1201
 1202    HRESULT (STDMETHODCALLTYPE *previous)(
 1203        IWMPControls *This);
 1204
 1205    HRESULT (STDMETHODCALLTYPE *currentItem)(
 1206        IWMPControls *This,
 1207        IWMPMedia **ppIWMPMedia);
 1208
 1209    HRESULT (STDMETHODCALLTYPE *put_currentItem)(
 1210        IWMPControls *This,
 1211        IWMPMedia *ppIWMPMedia);
 1212
 1213    HRESULT (STDMETHODCALLTYPE *get_currentMarker)(
 1214        IWMPControls *This,
 1215        LONG *plMarker);
 1216
 1217    HRESULT (STDMETHODCALLTYPE *put_currentMarker)(
 1218        IWMPControls *This,
 1219        LONG plMarker);
 1220
 1221    HRESULT (STDMETHODCALLTYPE *playItem)(
 1222        IWMPControls *This,
 1223        IWMPMedia *pIWMPMedia);
 1224
 1225    END_INTERFACE
 1226} IWMPControlsVtbl;
 1227
 1228interface IWMPControls {
 1229    CONST_VTBL IWMPControlsVtbl* lpVtbl;
 1230};
 1231
 1232#ifdef COBJMACROS
 1233#ifndef WIDL_C_INLINE_WRAPPERS
 1234/*** IUnknown methods ***/
 1235#define IWMPControls_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 1236#define IWMPControls_AddRef(This) (This)->lpVtbl->AddRef(This)
 1237#define IWMPControls_Release(This) (This)->lpVtbl->Release(This)
 1238/*** IDispatch methods ***/
 1239#define IWMPControls_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 1240#define IWMPControls_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 1241#define IWMPControls_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 1242#define IWMPControls_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 1243/*** IWMPControls methods ***/
 1244#define IWMPControls_get_isAvailable(This,bstrItem,pIsAvailable) (This)->lpVtbl->get_isAvailable(This,bstrItem,pIsAvailable)
 1245#define IWMPControls_play(This) (This)->lpVtbl->play(This)
 1246#define IWMPControls_stop(This) (This)->lpVtbl->stop(This)
 1247#define IWMPControls_pause(This) (This)->lpVtbl->pause(This)
 1248#define IWMPControls_fastForward(This) (This)->lpVtbl->fastForward(This)
 1249#define IWMPControls_fastReverse(This) (This)->lpVtbl->fastReverse(This)
 1250#define IWMPControls_get_currentPosition(This,pdCurrentPosition) (This)->lpVtbl->get_currentPosition(This,pdCurrentPosition)
 1251#define IWMPControls_put_currentPosition(This,pdCurrentPosition) (This)->lpVtbl->put_currentPosition(This,pdCurrentPosition)
 1252#define IWMPControls_get_currentPositionString(This,pbstrCurrentPosition) (This)->lpVtbl->get_currentPositionString(This,pbstrCurrentPosition)
 1253#define IWMPControls_next(This) (This)->lpVtbl->next(This)
 1254#define IWMPControls_previous(This) (This)->lpVtbl->previous(This)
 1255#define IWMPControls_currentItem(This,ppIWMPMedia) (This)->lpVtbl->currentItem(This,ppIWMPMedia)
 1256#define IWMPControls_put_currentItem(This,ppIWMPMedia) (This)->lpVtbl->put_currentItem(This,ppIWMPMedia)
 1257#define IWMPControls_get_currentMarker(This,plMarker) (This)->lpVtbl->get_currentMarker(This,plMarker)
 1258#define IWMPControls_put_currentMarker(This,plMarker) (This)->lpVtbl->put_currentMarker(This,plMarker)
 1259#define IWMPControls_playItem(This,pIWMPMedia) (This)->lpVtbl->playItem(This,pIWMPMedia)
 1260#else
 1261/*** IUnknown methods ***/
 1262static inline HRESULT IWMPControls_QueryInterface(IWMPControls* This,REFIID riid,void **ppvObject) {
 1263    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 1264}
 1265static inline ULONG IWMPControls_AddRef(IWMPControls* This) {
 1266    return This->lpVtbl->AddRef(This);
 1267}
 1268static inline ULONG IWMPControls_Release(IWMPControls* This) {
 1269    return This->lpVtbl->Release(This);
 1270}
 1271/*** IDispatch methods ***/
 1272static inline HRESULT IWMPControls_GetTypeInfoCount(IWMPControls* This,UINT *pctinfo) {
 1273    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 1274}
 1275static inline HRESULT IWMPControls_GetTypeInfo(IWMPControls* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 1276    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 1277}
 1278static inline HRESULT IWMPControls_GetIDsOfNames(IWMPControls* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 1279    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 1280}
 1281static inline HRESULT IWMPControls_Invoke(IWMPControls* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 1282    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 1283}
 1284/*** IWMPControls methods ***/
 1285static inline HRESULT IWMPControls_get_isAvailable(IWMPControls* This,BSTR bstrItem,VARIANT_BOOL *pIsAvailable) {
 1286    return This->lpVtbl->get_isAvailable(This,bstrItem,pIsAvailable);
 1287}
 1288static inline HRESULT IWMPControls_play(IWMPControls* This) {
 1289    return This->lpVtbl->play(This);
 1290}
 1291static inline HRESULT IWMPControls_stop(IWMPControls* This) {
 1292    return This->lpVtbl->stop(This);
 1293}
 1294static inline HRESULT IWMPControls_pause(IWMPControls* This) {
 1295    return This->lpVtbl->pause(This);
 1296}
 1297static inline HRESULT IWMPControls_fastForward(IWMPControls* This) {
 1298    return This->lpVtbl->fastForward(This);
 1299}
 1300static inline HRESULT IWMPControls_fastReverse(IWMPControls* This) {
 1301    return This->lpVtbl->fastReverse(This);
 1302}
 1303static inline HRESULT IWMPControls_get_currentPosition(IWMPControls* This,double *pdCurrentPosition) {
 1304    return This->lpVtbl->get_currentPosition(This,pdCurrentPosition);
 1305}
 1306static inline HRESULT IWMPControls_put_currentPosition(IWMPControls* This,double pdCurrentPosition) {
 1307    return This->lpVtbl->put_currentPosition(This,pdCurrentPosition);
 1308}
 1309static inline HRESULT IWMPControls_get_currentPositionString(IWMPControls* This,BSTR *pbstrCurrentPosition) {
 1310    return This->lpVtbl->get_currentPositionString(This,pbstrCurrentPosition);
 1311}
 1312static inline HRESULT IWMPControls_next(IWMPControls* This) {
 1313    return This->lpVtbl->next(This);
 1314}
 1315static inline HRESULT IWMPControls_previous(IWMPControls* This) {
 1316    return This->lpVtbl->previous(This);
 1317}
 1318static inline HRESULT IWMPControls_currentItem(IWMPControls* This,IWMPMedia **ppIWMPMedia) {
 1319    return This->lpVtbl->currentItem(This,ppIWMPMedia);
 1320}
 1321static inline HRESULT IWMPControls_put_currentItem(IWMPControls* This,IWMPMedia *ppIWMPMedia) {
 1322    return This->lpVtbl->put_currentItem(This,ppIWMPMedia);
 1323}
 1324static inline HRESULT IWMPControls_get_currentMarker(IWMPControls* This,LONG *plMarker) {
 1325    return This->lpVtbl->get_currentMarker(This,plMarker);
 1326}
 1327static inline HRESULT IWMPControls_put_currentMarker(IWMPControls* This,LONG plMarker) {
 1328    return This->lpVtbl->put_currentMarker(This,plMarker);
 1329}
 1330static inline HRESULT IWMPControls_playItem(IWMPControls* This,IWMPMedia *pIWMPMedia) {
 1331    return This->lpVtbl->playItem(This,pIWMPMedia);
 1332}
 1333#endif
 1334#endif
 1335
 1336#endif
 1337
 1338
 1339#endif  /* __IWMPControls_INTERFACE_DEFINED__ */
 1340
 1341/*****************************************************************************
 1342 * IWMPControls2 interface
 1343 */
 1344#ifndef __IWMPControls2_INTERFACE_DEFINED__
 1345#define __IWMPControls2_INTERFACE_DEFINED__
 1346
 1347DEFINE_GUID(IID_IWMPControls2, 0x6f030d25, 0x0890, 0x480f, 0x97,0x75, 0x1f,0x7e,0x40,0xab,0x5b,0x8e);
 1348#if defined(__cplusplus) && !defined(CINTERFACE)
 1349MIDL_INTERFACE("6f030d25-0890-480f-9775-1f7e40ab5b8e")
 1350IWMPControls2 : public IWMPControls
 1351{
 1352    virtual HRESULT STDMETHODCALLTYPE step(
 1353        LONG lStep) = 0;
 1354
 1355};
 1356#ifdef __CRT_UUID_DECL
 1357__CRT_UUID_DECL(IWMPControls2, 0x6f030d25, 0x0890, 0x480f, 0x97,0x75, 0x1f,0x7e,0x40,0xab,0x5b,0x8e)
 1358#endif
 1359#else
 1360typedef struct IWMPControls2Vtbl {
 1361    BEGIN_INTERFACE
 1362
 1363    /*** IUnknown methods ***/
 1364    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 1365        IWMPControls2 *This,
 1366        REFIID riid,
 1367        void **ppvObject);
 1368
 1369    ULONG (STDMETHODCALLTYPE *AddRef)(
 1370        IWMPControls2 *This);
 1371
 1372    ULONG (STDMETHODCALLTYPE *Release)(
 1373        IWMPControls2 *This);
 1374
 1375    /*** IDispatch methods ***/
 1376    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 1377        IWMPControls2 *This,
 1378        UINT *pctinfo);
 1379
 1380    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 1381        IWMPControls2 *This,
 1382        UINT iTInfo,
 1383        LCID lcid,
 1384        ITypeInfo **ppTInfo);
 1385
 1386    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 1387        IWMPControls2 *This,
 1388        REFIID riid,
 1389        LPOLESTR *rgszNames,
 1390        UINT cNames,
 1391        LCID lcid,
 1392        DISPID *rgDispId);
 1393
 1394    HRESULT (STDMETHODCALLTYPE *Invoke)(
 1395        IWMPControls2 *This,
 1396        DISPID dispIdMember,
 1397        REFIID riid,
 1398        LCID lcid,
 1399        WORD wFlags,
 1400        DISPPARAMS *pDispParams,
 1401        VARIANT *pVarResult,
 1402        EXCEPINFO *pExcepInfo,
 1403        UINT *puArgErr);
 1404
 1405    /*** IWMPControls methods ***/
 1406    HRESULT (STDMETHODCALLTYPE *get_isAvailable)(
 1407        IWMPControls2 *This,
 1408        BSTR bstrItem,
 1409        VARIANT_BOOL *pIsAvailable);
 1410
 1411    HRESULT (STDMETHODCALLTYPE *play)(
 1412        IWMPControls2 *This);
 1413
 1414    HRESULT (STDMETHODCALLTYPE *stop)(
 1415        IWMPControls2 *This);
 1416
 1417    HRESULT (STDMETHODCALLTYPE *pause)(
 1418        IWMPControls2 *This);
 1419
 1420    HRESULT (STDMETHODCALLTYPE *fastForward)(
 1421        IWMPControls2 *This);
 1422
 1423    HRESULT (STDMETHODCALLTYPE *fastReverse)(
 1424        IWMPControls2 *This);
 1425
 1426    HRESULT (STDMETHODCALLTYPE *get_currentPosition)(
 1427        IWMPControls2 *This,
 1428        double *pdCurrentPosition);
 1429
 1430    HRESULT (STDMETHODCALLTYPE *put_currentPosition)(
 1431        IWMPControls2 *This,
 1432        double pdCurrentPosition);
 1433
 1434    HRESULT (STDMETHODCALLTYPE *get_currentPositionString)(
 1435        IWMPControls2 *This,
 1436        BSTR *pbstrCurrentPosition);
 1437
 1438    HRESULT (STDMETHODCALLTYPE *next)(
 1439        IWMPControls2 *This);
 1440
 1441    HRESULT (STDMETHODCALLTYPE *previous)(
 1442        IWMPControls2 *This);
 1443
 1444    HRESULT (STDMETHODCALLTYPE *currentItem)(
 1445        IWMPControls2 *This,
 1446        IWMPMedia **ppIWMPMedia);
 1447
 1448    HRESULT (STDMETHODCALLTYPE *put_currentItem)(
 1449        IWMPControls2 *This,
 1450        IWMPMedia *ppIWMPMedia);
 1451
 1452    HRESULT (STDMETHODCALLTYPE *get_currentMarker)(
 1453        IWMPControls2 *This,
 1454        LONG *plMarker);
 1455
 1456    HRESULT (STDMETHODCALLTYPE *put_currentMarker)(
 1457        IWMPControls2 *This,
 1458        LONG plMarker);
 1459
 1460    HRESULT (STDMETHODCALLTYPE *playItem)(
 1461        IWMPControls2 *This,
 1462        IWMPMedia *pIWMPMedia);
 1463
 1464    /*** IWMPControls2 methods ***/
 1465    HRESULT (STDMETHODCALLTYPE *step)(
 1466        IWMPControls2 *This,
 1467        LONG lStep);
 1468
 1469    END_INTERFACE
 1470} IWMPControls2Vtbl;
 1471
 1472interface IWMPControls2 {
 1473    CONST_VTBL IWMPControls2Vtbl* lpVtbl;
 1474};
 1475
 1476#ifdef COBJMACROS
 1477#ifndef WIDL_C_INLINE_WRAPPERS
 1478/*** IUnknown methods ***/
 1479#define IWMPControls2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 1480#define IWMPControls2_AddRef(This) (This)->lpVtbl->AddRef(This)
 1481#define IWMPControls2_Release(This) (This)->lpVtbl->Release(This)
 1482/*** IDispatch methods ***/
 1483#define IWMPControls2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 1484#define IWMPControls2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 1485#define IWMPControls2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 1486#define IWMPControls2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 1487/*** IWMPControls methods ***/
 1488#define IWMPControls2_get_isAvailable(This,bstrItem,pIsAvailable) (This)->lpVtbl->get_isAvailable(This,bstrItem,pIsAvailable)
 1489#define IWMPControls2_play(This) (This)->lpVtbl->play(This)
 1490#define IWMPControls2_stop(This) (This)->lpVtbl->stop(This)
 1491#define IWMPControls2_pause(This) (This)->lpVtbl->pause(This)
 1492#define IWMPControls2_fastForward(This) (This)->lpVtbl->fastForward(This)
 1493#define IWMPControls2_fastReverse(This) (This)->lpVtbl->fastReverse(This)
 1494#define IWMPControls2_get_currentPosition(This,pdCurrentPosition) (This)->lpVtbl->get_currentPosition(This,pdCurrentPosition)
 1495#define IWMPControls2_put_currentPosition(This,pdCurrentPosition) (This)->lpVtbl->put_currentPosition(This,pdCurrentPosition)
 1496#define IWMPControls2_get_currentPositionString(This,pbstrCurrentPosition) (This)->lpVtbl->get_currentPositionString(This,pbstrCurrentPosition)
 1497#define IWMPControls2_next(This) (This)->lpVtbl->next(This)
 1498#define IWMPControls2_previous(This) (This)->lpVtbl->previous(This)
 1499#define IWMPControls2_currentItem(This,ppIWMPMedia) (This)->lpVtbl->currentItem(This,ppIWMPMedia)
 1500#define IWMPControls2_put_currentItem(This,ppIWMPMedia) (This)->lpVtbl->put_currentItem(This,ppIWMPMedia)
 1501#define IWMPControls2_get_currentMarker(This,plMarker) (This)->lpVtbl->get_currentMarker(This,plMarker)
 1502#define IWMPControls2_put_currentMarker(This,plMarker) (This)->lpVtbl->put_currentMarker(This,plMarker)
 1503#define IWMPControls2_playItem(This,pIWMPMedia) (This)->lpVtbl->playItem(This,pIWMPMedia)
 1504/*** IWMPControls2 methods ***/
 1505#define IWMPControls2_step(This,lStep) (This)->lpVtbl->step(This,lStep)
 1506#else
 1507/*** IUnknown methods ***/
 1508static inline HRESULT IWMPControls2_QueryInterface(IWMPControls2* This,REFIID riid,void **ppvObject) {
 1509    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 1510}
 1511static inline ULONG IWMPControls2_AddRef(IWMPControls2* This) {
 1512    return This->lpVtbl->AddRef(This);
 1513}
 1514static inline ULONG IWMPControls2_Release(IWMPControls2* This) {
 1515    return This->lpVtbl->Release(This);
 1516}
 1517/*** IDispatch methods ***/
 1518static inline HRESULT IWMPControls2_GetTypeInfoCount(IWMPControls2* This,UINT *pctinfo) {
 1519    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 1520}
 1521static inline HRESULT IWMPControls2_GetTypeInfo(IWMPControls2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 1522    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 1523}
 1524static inline HRESULT IWMPControls2_GetIDsOfNames(IWMPControls2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 1525    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 1526}
 1527static inline HRESULT IWMPControls2_Invoke(IWMPControls2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 1528    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 1529}
 1530/*** IWMPControls methods ***/
 1531static inline HRESULT IWMPControls2_get_isAvailable(IWMPControls2* This,BSTR bstrItem,VARIANT_BOOL *pIsAvailable) {
 1532    return This->lpVtbl->get_isAvailable(This,bstrItem,pIsAvailable);
 1533}
 1534static inline HRESULT IWMPControls2_play(IWMPControls2* This) {
 1535    return This->lpVtbl->play(This);
 1536}
 1537static inline HRESULT IWMPControls2_stop(IWMPControls2* This) {
 1538    return This->lpVtbl->stop(This);
 1539}
 1540static inline HRESULT IWMPControls2_pause(IWMPControls2* This) {
 1541    return This->lpVtbl->pause(This);
 1542}
 1543static inline HRESULT IWMPControls2_fastForward(IWMPControls2* This) {
 1544    return This->lpVtbl->fastForward(This);
 1545}
 1546static inline HRESULT IWMPControls2_fastReverse(IWMPControls2* This) {
 1547    return This->lpVtbl->fastReverse(This);
 1548}
 1549static inline HRESULT IWMPControls2_get_currentPosition(IWMPControls2* This,double *pdCurrentPosition) {
 1550    return This->lpVtbl->get_currentPosition(This,pdCurrentPosition);
 1551}
 1552static inline HRESULT IWMPControls2_put_currentPosition(IWMPControls2* This,double pdCurrentPosition) {
 1553    return This->lpVtbl->put_currentPosition(This,pdCurrentPosition);
 1554}
 1555static inline HRESULT IWMPControls2_get_currentPositionString(IWMPControls2* This,BSTR *pbstrCurrentPosition) {
 1556    return This->lpVtbl->get_currentPositionString(This,pbstrCurrentPosition);
 1557}
 1558static inline HRESULT IWMPControls2_next(IWMPControls2* This) {
 1559    return This->lpVtbl->next(This);
 1560}
 1561static inline HRESULT IWMPControls2_previous(IWMPControls2* This) {
 1562    return This->lpVtbl->previous(This);
 1563}
 1564static inline HRESULT IWMPControls2_currentItem(IWMPControls2* This,IWMPMedia **ppIWMPMedia) {
 1565    return This->lpVtbl->currentItem(This,ppIWMPMedia);
 1566}
 1567static inline HRESULT IWMPControls2_put_currentItem(IWMPControls2* This,IWMPMedia *ppIWMPMedia) {
 1568    return This->lpVtbl->put_currentItem(This,ppIWMPMedia);
 1569}
 1570static inline HRESULT IWMPControls2_get_currentMarker(IWMPControls2* This,LONG *plMarker) {
 1571    return This->lpVtbl->get_currentMarker(This,plMarker);
 1572}
 1573static inline HRESULT IWMPControls2_put_currentMarker(IWMPControls2* This,LONG plMarker) {
 1574    return This->lpVtbl->put_currentMarker(This,plMarker);
 1575}
 1576static inline HRESULT IWMPControls2_playItem(IWMPControls2* This,IWMPMedia *pIWMPMedia) {
 1577    return This->lpVtbl->playItem(This,pIWMPMedia);
 1578}
 1579/*** IWMPControls2 methods ***/
 1580static inline HRESULT IWMPControls2_step(IWMPControls2* This,LONG lStep) {
 1581    return This->lpVtbl->step(This,lStep);
 1582}
 1583#endif
 1584#endif
 1585
 1586#endif
 1587
 1588
 1589#endif  /* __IWMPControls2_INTERFACE_DEFINED__ */
 1590
 1591/*****************************************************************************
 1592 * IWMPRemoteMediaServices interface
 1593 */
 1594#ifndef __IWMPRemoteMediaServices_INTERFACE_DEFINED__
 1595#define __IWMPRemoteMediaServices_INTERFACE_DEFINED__
 1596
 1597DEFINE_GUID(IID_IWMPRemoteMediaServices, 0xcbb92747, 0x741f, 0x44fe, 0xab,0x5b, 0xf1,0xa4,0x8f,0x3b,0x2a,0x59);
 1598#if defined(__cplusplus) && !defined(CINTERFACE)
 1599MIDL_INTERFACE("cbb92747-741f-44fe-ab5b-f1a48f3b2a59")
 1600IWMPRemoteMediaServices : public IUnknown
 1601{
 1602    virtual HRESULT STDMETHODCALLTYPE GetServiceType(
 1603        BSTR *type) = 0;
 1604
 1605    virtual HRESULT STDMETHODCALLTYPE GetApplicationName(
 1606        BSTR *name) = 0;
 1607
 1608    virtual HRESULT STDMETHODCALLTYPE GetScriptableObject(
 1609        BSTR *name,
 1610        IDispatch **out) = 0;
 1611
 1612    virtual HRESULT STDMETHODCALLTYPE GetCustomUIMode(
 1613        BSTR *file) = 0;
 1614
 1615};
 1616#ifdef __CRT_UUID_DECL
 1617__CRT_UUID_DECL(IWMPRemoteMediaServices, 0xcbb92747, 0x741f, 0x44fe, 0xab,0x5b, 0xf1,0xa4,0x8f,0x3b,0x2a,0x59)
 1618#endif
 1619#else
 1620typedef struct IWMPRemoteMediaServicesVtbl {
 1621    BEGIN_INTERFACE
 1622
 1623    /*** IUnknown methods ***/
 1624    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 1625        IWMPRemoteMediaServices *This,
 1626        REFIID riid,
 1627        void **ppvObject);
 1628
 1629    ULONG (STDMETHODCALLTYPE *AddRef)(
 1630        IWMPRemoteMediaServices *This);
 1631
 1632    ULONG (STDMETHODCALLTYPE *Release)(
 1633        IWMPRemoteMediaServices *This);
 1634
 1635    /*** IWMPRemoteMediaServices methods ***/
 1636    HRESULT (STDMETHODCALLTYPE *GetServiceType)(
 1637        IWMPRemoteMediaServices *This,
 1638        BSTR *type);
 1639
 1640    HRESULT (STDMETHODCALLTYPE *GetApplicationName)(
 1641        IWMPRemoteMediaServices *This,
 1642        BSTR *name);
 1643
 1644    HRESULT (STDMETHODCALLTYPE *GetScriptableObject)(
 1645        IWMPRemoteMediaServices *This,
 1646        BSTR *name,
 1647        IDispatch **out);
 1648
 1649    HRESULT (STDMETHODCALLTYPE *GetCustomUIMode)(
 1650        IWMPRemoteMediaServices *This,
 1651        BSTR *file);
 1652
 1653    END_INTERFACE
 1654} IWMPRemoteMediaServicesVtbl;
 1655
 1656interface IWMPRemoteMediaServices {
 1657    CONST_VTBL IWMPRemoteMediaServicesVtbl* lpVtbl;
 1658};
 1659
 1660#ifdef COBJMACROS
 1661#ifndef WIDL_C_INLINE_WRAPPERS
 1662/*** IUnknown methods ***/
 1663#define IWMPRemoteMediaServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 1664#define IWMPRemoteMediaServices_AddRef(This) (This)->lpVtbl->AddRef(This)
 1665#define IWMPRemoteMediaServices_Release(This) (This)->lpVtbl->Release(This)
 1666/*** IWMPRemoteMediaServices methods ***/
 1667#define IWMPRemoteMediaServices_GetServiceType(This,type) (This)->lpVtbl->GetServiceType(This,type)
 1668#define IWMPRemoteMediaServices_GetApplicationName(This,name) (This)->lpVtbl->GetApplicationName(This,name)
 1669#define IWMPRemoteMediaServices_GetScriptableObject(This,name,out) (This)->lpVtbl->GetScriptableObject(This,name,out)
 1670#define IWMPRemoteMediaServices_GetCustomUIMode(This,file) (This)->lpVtbl->GetCustomUIMode(This,file)
 1671#else
 1672/*** IUnknown methods ***/
 1673static inline HRESULT IWMPRemoteMediaServices_QueryInterface(IWMPRemoteMediaServices* This,REFIID riid,void **ppvObject) {
 1674    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 1675}
 1676static inline ULONG IWMPRemoteMediaServices_AddRef(IWMPRemoteMediaServices* This) {
 1677    return This->lpVtbl->AddRef(This);
 1678}
 1679static inline ULONG IWMPRemoteMediaServices_Release(IWMPRemoteMediaServices* This) {
 1680    return This->lpVtbl->Release(This);
 1681}
 1682/*** IWMPRemoteMediaServices methods ***/
 1683static inline HRESULT IWMPRemoteMediaServices_GetServiceType(IWMPRemoteMediaServices* This,BSTR *type) {
 1684    return This->lpVtbl->GetServiceType(This,type);
 1685}
 1686static inline HRESULT IWMPRemoteMediaServices_GetApplicationName(IWMPRemoteMediaServices* This,BSTR *name) {
 1687    return This->lpVtbl->GetApplicationName(This,name);
 1688}
 1689static inline HRESULT IWMPRemoteMediaServices_GetScriptableObject(IWMPRemoteMediaServices* This,BSTR *name,IDispatch **out) {
 1690    return This->lpVtbl->GetScriptableObject(This,name,out);
 1691}
 1692static inline HRESULT IWMPRemoteMediaServices_GetCustomUIMode(IWMPRemoteMediaServices* This,BSTR *file) {
 1693    return This->lpVtbl->GetCustomUIMode(This,file);
 1694}
 1695#endif
 1696#endif
 1697
 1698#endif
 1699
 1700
 1701#endif  /* __IWMPRemoteMediaServices_INTERFACE_DEFINED__ */
 1702
 1703/*****************************************************************************
 1704 * IWMPSettings interface
 1705 */
 1706#ifndef __IWMPSettings_INTERFACE_DEFINED__
 1707#define __IWMPSettings_INTERFACE_DEFINED__
 1708
 1709DEFINE_GUID(IID_IWMPSettings, 0x9104d1ab, 0x80c9, 0x4fed, 0xab,0xf0, 0x2e,0x64,0x17,0xa6,0xdf,0x14);
 1710#if defined(__cplusplus) && !defined(CINTERFACE)
 1711MIDL_INTERFACE("9104d1ab-80c9-4fed-abf0-2e6417a6df14")
 1712IWMPSettings : public IDispatch
 1713{
 1714    virtual HRESULT STDMETHODCALLTYPE get_isAvailable(
 1715        BSTR bstrItem,
 1716        VARIANT_BOOL *pIsAvailable) = 0;
 1717
 1718    virtual HRESULT STDMETHODCALLTYPE get_autoStart(
 1719        VARIANT_BOOL *pfAutoStart) = 0;
 1720
 1721    virtual HRESULT STDMETHODCALLTYPE put_autoStart(
 1722        VARIANT_BOOL pfAutoStart) = 0;
 1723
 1724    virtual HRESULT STDMETHODCALLTYPE get_baseURL(
 1725        BSTR *pbstrBaseURL) = 0;
 1726
 1727    virtual HRESULT STDMETHODCALLTYPE put_baseURL(
 1728        BSTR pbstrBaseURL) = 0;
 1729
 1730    virtual HRESULT STDMETHODCALLTYPE get_defaultFrame(
 1731        BSTR *pbstrDefaultFrame) = 0;
 1732
 1733    virtual HRESULT STDMETHODCALLTYPE put_defaultFrame(
 1734        BSTR pbstrDefaultFrame) = 0;
 1735
 1736    virtual HRESULT STDMETHODCALLTYPE get_invokeURLs(
 1737        VARIANT_BOOL *pfInvokeURLs) = 0;
 1738
 1739    virtual HRESULT STDMETHODCALLTYPE put_invokeURLs(
 1740        VARIANT_BOOL pfInvokeURLs) = 0;
 1741
 1742    virtual HRESULT STDMETHODCALLTYPE get_mute(
 1743        VARIANT_BOOL *pfMute) = 0;
 1744
 1745    virtual HRESULT STDMETHODCALLTYPE put_mute(
 1746        VARIANT_BOOL pfMute) = 0;
 1747
 1748    virtual HRESULT STDMETHODCALLTYPE get_playCount(
 1749        LONG *plCount) = 0;
 1750
 1751    virtual HRESULT STDMETHODCALLTYPE put_playCount(
 1752        LONG plCount) = 0;
 1753
 1754    virtual HRESULT STDMETHODCALLTYPE get_rate(
 1755        double *pdRate) = 0;
 1756
 1757    virtual HRESULT STDMETHODCALLTYPE put_rate(
 1758        double pdRate) = 0;
 1759
 1760    virtual HRESULT STDMETHODCALLTYPE get_balance(
 1761        LONG *plBalance) = 0;
 1762
 1763    virtual HRESULT STDMETHODCALLTYPE put_balance(
 1764        LONG plBalance) = 0;
 1765
 1766    virtual HRESULT STDMETHODCALLTYPE get_volume(
 1767        LONG *plVolume) = 0;
 1768
 1769    virtual HRESULT STDMETHODCALLTYPE put_volume(
 1770        LONG plVolume) = 0;
 1771
 1772    virtual HRESULT STDMETHODCALLTYPE getMode(
 1773        BSTR bstrMode,
 1774        VARIANT_BOOL *pvarfMode) = 0;
 1775
 1776    virtual HRESULT STDMETHODCALLTYPE setMode(
 1777        BSTR bstrMode,
 1778        VARIANT_BOOL varfMode) = 0;
 1779
 1780    virtual HRESULT STDMETHODCALLTYPE get_enableErrorDialogs(
 1781        VARIANT_BOOL *pfEnableErrorDialogs) = 0;
 1782
 1783    virtual HRESULT STDMETHODCALLTYPE put_enableErrorDialogs(
 1784        VARIANT_BOOL pfEnableErrorDialogs) = 0;
 1785
 1786};
 1787#ifdef __CRT_UUID_DECL
 1788__CRT_UUID_DECL(IWMPSettings, 0x9104d1ab, 0x80c9, 0x4fed, 0xab,0xf0, 0x2e,0x64,0x17,0xa6,0xdf,0x14)
 1789#endif
 1790#else
 1791typedef struct IWMPSettingsVtbl {
 1792    BEGIN_INTERFACE
 1793
 1794    /*** IUnknown methods ***/
 1795    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 1796        IWMPSettings *This,
 1797        REFIID riid,
 1798        void **ppvObject);
 1799
 1800    ULONG (STDMETHODCALLTYPE *AddRef)(
 1801        IWMPSettings *This);
 1802
 1803    ULONG (STDMETHODCALLTYPE *Release)(
 1804        IWMPSettings *This);
 1805
 1806    /*** IDispatch methods ***/
 1807    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 1808        IWMPSettings *This,
 1809        UINT *pctinfo);
 1810
 1811    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 1812        IWMPSettings *This,
 1813        UINT iTInfo,
 1814        LCID lcid,
 1815        ITypeInfo **ppTInfo);
 1816
 1817    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 1818        IWMPSettings *This,
 1819        REFIID riid,
 1820        LPOLESTR *rgszNames,
 1821        UINT cNames,
 1822        LCID lcid,
 1823        DISPID *rgDispId);
 1824
 1825    HRESULT (STDMETHODCALLTYPE *Invoke)(
 1826        IWMPSettings *This,
 1827        DISPID dispIdMember,
 1828        REFIID riid,
 1829        LCID lcid,
 1830        WORD wFlags,
 1831        DISPPARAMS *pDispParams,
 1832        VARIANT *pVarResult,
 1833        EXCEPINFO *pExcepInfo,
 1834        UINT *puArgErr);
 1835
 1836    /*** IWMPSettings methods ***/
 1837    HRESULT (STDMETHODCALLTYPE *get_isAvailable)(
 1838        IWMPSettings *This,
 1839        BSTR bstrItem,
 1840        VARIANT_BOOL *pIsAvailable);
 1841
 1842    HRESULT (STDMETHODCALLTYPE *get_autoStart)(
 1843        IWMPSettings *This,
 1844        VARIANT_BOOL *pfAutoStart);
 1845
 1846    HRESULT (STDMETHODCALLTYPE *put_autoStart)(
 1847        IWMPSettings *This,
 1848        VARIANT_BOOL pfAutoStart);
 1849
 1850    HRESULT (STDMETHODCALLTYPE *get_baseURL)(
 1851        IWMPSettings *This,
 1852        BSTR *pbstrBaseURL);
 1853
 1854    HRESULT (STDMETHODCALLTYPE *put_baseURL)(
 1855        IWMPSettings *This,
 1856        BSTR pbstrBaseURL);
 1857
 1858    HRESULT (STDMETHODCALLTYPE *get_defaultFrame)(
 1859        IWMPSettings *This,
 1860        BSTR *pbstrDefaultFrame);
 1861
 1862    HRESULT (STDMETHODCALLTYPE *put_defaultFrame)(
 1863        IWMPSettings *This,
 1864        BSTR pbstrDefaultFrame);
 1865
 1866    HRESULT (STDMETHODCALLTYPE *get_invokeURLs)(
 1867        IWMPSettings *This,
 1868        VARIANT_BOOL *pfInvokeURLs);
 1869
 1870    HRESULT (STDMETHODCALLTYPE *put_invokeURLs)(
 1871        IWMPSettings *This,
 1872        VARIANT_BOOL pfInvokeURLs);
 1873
 1874    HRESULT (STDMETHODCALLTYPE *get_mute)(
 1875        IWMPSettings *This,
 1876        VARIANT_BOOL *pfMute);
 1877
 1878    HRESULT (STDMETHODCALLTYPE *put_mute)(
 1879        IWMPSettings *This,
 1880        VARIANT_BOOL pfMute);
 1881
 1882    HRESULT (STDMETHODCALLTYPE *get_playCount)(
 1883        IWMPSettings *This,
 1884        LONG *plCount);
 1885
 1886    HRESULT (STDMETHODCALLTYPE *put_playCount)(
 1887        IWMPSettings *This,
 1888        LONG plCount);
 1889
 1890    HRESULT (STDMETHODCALLTYPE *get_rate)(
 1891        IWMPSettings *This,
 1892        double *pdRate);
 1893
 1894    HRESULT (STDMETHODCALLTYPE *put_rate)(
 1895        IWMPSettings *This,
 1896        double pdRate);
 1897
 1898    HRESULT (STDMETHODCALLTYPE *get_balance)(
 1899        IWMPSettings *This,
 1900        LONG *plBalance);
 1901
 1902    HRESULT (STDMETHODCALLTYPE *put_balance)(
 1903        IWMPSettings *This,
 1904        LONG plBalance);
 1905
 1906    HRESULT (STDMETHODCALLTYPE *get_volume)(
 1907        IWMPSettings *This,
 1908        LONG *plVolume);
 1909
 1910    HRESULT (STDMETHODCALLTYPE *put_volume)(
 1911        IWMPSettings *This,
 1912        LONG plVolume);
 1913
 1914    HRESULT (STDMETHODCALLTYPE *getMode)(
 1915        IWMPSettings *This,
 1916        BSTR bstrMode,
 1917        VARIANT_BOOL *pvarfMode);
 1918
 1919    HRESULT (STDMETHODCALLTYPE *setMode)(
 1920        IWMPSettings *This,
 1921        BSTR bstrMode,
 1922        VARIANT_BOOL varfMode);
 1923
 1924    HRESULT (STDMETHODCALLTYPE *get_enableErrorDialogs)(
 1925        IWMPSettings *This,
 1926        VARIANT_BOOL *pfEnableErrorDialogs);
 1927
 1928    HRESULT (STDMETHODCALLTYPE *put_enableErrorDialogs)(
 1929        IWMPSettings *This,
 1930        VARIANT_BOOL pfEnableErrorDialogs);
 1931
 1932    END_INTERFACE
 1933} IWMPSettingsVtbl;
 1934
 1935interface IWMPSettings {
 1936    CONST_VTBL IWMPSettingsVtbl* lpVtbl;
 1937};
 1938
 1939#ifdef COBJMACROS
 1940#ifndef WIDL_C_INLINE_WRAPPERS
 1941/*** IUnknown methods ***/
 1942#define IWMPSettings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 1943#define IWMPSettings_AddRef(This) (This)->lpVtbl->AddRef(This)
 1944#define IWMPSettings_Release(This) (This)->lpVtbl->Release(This)
 1945/*** IDispatch methods ***/
 1946#define IWMPSettings_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 1947#define IWMPSettings_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 1948#define IWMPSettings_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 1949#define IWMPSettings_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 1950/*** IWMPSettings methods ***/
 1951#define IWMPSettings_get_isAvailable(This,bstrItem,pIsAvailable) (This)->lpVtbl->get_isAvailable(This,bstrItem,pIsAvailable)
 1952#define IWMPSettings_get_autoStart(This,pfAutoStart) (This)->lpVtbl->get_autoStart(This,pfAutoStart)
 1953#define IWMPSettings_put_autoStart(This,pfAutoStart) (This)->lpVtbl->put_autoStart(This,pfAutoStart)
 1954#define IWMPSettings_get_baseURL(This,pbstrBaseURL) (This)->lpVtbl->get_baseURL(This,pbstrBaseURL)
 1955#define IWMPSettings_put_baseURL(This,pbstrBaseURL) (This)->lpVtbl->put_baseURL(This,pbstrBaseURL)
 1956#define IWMPSettings_get_defaultFrame(This,pbstrDefaultFrame) (This)->lpVtbl->get_defaultFrame(This,pbstrDefaultFrame)
 1957#define IWMPSettings_put_defaultFrame(This,pbstrDefaultFrame) (This)->lpVtbl->put_defaultFrame(This,pbstrDefaultFrame)
 1958#define IWMPSettings_get_invokeURLs(This,pfInvokeURLs) (This)->lpVtbl->get_invokeURLs(This,pfInvokeURLs)
 1959#define IWMPSettings_put_invokeURLs(This,pfInvokeURLs) (This)->lpVtbl->put_invokeURLs(This,pfInvokeURLs)
 1960#define IWMPSettings_get_mute(This,pfMute) (This)->lpVtbl->get_mute(This,pfMute)
 1961#define IWMPSettings_put_mute(This,pfMute) (This)->lpVtbl->put_mute(This,pfMute)
 1962#define IWMPSettings_get_playCount(This,plCount) (This)->lpVtbl->get_playCount(This,plCount)
 1963#define IWMPSettings_put_playCount(This,plCount) (This)->lpVtbl->put_playCount(This,plCount)
 1964#define IWMPSettings_get_rate(This,pdRate) (This)->lpVtbl->get_rate(This,pdRate)
 1965#define IWMPSettings_put_rate(This,pdRate) (This)->lpVtbl->put_rate(This,pdRate)
 1966#define IWMPSettings_get_balance(This,plBalance) (This)->lpVtbl->get_balance(This,plBalance)
 1967#define IWMPSettings_put_balance(This,plBalance) (This)->lpVtbl->put_balance(This,plBalance)
 1968#define IWMPSettings_get_volume(This,plVolume) (This)->lpVtbl->get_volume(This,plVolume)
 1969#define IWMPSettings_put_volume(This,plVolume) (This)->lpVtbl->put_volume(This,plVolume)
 1970#define IWMPSettings_getMode(This,bstrMode,pvarfMode) (This)->lpVtbl->getMode(This,bstrMode,pvarfMode)
 1971#define IWMPSettings_setMode(This,bstrMode,varfMode) (This)->lpVtbl->setMode(This,bstrMode,varfMode)
 1972#define IWMPSettings_get_enableErrorDialogs(This,pfEnableErrorDialogs) (This)->lpVtbl->get_enableErrorDialogs(This,pfEnableErrorDialogs)
 1973#define IWMPSettings_put_enableErrorDialogs(This,pfEnableErrorDialogs) (This)->lpVtbl->put_enableErrorDialogs(This,pfEnableErrorDialogs)
 1974#else
 1975/*** IUnknown methods ***/
 1976static inline HRESULT IWMPSettings_QueryInterface(IWMPSettings* This,REFIID riid,void **ppvObject) {
 1977    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 1978}
 1979static inline ULONG IWMPSettings_AddRef(IWMPSettings* This) {
 1980    return This->lpVtbl->AddRef(This);
 1981}
 1982static inline ULONG IWMPSettings_Release(IWMPSettings* This) {
 1983    return This->lpVtbl->Release(This);
 1984}
 1985/*** IDispatch methods ***/
 1986static inline HRESULT IWMPSettings_GetTypeInfoCount(IWMPSettings* This,UINT *pctinfo) {
 1987    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 1988}
 1989static inline HRESULT IWMPSettings_GetTypeInfo(IWMPSettings* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 1990    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 1991}
 1992static inline HRESULT IWMPSettings_GetIDsOfNames(IWMPSettings* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 1993    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 1994}
 1995static inline HRESULT IWMPSettings_Invoke(IWMPSettings* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 1996    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 1997}
 1998/*** IWMPSettings methods ***/
 1999static inline HRESULT IWMPSettings_get_isAvailable(IWMPSettings* This,BSTR bstrItem,VARIANT_BOOL *pIsAvailable) {
 2000    return This->lpVtbl->get_isAvailable(This,bstrItem,pIsAvailable);
 2001}
 2002static inline HRESULT IWMPSettings_get_autoStart(IWMPSettings* This,VARIANT_BOOL *pfAutoStart) {
 2003    return This->lpVtbl->get_autoStart(This,pfAutoStart);
 2004}
 2005static inline HRESULT IWMPSettings_put_autoStart(IWMPSettings* This,VARIANT_BOOL pfAutoStart) {
 2006    return This->lpVtbl->put_autoStart(This,pfAutoStart);
 2007}
 2008static inline HRESULT IWMPSettings_get_baseURL(IWMPSettings* This,BSTR *pbstrBaseURL) {
 2009    return This->lpVtbl->get_baseURL(This,pbstrBaseURL);
 2010}
 2011static inline HRESULT IWMPSettings_put_baseURL(IWMPSettings* This,BSTR pbstrBaseURL) {
 2012    return This->lpVtbl->put_baseURL(This,pbstrBaseURL);
 2013}
 2014static inline HRESULT IWMPSettings_get_defaultFrame(IWMPSettings* This,BSTR *pbstrDefaultFrame) {
 2015    return This->lpVtbl->get_defaultFrame(This,pbstrDefaultFrame);
 2016}
 2017static inline HRESULT IWMPSettings_put_defaultFrame(IWMPSettings* This,BSTR pbstrDefaultFrame) {
 2018    return This->lpVtbl->put_defaultFrame(This,pbstrDefaultFrame);
 2019}
 2020static inline HRESULT IWMPSettings_get_invokeURLs(IWMPSettings* This,VARIANT_BOOL *pfInvokeURLs) {
 2021    return This->lpVtbl->get_invokeURLs(This,pfInvokeURLs);
 2022}
 2023static inline HRESULT IWMPSettings_put_invokeURLs(IWMPSettings* This,VARIANT_BOOL pfInvokeURLs) {
 2024    return This->lpVtbl->put_invokeURLs(This,pfInvokeURLs);
 2025}
 2026static inline HRESULT IWMPSettings_get_mute(IWMPSettings* This,VARIANT_BOOL *pfMute) {
 2027    return This->lpVtbl->get_mute(This,pfMute);
 2028}
 2029static inline HRESULT IWMPSettings_put_mute(IWMPSettings* This,VARIANT_BOOL pfMute) {
 2030    return This->lpVtbl->put_mute(This,pfMute);
 2031}
 2032static inline HRESULT IWMPSettings_get_playCount(IWMPSettings* This,LONG *plCount) {
 2033    return This->lpVtbl->get_playCount(This,plCount);
 2034}
 2035static inline HRESULT IWMPSettings_put_playCount(IWMPSettings* This,LONG plCount) {
 2036    return This->lpVtbl->put_playCount(This,plCount);
 2037}
 2038static inline HRESULT IWMPSettings_get_rate(IWMPSettings* This,double *pdRate) {
 2039    return This->lpVtbl->get_rate(This,pdRate);
 2040}
 2041static inline HRESULT IWMPSettings_put_rate(IWMPSettings* This,double pdRate) {
 2042    return This->lpVtbl->put_rate(This,pdRate);
 2043}
 2044static inline HRESULT IWMPSettings_get_balance(IWMPSettings* This,LONG *plBalance) {
 2045    return This->lpVtbl->get_balance(This,plBalance);
 2046}
 2047static inline HRESULT IWMPSettings_put_balance(IWMPSettings* This,LONG plBalance) {
 2048    return This->lpVtbl->put_balance(This,plBalance);
 2049}
 2050static inline HRESULT IWMPSettings_get_volume(IWMPSettings* This,LONG *plVolume) {
 2051    return This->lpVtbl->get_volume(This,plVolume);
 2052}
 2053static inline HRESULT IWMPSettings_put_volume(IWMPSettings* This,LONG plVolume) {
 2054    return This->lpVtbl->put_volume(This,plVolume);
 2055}
 2056static inline HRESULT IWMPSettings_getMode(IWMPSettings* This,BSTR bstrMode,VARIANT_BOOL *pvarfMode) {
 2057    return This->lpVtbl->getMode(This,bstrMode,pvarfMode);
 2058}
 2059static inline HRESULT IWMPSettings_setMode(IWMPSettings* This,BSTR bstrMode,VARIANT_BOOL varfMode) {
 2060    return This->lpVtbl->setMode(This,bstrMode,varfMode);
 2061}
 2062static inline HRESULT IWMPSettings_get_enableErrorDialogs(IWMPSettings* This,VARIANT_BOOL *pfEnableErrorDialogs) {
 2063    return This->lpVtbl->get_enableErrorDialogs(This,pfEnableErrorDialogs);
 2064}
 2065static inline HRESULT IWMPSettings_put_enableErrorDialogs(IWMPSettings* This,VARIANT_BOOL pfEnableErrorDialogs) {
 2066    return This->lpVtbl->put_enableErrorDialogs(This,pfEnableErrorDialogs);
 2067}
 2068#endif
 2069#endif
 2070
 2071#endif
 2072
 2073
 2074#endif  /* __IWMPSettings_INTERFACE_DEFINED__ */
 2075
 2076/*****************************************************************************
 2077 * IWMPStringCollection interface
 2078 */
 2079#ifndef __IWMPStringCollection_INTERFACE_DEFINED__
 2080#define __IWMPStringCollection_INTERFACE_DEFINED__
 2081
 2082DEFINE_GUID(IID_IWMPStringCollection, 0x4a976298, 0x8c0d, 0x11d3, 0xb3,0x89, 0x00,0xc0,0x4f,0x68,0x57,0x4b);
 2083#if defined(__cplusplus) && !defined(CINTERFACE)
 2084MIDL_INTERFACE("4a976298-8c0d-11d3-b389-00c04f68574b")
 2085IWMPStringCollection : public IDispatch
 2086{
 2087    virtual HRESULT STDMETHODCALLTYPE get_count(
 2088        LONG *plCount) = 0;
 2089
 2090    virtual HRESULT STDMETHODCALLTYPE Item(
 2091        LONG lIndex,
 2092        BSTR *pbstrString) = 0;
 2093
 2094};
 2095#ifdef __CRT_UUID_DECL
 2096__CRT_UUID_DECL(IWMPStringCollection, 0x4a976298, 0x8c0d, 0x11d3, 0xb3,0x89, 0x00,0xc0,0x4f,0x68,0x57,0x4b)
 2097#endif
 2098#else
 2099typedef struct IWMPStringCollectionVtbl {
 2100    BEGIN_INTERFACE
 2101
 2102    /*** IUnknown methods ***/
 2103    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2104        IWMPStringCollection *This,
 2105        REFIID riid,
 2106        void **ppvObject);
 2107
 2108    ULONG (STDMETHODCALLTYPE *AddRef)(
 2109        IWMPStringCollection *This);
 2110
 2111    ULONG (STDMETHODCALLTYPE *Release)(
 2112        IWMPStringCollection *This);
 2113
 2114    /*** IDispatch methods ***/
 2115    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2116        IWMPStringCollection *This,
 2117        UINT *pctinfo);
 2118
 2119    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2120        IWMPStringCollection *This,
 2121        UINT iTInfo,
 2122        LCID lcid,
 2123        ITypeInfo **ppTInfo);
 2124
 2125    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2126        IWMPStringCollection *This,
 2127        REFIID riid,
 2128        LPOLESTR *rgszNames,
 2129        UINT cNames,
 2130        LCID lcid,
 2131        DISPID *rgDispId);
 2132
 2133    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2134        IWMPStringCollection *This,
 2135        DISPID dispIdMember,
 2136        REFIID riid,
 2137        LCID lcid,
 2138        WORD wFlags,
 2139        DISPPARAMS *pDispParams,
 2140        VARIANT *pVarResult,
 2141        EXCEPINFO *pExcepInfo,
 2142        UINT *puArgErr);
 2143
 2144    /*** IWMPStringCollection methods ***/
 2145    HRESULT (STDMETHODCALLTYPE *get_count)(
 2146        IWMPStringCollection *This,
 2147        LONG *plCount);
 2148
 2149    HRESULT (STDMETHODCALLTYPE *Item)(
 2150        IWMPStringCollection *This,
 2151        LONG lIndex,
 2152        BSTR *pbstrString);
 2153
 2154    END_INTERFACE
 2155} IWMPStringCollectionVtbl;
 2156
 2157interface IWMPStringCollection {
 2158    CONST_VTBL IWMPStringCollectionVtbl* lpVtbl;
 2159};
 2160
 2161#ifdef COBJMACROS
 2162#ifndef WIDL_C_INLINE_WRAPPERS
 2163/*** IUnknown methods ***/
 2164#define IWMPStringCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2165#define IWMPStringCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 2166#define IWMPStringCollection_Release(This) (This)->lpVtbl->Release(This)
 2167/*** IDispatch methods ***/
 2168#define IWMPStringCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2169#define IWMPStringCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2170#define IWMPStringCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2171#define IWMPStringCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2172/*** IWMPStringCollection methods ***/
 2173#define IWMPStringCollection_get_count(This,plCount) (This)->lpVtbl->get_count(This,plCount)
 2174#define IWMPStringCollection_Item(This,lIndex,pbstrString) (This)->lpVtbl->Item(This,lIndex,pbstrString)
 2175#else
 2176/*** IUnknown methods ***/
 2177static inline HRESULT IWMPStringCollection_QueryInterface(IWMPStringCollection* This,REFIID riid,void **ppvObject) {
 2178    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2179}
 2180static inline ULONG IWMPStringCollection_AddRef(IWMPStringCollection* This) {
 2181    return This->lpVtbl->AddRef(This);
 2182}
 2183static inline ULONG IWMPStringCollection_Release(IWMPStringCollection* This) {
 2184    return This->lpVtbl->Release(This);
 2185}
 2186/*** IDispatch methods ***/
 2187static inline HRESULT IWMPStringCollection_GetTypeInfoCount(IWMPStringCollection* This,UINT *pctinfo) {
 2188    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 2189}
 2190static inline HRESULT IWMPStringCollection_GetTypeInfo(IWMPStringCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 2191    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 2192}
 2193static inline HRESULT IWMPStringCollection_GetIDsOfNames(IWMPStringCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 2194    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 2195}
 2196static inline HRESULT IWMPStringCollection_Invoke(IWMPStringCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 2197    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 2198}
 2199/*** IWMPStringCollection methods ***/
 2200static inline HRESULT IWMPStringCollection_get_count(IWMPStringCollection* This,LONG *plCount) {
 2201    return This->lpVtbl->get_count(This,plCount);
 2202}
 2203static inline HRESULT IWMPStringCollection_Item(IWMPStringCollection* This,LONG lIndex,BSTR *pbstrString) {
 2204    return This->lpVtbl->Item(This,lIndex,pbstrString);
 2205}
 2206#endif
 2207#endif
 2208
 2209#endif
 2210
 2211
 2212#endif  /* __IWMPStringCollection_INTERFACE_DEFINED__ */
 2213
 2214/*****************************************************************************
 2215 * IWMPMediaCollection interface
 2216 */
 2217#ifndef __IWMPMediaCollection_INTERFACE_DEFINED__
 2218#define __IWMPMediaCollection_INTERFACE_DEFINED__
 2219
 2220DEFINE_GUID(IID_IWMPMediaCollection, 0x8363bc22, 0xb4b4, 0x4b19, 0x98,0x9d, 0x1c,0xd7,0x65,0x74,0x9d,0xd1);
 2221#if defined(__cplusplus) && !defined(CINTERFACE)
 2222MIDL_INTERFACE("8363bc22-b4b4-4b19-989d-1cd765749dd1")
 2223IWMPMediaCollection : public IDispatch
 2224{
 2225    virtual HRESULT STDMETHODCALLTYPE add(
 2226        BSTR bstrURL,
 2227        IWMPMedia **ppItem) = 0;
 2228
 2229    virtual HRESULT STDMETHODCALLTYPE getAll(
 2230        IWMPPlaylist **ppMediaItems) = 0;
 2231
 2232    virtual HRESULT STDMETHODCALLTYPE getByName(
 2233        BSTR bstrName,
 2234        IWMPPlaylist **ppMediaItems) = 0;
 2235
 2236    virtual HRESULT STDMETHODCALLTYPE getByGenre(
 2237        BSTR bstrGenre,
 2238        IWMPPlaylist **ppMediaItems) = 0;
 2239
 2240    virtual HRESULT STDMETHODCALLTYPE getByAuthor(
 2241        BSTR bstrAuthor,
 2242        IWMPPlaylist **ppMediaItems) = 0;
 2243
 2244    virtual HRESULT STDMETHODCALLTYPE getByAlbum(
 2245        BSTR bstrAlbum,
 2246        IWMPPlaylist **ppMediaItems) = 0;
 2247
 2248    virtual HRESULT STDMETHODCALLTYPE getByAttribute(
 2249        BSTR bstrAttribute,
 2250        BSTR bstrValue,
 2251        IWMPPlaylist **ppMediaItems) = 0;
 2252
 2253    virtual HRESULT STDMETHODCALLTYPE remove(
 2254        IWMPMedia *pItem,
 2255        VARIANT_BOOL varfDeleteFile) = 0;
 2256
 2257    virtual HRESULT STDMETHODCALLTYPE getAttributeStringCollection(
 2258        BSTR bstrAttribute,
 2259        BSTR bstrMediaType,
 2260        IWMPStringCollection **ppStringCollection) = 0;
 2261
 2262    virtual HRESULT STDMETHODCALLTYPE getMediaAtom(
 2263        BSTR bstrItemName,
 2264        LONG *plAtom) = 0;
 2265
 2266    virtual HRESULT STDMETHODCALLTYPE setDeleted(
 2267        IWMPMedia *pItem,
 2268        VARIANT_BOOL varfIsDeleted) = 0;
 2269
 2270    virtual HRESULT STDMETHODCALLTYPE isDeleted(
 2271        IWMPMedia *pItem,
 2272        VARIANT_BOOL *pvarfIsDeleted) = 0;
 2273
 2274};
 2275#ifdef __CRT_UUID_DECL
 2276__CRT_UUID_DECL(IWMPMediaCollection, 0x8363bc22, 0xb4b4, 0x4b19, 0x98,0x9d, 0x1c,0xd7,0x65,0x74,0x9d,0xd1)
 2277#endif
 2278#else
 2279typedef struct IWMPMediaCollectionVtbl {
 2280    BEGIN_INTERFACE
 2281
 2282    /*** IUnknown methods ***/
 2283    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2284        IWMPMediaCollection *This,
 2285        REFIID riid,
 2286        void **ppvObject);
 2287
 2288    ULONG (STDMETHODCALLTYPE *AddRef)(
 2289        IWMPMediaCollection *This);
 2290
 2291    ULONG (STDMETHODCALLTYPE *Release)(
 2292        IWMPMediaCollection *This);
 2293
 2294    /*** IDispatch methods ***/
 2295    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2296        IWMPMediaCollection *This,
 2297        UINT *pctinfo);
 2298
 2299    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2300        IWMPMediaCollection *This,
 2301        UINT iTInfo,
 2302        LCID lcid,
 2303        ITypeInfo **ppTInfo);
 2304
 2305    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2306        IWMPMediaCollection *This,
 2307        REFIID riid,
 2308        LPOLESTR *rgszNames,
 2309        UINT cNames,
 2310        LCID lcid,
 2311        DISPID *rgDispId);
 2312
 2313    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2314        IWMPMediaCollection *This,
 2315        DISPID dispIdMember,
 2316        REFIID riid,
 2317        LCID lcid,
 2318        WORD wFlags,
 2319        DISPPARAMS *pDispParams,
 2320        VARIANT *pVarResult,
 2321        EXCEPINFO *pExcepInfo,
 2322        UINT *puArgErr);
 2323
 2324    /*** IWMPMediaCollection methods ***/
 2325    HRESULT (STDMETHODCALLTYPE *add)(
 2326        IWMPMediaCollection *This,
 2327        BSTR bstrURL,
 2328        IWMPMedia **ppItem);
 2329
 2330    HRESULT (STDMETHODCALLTYPE *getAll)(
 2331        IWMPMediaCollection *This,
 2332        IWMPPlaylist **ppMediaItems);
 2333
 2334    HRESULT (STDMETHODCALLTYPE *getByName)(
 2335        IWMPMediaCollection *This,
 2336        BSTR bstrName,
 2337        IWMPPlaylist **ppMediaItems);
 2338
 2339    HRESULT (STDMETHODCALLTYPE *getByGenre)(
 2340        IWMPMediaCollection *This,
 2341        BSTR bstrGenre,
 2342        IWMPPlaylist **ppMediaItems);
 2343
 2344    HRESULT (STDMETHODCALLTYPE *getByAuthor)(
 2345        IWMPMediaCollection *This,
 2346        BSTR bstrAuthor,
 2347        IWMPPlaylist **ppMediaItems);
 2348
 2349    HRESULT (STDMETHODCALLTYPE *getByAlbum)(
 2350        IWMPMediaCollection *This,
 2351        BSTR bstrAlbum,
 2352        IWMPPlaylist **ppMediaItems);
 2353
 2354    HRESULT (STDMETHODCALLTYPE *getByAttribute)(
 2355        IWMPMediaCollection *This,
 2356        BSTR bstrAttribute,
 2357        BSTR bstrValue,
 2358        IWMPPlaylist **ppMediaItems);
 2359
 2360    HRESULT (STDMETHODCALLTYPE *remove)(
 2361        IWMPMediaCollection *This,
 2362        IWMPMedia *pItem,
 2363        VARIANT_BOOL varfDeleteFile);
 2364
 2365    HRESULT (STDMETHODCALLTYPE *getAttributeStringCollection)(
 2366        IWMPMediaCollection *This,
 2367        BSTR bstrAttribute,
 2368        BSTR bstrMediaType,
 2369        IWMPStringCollection **ppStringCollection);
 2370
 2371    HRESULT (STDMETHODCALLTYPE *getMediaAtom)(
 2372        IWMPMediaCollection *This,
 2373        BSTR bstrItemName,
 2374        LONG *plAtom);
 2375
 2376    HRESULT (STDMETHODCALLTYPE *setDeleted)(
 2377        IWMPMediaCollection *This,
 2378        IWMPMedia *pItem,
 2379        VARIANT_BOOL varfIsDeleted);
 2380
 2381    HRESULT (STDMETHODCALLTYPE *isDeleted)(
 2382        IWMPMediaCollection *This,
 2383        IWMPMedia *pItem,
 2384        VARIANT_BOOL *pvarfIsDeleted);
 2385
 2386    END_INTERFACE
 2387} IWMPMediaCollectionVtbl;
 2388
 2389interface IWMPMediaCollection {
 2390    CONST_VTBL IWMPMediaCollectionVtbl* lpVtbl;
 2391};
 2392
 2393#ifdef COBJMACROS
 2394#ifndef WIDL_C_INLINE_WRAPPERS
 2395/*** IUnknown methods ***/
 2396#define IWMPMediaCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2397#define IWMPMediaCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 2398#define IWMPMediaCollection_Release(This) (This)->lpVtbl->Release(This)
 2399/*** IDispatch methods ***/
 2400#define IWMPMediaCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2401#define IWMPMediaCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2402#define IWMPMediaCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2403#define IWMPMediaCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2404/*** IWMPMediaCollection methods ***/
 2405#define IWMPMediaCollection_add(This,bstrURL,ppItem) (This)->lpVtbl->add(This,bstrURL,ppItem)
 2406#define IWMPMediaCollection_getAll(This,ppMediaItems) (This)->lpVtbl->getAll(This,ppMediaItems)
 2407#define IWMPMediaCollection_getByName(This,bstrName,ppMediaItems) (This)->lpVtbl->getByName(This,bstrName,ppMediaItems)
 2408#define IWMPMediaCollection_getByGenre(This,bstrGenre,ppMediaItems) (This)->lpVtbl->getByGenre(This,bstrGenre,ppMediaItems)
 2409#define IWMPMediaCollection_getByAuthor(This,bstrAuthor,ppMediaItems) (This)->lpVtbl->getByAuthor(This,bstrAuthor,ppMediaItems)
 2410#define IWMPMediaCollection_getByAlbum(This,bstrAlbum,ppMediaItems) (This)->lpVtbl->getByAlbum(This,bstrAlbum,ppMediaItems)
 2411#define IWMPMediaCollection_getByAttribute(This,bstrAttribute,bstrValue,ppMediaItems) (This)->lpVtbl->getByAttribute(This,bstrAttribute,bstrValue,ppMediaItems)
 2412#define IWMPMediaCollection_remove(This,pItem,varfDeleteFile) (This)->lpVtbl->remove(This,pItem,varfDeleteFile)
 2413#define IWMPMediaCollection_getAttributeStringCollection(This,bstrAttribute,bstrMediaType,ppStringCollection) (This)->lpVtbl->getAttributeStringCollection(This,bstrAttribute,bstrMediaType,ppStringCollection)
 2414#define IWMPMediaCollection_getMediaAtom(This,bstrItemName,plAtom) (This)->lpVtbl->getMediaAtom(This,bstrItemName,plAtom)
 2415#define IWMPMediaCollection_setDeleted(This,pItem,varfIsDeleted) (This)->lpVtbl->setDeleted(This,pItem,varfIsDeleted)
 2416#define IWMPMediaCollection_isDeleted(This,pItem,pvarfIsDeleted) (This)->lpVtbl->isDeleted(This,pItem,pvarfIsDeleted)
 2417#else
 2418/*** IUnknown methods ***/
 2419static inline HRESULT IWMPMediaCollection_QueryInterface(IWMPMediaCollection* This,REFIID riid,void **ppvObject) {
 2420    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2421}
 2422static inline ULONG IWMPMediaCollection_AddRef(IWMPMediaCollection* This) {
 2423    return This->lpVtbl->AddRef(This);
 2424}
 2425static inline ULONG IWMPMediaCollection_Release(IWMPMediaCollection* This) {
 2426    return This->lpVtbl->Release(This);
 2427}
 2428/*** IDispatch methods ***/
 2429static inline HRESULT IWMPMediaCollection_GetTypeInfoCount(IWMPMediaCollection* This,UINT *pctinfo) {
 2430    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 2431}
 2432static inline HRESULT IWMPMediaCollection_GetTypeInfo(IWMPMediaCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 2433    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 2434}
 2435static inline HRESULT IWMPMediaCollection_GetIDsOfNames(IWMPMediaCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 2436    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 2437}
 2438static inline HRESULT IWMPMediaCollection_Invoke(IWMPMediaCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 2439    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 2440}
 2441/*** IWMPMediaCollection methods ***/
 2442static inline HRESULT IWMPMediaCollection_add(IWMPMediaCollection* This,BSTR bstrURL,IWMPMedia **ppItem) {
 2443    return This->lpVtbl->add(This,bstrURL,ppItem);
 2444}
 2445static inline HRESULT IWMPMediaCollection_getAll(IWMPMediaCollection* This,IWMPPlaylist **ppMediaItems) {
 2446    return This->lpVtbl->getAll(This,ppMediaItems);
 2447}
 2448static inline HRESULT IWMPMediaCollection_getByName(IWMPMediaCollection* This,BSTR bstrName,IWMPPlaylist **ppMediaItems) {
 2449    return This->lpVtbl->getByName(This,bstrName,ppMediaItems);
 2450}
 2451static inline HRESULT IWMPMediaCollection_getByGenre(IWMPMediaCollection* This,BSTR bstrGenre,IWMPPlaylist **ppMediaItems) {
 2452    return This->lpVtbl->getByGenre(This,bstrGenre,ppMediaItems);
 2453}
 2454static inline HRESULT IWMPMediaCollection_getByAuthor(IWMPMediaCollection* This,BSTR bstrAuthor,IWMPPlaylist **ppMediaItems) {
 2455    return This->lpVtbl->getByAuthor(This,bstrAuthor,ppMediaItems);
 2456}
 2457static inline HRESULT IWMPMediaCollection_getByAlbum(IWMPMediaCollection* This,BSTR bstrAlbum,IWMPPlaylist **ppMediaItems) {
 2458    return This->lpVtbl->getByAlbum(This,bstrAlbum,ppMediaItems);
 2459}
 2460static inline HRESULT IWMPMediaCollection_getByAttribute(IWMPMediaCollection* This,BSTR bstrAttribute,BSTR bstrValue,IWMPPlaylist **ppMediaItems) {
 2461    return This->lpVtbl->getByAttribute(This,bstrAttribute,bstrValue,ppMediaItems);
 2462}
 2463static inline HRESULT IWMPMediaCollection_remove(IWMPMediaCollection* This,IWMPMedia *pItem,VARIANT_BOOL varfDeleteFile) {
 2464    return This->lpVtbl->remove(This,pItem,varfDeleteFile);
 2465}
 2466static inline HRESULT IWMPMediaCollection_getAttributeStringCollection(IWMPMediaCollection* This,BSTR bstrAttribute,BSTR bstrMediaType,IWMPStringCollection **ppStringCollection) {
 2467    return This->lpVtbl->getAttributeStringCollection(This,bstrAttribute,bstrMediaType,ppStringCollection);
 2468}
 2469static inline HRESULT IWMPMediaCollection_getMediaAtom(IWMPMediaCollection* This,BSTR bstrItemName,LONG *plAtom) {
 2470    return This->lpVtbl->getMediaAtom(This,bstrItemName,plAtom);
 2471}
 2472static inline HRESULT IWMPMediaCollection_setDeleted(IWMPMediaCollection* This,IWMPMedia *pItem,VARIANT_BOOL varfIsDeleted) {
 2473    return This->lpVtbl->setDeleted(This,pItem,varfIsDeleted);
 2474}
 2475static inline HRESULT IWMPMediaCollection_isDeleted(IWMPMediaCollection* This,IWMPMedia *pItem,VARIANT_BOOL *pvarfIsDeleted) {
 2476    return This->lpVtbl->isDeleted(This,pItem,pvarfIsDeleted);
 2477}
 2478#endif
 2479#endif
 2480
 2481#endif
 2482
 2483
 2484#endif  /* __IWMPMediaCollection_INTERFACE_DEFINED__ */
 2485
 2486/*****************************************************************************
 2487 * IWMPPlaylistArray interface
 2488 */
 2489#ifndef __IWMPPlaylistArray_INTERFACE_DEFINED__
 2490#define __IWMPPlaylistArray_INTERFACE_DEFINED__
 2491
 2492DEFINE_GUID(IID_IWMPPlaylistArray, 0x679409c0, 0x99f7, 0x11d3, 0x9f,0xb7, 0x00,0x10,0x5a,0xa6,0x20,0xbb);
 2493#if defined(__cplusplus) && !defined(CINTERFACE)
 2494MIDL_INTERFACE("679409c0-99f7-11d3-9fb7-00105aa620bb")
 2495IWMPPlaylistArray : public IDispatch
 2496{
 2497    virtual HRESULT STDMETHODCALLTYPE get_count(
 2498        LONG *plCount) = 0;
 2499
 2500    virtual HRESULT STDMETHODCALLTYPE Item(
 2501        LONG lIndex,
 2502        IWMPPlaylist **ppItem) = 0;
 2503
 2504};
 2505#ifdef __CRT_UUID_DECL
 2506__CRT_UUID_DECL(IWMPPlaylistArray, 0x679409c0, 0x99f7, 0x11d3, 0x9f,0xb7, 0x00,0x10,0x5a,0xa6,0x20,0xbb)
 2507#endif
 2508#else
 2509typedef struct IWMPPlaylistArrayVtbl {
 2510    BEGIN_INTERFACE
 2511
 2512    /*** IUnknown methods ***/
 2513    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2514        IWMPPlaylistArray *This,
 2515        REFIID riid,
 2516        void **ppvObject);
 2517
 2518    ULONG (STDMETHODCALLTYPE *AddRef)(
 2519        IWMPPlaylistArray *This);
 2520
 2521    ULONG (STDMETHODCALLTYPE *Release)(
 2522        IWMPPlaylistArray *This);
 2523
 2524    /*** IDispatch methods ***/
 2525    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2526        IWMPPlaylistArray *This,
 2527        UINT *pctinfo);
 2528
 2529    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2530        IWMPPlaylistArray *This,
 2531        UINT iTInfo,
 2532        LCID lcid,
 2533        ITypeInfo **ppTInfo);
 2534
 2535    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2536        IWMPPlaylistArray *This,
 2537        REFIID riid,
 2538        LPOLESTR *rgszNames,
 2539        UINT cNames,
 2540        LCID lcid,
 2541        DISPID *rgDispId);
 2542
 2543    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2544        IWMPPlaylistArray *This,
 2545        DISPID dispIdMember,
 2546        REFIID riid,
 2547        LCID lcid,
 2548        WORD wFlags,
 2549        DISPPARAMS *pDispParams,
 2550        VARIANT *pVarResult,
 2551        EXCEPINFO *pExcepInfo,
 2552        UINT *puArgErr);
 2553
 2554    /*** IWMPPlaylistArray methods ***/
 2555    HRESULT (STDMETHODCALLTYPE *get_count)(
 2556        IWMPPlaylistArray *This,
 2557        LONG *plCount);
 2558
 2559    HRESULT (STDMETHODCALLTYPE *Item)(
 2560        IWMPPlaylistArray *This,
 2561        LONG lIndex,
 2562        IWMPPlaylist **ppItem);
 2563
 2564    END_INTERFACE
 2565} IWMPPlaylistArrayVtbl;
 2566
 2567interface IWMPPlaylistArray {
 2568    CONST_VTBL IWMPPlaylistArrayVtbl* lpVtbl;
 2569};
 2570
 2571#ifdef COBJMACROS
 2572#ifndef WIDL_C_INLINE_WRAPPERS
 2573/*** IUnknown methods ***/
 2574#define IWMPPlaylistArray_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2575#define IWMPPlaylistArray_AddRef(This) (This)->lpVtbl->AddRef(This)
 2576#define IWMPPlaylistArray_Release(This) (This)->lpVtbl->Release(This)
 2577/*** IDispatch methods ***/
 2578#define IWMPPlaylistArray_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2579#define IWMPPlaylistArray_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2580#define IWMPPlaylistArray_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2581#define IWMPPlaylistArray_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2582/*** IWMPPlaylistArray methods ***/
 2583#define IWMPPlaylistArray_get_count(This,plCount) (This)->lpVtbl->get_count(This,plCount)
 2584#define IWMPPlaylistArray_Item(This,lIndex,ppItem) (This)->lpVtbl->Item(This,lIndex,ppItem)
 2585#else
 2586/*** IUnknown methods ***/
 2587static inline HRESULT IWMPPlaylistArray_QueryInterface(IWMPPlaylistArray* This,REFIID riid,void **ppvObject) {
 2588    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2589}
 2590static inline ULONG IWMPPlaylistArray_AddRef(IWMPPlaylistArray* This) {
 2591    return This->lpVtbl->AddRef(This);
 2592}
 2593static inline ULONG IWMPPlaylistArray_Release(IWMPPlaylistArray* This) {
 2594    return This->lpVtbl->Release(This);
 2595}
 2596/*** IDispatch methods ***/
 2597static inline HRESULT IWMPPlaylistArray_GetTypeInfoCount(IWMPPlaylistArray* This,UINT *pctinfo) {
 2598    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 2599}
 2600static inline HRESULT IWMPPlaylistArray_GetTypeInfo(IWMPPlaylistArray* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 2601    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 2602}
 2603static inline HRESULT IWMPPlaylistArray_GetIDsOfNames(IWMPPlaylistArray* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 2604    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 2605}
 2606static inline HRESULT IWMPPlaylistArray_Invoke(IWMPPlaylistArray* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 2607    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 2608}
 2609/*** IWMPPlaylistArray methods ***/
 2610static inline HRESULT IWMPPlaylistArray_get_count(IWMPPlaylistArray* This,LONG *plCount) {
 2611    return This->lpVtbl->get_count(This,plCount);
 2612}
 2613static inline HRESULT IWMPPlaylistArray_Item(IWMPPlaylistArray* This,LONG lIndex,IWMPPlaylist **ppItem) {
 2614    return This->lpVtbl->Item(This,lIndex,ppItem);
 2615}
 2616#endif
 2617#endif
 2618
 2619#endif
 2620
 2621
 2622#endif  /* __IWMPPlaylistArray_INTERFACE_DEFINED__ */
 2623
 2624/*****************************************************************************
 2625 * IWMPPlaylistCollection interface
 2626 */
 2627#ifndef __IWMPPlaylistCollection_INTERFACE_DEFINED__
 2628#define __IWMPPlaylistCollection_INTERFACE_DEFINED__
 2629
 2630DEFINE_GUID(IID_IWMPPlaylistCollection, 0x10a13217, 0x23a7, 0x439b, 0xb1,0xc0, 0xd8,0x47,0xc7,0x9b,0x77,0x74);
 2631#if defined(__cplusplus) && !defined(CINTERFACE)
 2632MIDL_INTERFACE("10a13217-23a7-439b-b1c0-d847c79b7774")
 2633IWMPPlaylistCollection : public IDispatch
 2634{
 2635    virtual HRESULT STDMETHODCALLTYPE newPlaylist(
 2636        BSTR bstrName,
 2637        IWMPPlaylist **ppItem) = 0;
 2638
 2639    virtual HRESULT STDMETHODCALLTYPE getAll(
 2640        IWMPPlaylistArray **ppPlaylistArray) = 0;
 2641
 2642    virtual HRESULT STDMETHODCALLTYPE getByName(
 2643        BSTR bstrName,
 2644        IWMPPlaylistArray **ppPlaylistArray) = 0;
 2645
 2646    virtual HRESULT STDMETHODCALLTYPE remove(
 2647        IWMPPlaylist *pItem) = 0;
 2648
 2649    virtual HRESULT STDMETHODCALLTYPE setDeleted(
 2650        IWMPPlaylist *pItem,
 2651        VARIANT_BOOL varfIsDeleted) = 0;
 2652
 2653    virtual HRESULT STDMETHODCALLTYPE isDeleted(
 2654        IWMPPlaylist *pItem,
 2655        VARIANT_BOOL *pvarfIsDeleted) = 0;
 2656
 2657    virtual HRESULT STDMETHODCALLTYPE importPlaylist(
 2658        IWMPPlaylist *pItem,
 2659        IWMPPlaylist **ppImportedItem) = 0;
 2660
 2661};
 2662#ifdef __CRT_UUID_DECL
 2663__CRT_UUID_DECL(IWMPPlaylistCollection, 0x10a13217, 0x23a7, 0x439b, 0xb1,0xc0, 0xd8,0x47,0xc7,0x9b,0x77,0x74)
 2664#endif
 2665#else
 2666typedef struct IWMPPlaylistCollectionVtbl {
 2667    BEGIN_INTERFACE
 2668
 2669    /*** IUnknown methods ***/
 2670    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2671        IWMPPlaylistCollection *This,
 2672        REFIID riid,
 2673        void **ppvObject);
 2674
 2675    ULONG (STDMETHODCALLTYPE *AddRef)(
 2676        IWMPPlaylistCollection *This);
 2677
 2678    ULONG (STDMETHODCALLTYPE *Release)(
 2679        IWMPPlaylistCollection *This);
 2680
 2681    /*** IDispatch methods ***/
 2682    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2683        IWMPPlaylistCollection *This,
 2684        UINT *pctinfo);
 2685
 2686    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2687        IWMPPlaylistCollection *This,
 2688        UINT iTInfo,
 2689        LCID lcid,
 2690        ITypeInfo **ppTInfo);
 2691
 2692    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2693        IWMPPlaylistCollection *This,
 2694        REFIID riid,
 2695        LPOLESTR *rgszNames,
 2696        UINT cNames,
 2697        LCID lcid,
 2698        DISPID *rgDispId);
 2699
 2700    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2701        IWMPPlaylistCollection *This,
 2702        DISPID dispIdMember,
 2703        REFIID riid,
 2704        LCID lcid,
 2705        WORD wFlags,
 2706        DISPPARAMS *pDispParams,
 2707        VARIANT *pVarResult,
 2708        EXCEPINFO *pExcepInfo,
 2709        UINT *puArgErr);
 2710
 2711    /*** IWMPPlaylistCollection methods ***/
 2712    HRESULT (STDMETHODCALLTYPE *newPlaylist)(
 2713        IWMPPlaylistCollection *This,
 2714        BSTR bstrName,
 2715        IWMPPlaylist **ppItem);
 2716
 2717    HRESULT (STDMETHODCALLTYPE *getAll)(
 2718        IWMPPlaylistCollection *This,
 2719        IWMPPlaylistArray **ppPlaylistArray);
 2720
 2721    HRESULT (STDMETHODCALLTYPE *getByName)(
 2722        IWMPPlaylistCollection *This,
 2723        BSTR bstrName,
 2724        IWMPPlaylistArray **ppPlaylistArray);
 2725
 2726    HRESULT (STDMETHODCALLTYPE *remove)(
 2727        IWMPPlaylistCollection *This,
 2728        IWMPPlaylist *pItem);
 2729
 2730    HRESULT (STDMETHODCALLTYPE *setDeleted)(
 2731        IWMPPlaylistCollection *This,
 2732        IWMPPlaylist *pItem,
 2733        VARIANT_BOOL varfIsDeleted);
 2734
 2735    HRESULT (STDMETHODCALLTYPE *isDeleted)(
 2736        IWMPPlaylistCollection *This,
 2737        IWMPPlaylist *pItem,
 2738        VARIANT_BOOL *pvarfIsDeleted);
 2739
 2740    HRESULT (STDMETHODCALLTYPE *importPlaylist)(
 2741        IWMPPlaylistCollection *This,
 2742        IWMPPlaylist *pItem,
 2743        IWMPPlaylist **ppImportedItem);
 2744
 2745    END_INTERFACE
 2746} IWMPPlaylistCollectionVtbl;
 2747
 2748interface IWMPPlaylistCollection {
 2749    CONST_VTBL IWMPPlaylistCollectionVtbl* lpVtbl;
 2750};
 2751
 2752#ifdef COBJMACROS
 2753#ifndef WIDL_C_INLINE_WRAPPERS
 2754/*** IUnknown methods ***/
 2755#define IWMPPlaylistCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 2756#define IWMPPlaylistCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 2757#define IWMPPlaylistCollection_Release(This) (This)->lpVtbl->Release(This)
 2758/*** IDispatch methods ***/
 2759#define IWMPPlaylistCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 2760#define IWMPPlaylistCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 2761#define IWMPPlaylistCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 2762#define IWMPPlaylistCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 2763/*** IWMPPlaylistCollection methods ***/
 2764#define IWMPPlaylistCollection_newPlaylist(This,bstrName,ppItem) (This)->lpVtbl->newPlaylist(This,bstrName,ppItem)
 2765#define IWMPPlaylistCollection_getAll(This,ppPlaylistArray) (This)->lpVtbl->getAll(This,ppPlaylistArray)
 2766#define IWMPPlaylistCollection_getByName(This,bstrName,ppPlaylistArray) (This)->lpVtbl->getByName(This,bstrName,ppPlaylistArray)
 2767#define IWMPPlaylistCollection_remove(This,pItem) (This)->lpVtbl->remove(This,pItem)
 2768#define IWMPPlaylistCollection_setDeleted(This,pItem,varfIsDeleted) (This)->lpVtbl->setDeleted(This,pItem,varfIsDeleted)
 2769#define IWMPPlaylistCollection_isDeleted(This,pItem,pvarfIsDeleted) (This)->lpVtbl->isDeleted(This,pItem,pvarfIsDeleted)
 2770#define IWMPPlaylistCollection_importPlaylist(This,pItem,ppImportedItem) (This)->lpVtbl->importPlaylist(This,pItem,ppImportedItem)
 2771#else
 2772/*** IUnknown methods ***/
 2773static inline HRESULT IWMPPlaylistCollection_QueryInterface(IWMPPlaylistCollection* This,REFIID riid,void **ppvObject) {
 2774    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 2775}
 2776static inline ULONG IWMPPlaylistCollection_AddRef(IWMPPlaylistCollection* This) {
 2777    return This->lpVtbl->AddRef(This);
 2778}
 2779static inline ULONG IWMPPlaylistCollection_Release(IWMPPlaylistCollection* This) {
 2780    return This->lpVtbl->Release(This);
 2781}
 2782/*** IDispatch methods ***/
 2783static inline HRESULT IWMPPlaylistCollection_GetTypeInfoCount(IWMPPlaylistCollection* This,UINT *pctinfo) {
 2784    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 2785}
 2786static inline HRESULT IWMPPlaylistCollection_GetTypeInfo(IWMPPlaylistCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 2787    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 2788}
 2789static inline HRESULT IWMPPlaylistCollection_GetIDsOfNames(IWMPPlaylistCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 2790    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 2791}
 2792static inline HRESULT IWMPPlaylistCollection_Invoke(IWMPPlaylistCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 2793    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 2794}
 2795/*** IWMPPlaylistCollection methods ***/
 2796static inline HRESULT IWMPPlaylistCollection_newPlaylist(IWMPPlaylistCollection* This,BSTR bstrName,IWMPPlaylist **ppItem) {
 2797    return This->lpVtbl->newPlaylist(This,bstrName,ppItem);
 2798}
 2799static inline HRESULT IWMPPlaylistCollection_getAll(IWMPPlaylistCollection* This,IWMPPlaylistArray **ppPlaylistArray) {
 2800    return This->lpVtbl->getAll(This,ppPlaylistArray);
 2801}
 2802static inline HRESULT IWMPPlaylistCollection_getByName(IWMPPlaylistCollection* This,BSTR bstrName,IWMPPlaylistArray **ppPlaylistArray) {
 2803    return This->lpVtbl->getByName(This,bstrName,ppPlaylistArray);
 2804}
 2805static inline HRESULT IWMPPlaylistCollection_remove(IWMPPlaylistCollection* This,IWMPPlaylist *pItem) {
 2806    return This->lpVtbl->remove(This,pItem);
 2807}
 2808static inline HRESULT IWMPPlaylistCollection_setDeleted(IWMPPlaylistCollection* This,IWMPPlaylist *pItem,VARIANT_BOOL varfIsDeleted) {
 2809    return This->lpVtbl->setDeleted(This,pItem,varfIsDeleted);
 2810}
 2811static inline HRESULT IWMPPlaylistCollection_isDeleted(IWMPPlaylistCollection* This,IWMPPlaylist *pItem,VARIANT_BOOL *pvarfIsDeleted) {
 2812    return This->lpVtbl->isDeleted(This,pItem,pvarfIsDeleted);
 2813}
 2814static inline HRESULT IWMPPlaylistCollection_importPlaylist(IWMPPlaylistCollection* This,IWMPPlaylist *pItem,IWMPPlaylist **ppImportedItem) {
 2815    return This->lpVtbl->importPlaylist(This,pItem,ppImportedItem);
 2816}
 2817#endif
 2818#endif
 2819
 2820#endif
 2821
 2822
 2823#endif  /* __IWMPPlaylistCollection_INTERFACE_DEFINED__ */
 2824
 2825/*****************************************************************************
 2826 * IWMPNetwork interface
 2827 */
 2828#ifndef __IWMPNetwork_INTERFACE_DEFINED__
 2829#define __IWMPNetwork_INTERFACE_DEFINED__
 2830
 2831DEFINE_GUID(IID_IWMPNetwork, 0xec21b779, 0xedef, 0x462d, 0xbb,0xa4, 0xad,0x9d,0xde,0x2b,0x29,0xa7);
 2832#if defined(__cplusplus) && !defined(CINTERFACE)
 2833MIDL_INTERFACE("ec21b779-edef-462d-bba4-ad9dde2b29a7")
 2834IWMPNetwork : public IDispatch
 2835{
 2836    virtual HRESULT STDMETHODCALLTYPE get_bandWidth(
 2837        LONG *plBandwidth) = 0;
 2838
 2839    virtual HRESULT STDMETHODCALLTYPE get_recoveredPackets(
 2840        LONG *plRecoveredPackets) = 0;
 2841
 2842    virtual HRESULT STDMETHODCALLTYPE get_sourceProtocol(
 2843        BSTR *pbstrSourceProtocol) = 0;
 2844
 2845    virtual HRESULT STDMETHODCALLTYPE get_receivedPackets(
 2846        LONG *plReceivedPackets) = 0;
 2847
 2848    virtual HRESULT STDMETHODCALLTYPE get_lostPackets(
 2849        LONG *plLostPackets) = 0;
 2850
 2851    virtual HRESULT STDMETHODCALLTYPE get_receptionQuality(
 2852        LONG *plReceptionQuality) = 0;
 2853
 2854    virtual HRESULT STDMETHODCALLTYPE get_bufferingCount(
 2855        LONG *plBufferingCount) = 0;
 2856
 2857    virtual HRESULT STDMETHODCALLTYPE get_bufferingProgress(
 2858        LONG *plBufferingProgress) = 0;
 2859
 2860    virtual HRESULT STDMETHODCALLTYPE get_bufferingTime(
 2861        LONG *plBufferingTime) = 0;
 2862
 2863    virtual HRESULT STDMETHODCALLTYPE put_bufferingTime(
 2864        LONG plBufferingTime) = 0;
 2865
 2866    virtual HRESULT STDMETHODCALLTYPE get_frameRate(
 2867        LONG *plFrameRate) = 0;
 2868
 2869    virtual HRESULT STDMETHODCALLTYPE get_maxBitRate(
 2870        LONG *plBitRate) = 0;
 2871
 2872    virtual HRESULT STDMETHODCALLTYPE get_bitRate(
 2873        LONG *plBitRate) = 0;
 2874
 2875    virtual HRESULT STDMETHODCALLTYPE getProxySettings(
 2876        BSTR bstrProtocol,
 2877        LONG *plProxySetting) = 0;
 2878
 2879    virtual HRESULT STDMETHODCALLTYPE setProxySettings(
 2880        BSTR bstrProtocol,
 2881        LONG lProxySetting) = 0;
 2882
 2883    virtual HRESULT STDMETHODCALLTYPE getProxyName(
 2884        BSTR bstrProtocol,
 2885        BSTR *pbstrProxyName) = 0;
 2886
 2887    virtual HRESULT STDMETHODCALLTYPE setProxyName(
 2888        BSTR bstrProtocol,
 2889        BSTR bstrProxyName) = 0;
 2890
 2891    virtual HRESULT STDMETHODCALLTYPE getProxyPort(
 2892        BSTR bstrProtocol,
 2893        LONG *lProxyPort) = 0;
 2894
 2895    virtual HRESULT STDMETHODCALLTYPE setProxyPort(
 2896        BSTR bstrProtocol,
 2897        LONG lProxyPort) = 0;
 2898
 2899    virtual HRESULT STDMETHODCALLTYPE getProxyExceptionList(
 2900        BSTR bstrProtocol,
 2901        BSTR *pbstrExceptionList) = 0;
 2902
 2903    virtual HRESULT STDMETHODCALLTYPE setProxyExceptionList(
 2904        BSTR bstrProtocol,
 2905        BSTR pbstrExceptionList) = 0;
 2906
 2907    virtual HRESULT STDMETHODCALLTYPE getProxyBypassForLocal(
 2908        BSTR bstrProtocol,
 2909        VARIANT_BOOL *pfBypassForLocal) = 0;
 2910
 2911    virtual HRESULT STDMETHODCALLTYPE setProxyBypassForLocal(
 2912        BSTR bstrProtocol,
 2913        VARIANT_BOOL fBypassForLocal) = 0;
 2914
 2915    virtual HRESULT STDMETHODCALLTYPE get_maxBandwidth(
 2916        LONG *lMaxBandwidth) = 0;
 2917
 2918    virtual HRESULT STDMETHODCALLTYPE put_maxBandwidth(
 2919        LONG lMaxBandwidth) = 0;
 2920
 2921    virtual HRESULT STDMETHODCALLTYPE get_downloadProgress(
 2922        LONG *plDownloadProgress) = 0;
 2923
 2924    virtual HRESULT STDMETHODCALLTYPE get_encodedFrameRate(
 2925        LONG *plFrameRate) = 0;
 2926
 2927    virtual HRESULT STDMETHODCALLTYPE get_framesSkipped(
 2928        LONG *plFrames) = 0;
 2929
 2930};
 2931#ifdef __CRT_UUID_DECL
 2932__CRT_UUID_DECL(IWMPNetwork, 0xec21b779, 0xedef, 0x462d, 0xbb,0xa4, 0xad,0x9d,0xde,0x2b,0x29,0xa7)
 2933#endif
 2934#else
 2935typedef struct IWMPNetworkVtbl {
 2936    BEGIN_INTERFACE
 2937
 2938    /*** IUnknown methods ***/
 2939    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 2940        IWMPNetwork *This,
 2941        REFIID riid,
 2942        void **ppvObject);
 2943
 2944    ULONG (STDMETHODCALLTYPE *AddRef)(
 2945        IWMPNetwork *This);
 2946
 2947    ULONG (STDMETHODCALLTYPE *Release)(
 2948        IWMPNetwork *This);
 2949
 2950    /*** IDispatch methods ***/
 2951    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 2952        IWMPNetwork *This,
 2953        UINT *pctinfo);
 2954
 2955    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 2956        IWMPNetwork *This,
 2957        UINT iTInfo,
 2958        LCID lcid,
 2959        ITypeInfo **ppTInfo);
 2960
 2961    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 2962        IWMPNetwork *This,
 2963        REFIID riid,
 2964        LPOLESTR *rgszNames,
 2965        UINT cNames,
 2966        LCID lcid,
 2967        DISPID *rgDispId);
 2968
 2969    HRESULT (STDMETHODCALLTYPE *Invoke)(
 2970        IWMPNetwork *This,
 2971        DISPID dispIdMember,
 2972        REFIID riid,
 2973        LCID lcid,
 2974        WORD wFlags,
 2975        DISPPARAMS *pDispParams,
 2976        VARIANT *pVarResult,
 2977        EXCEPINFO *pExcepInfo,
 2978        UINT *puArgErr);
 2979
 2980    /*** IWMPNetwork methods ***/
 2981    HRESULT (STDMETHODCALLTYPE *get_bandWidth)(
 2982        IWMPNetwork *This,
 2983        LONG *plBandwidth);
 2984
 2985    HRESULT (STDMETHODCALLTYPE *get_recoveredPackets)(
 2986        IWMPNetwork *This,
 2987        LONG *plRecoveredPackets);
 2988
 2989    HRESULT (STDMETHODCALLTYPE *get_sourceProtocol)(
 2990        IWMPNetwork *This,
 2991        BSTR *pbstrSourceProtocol);
 2992
 2993    HRESULT (STDMETHODCALLTYPE *get_receivedPackets)(
 2994        IWMPNetwork *This,
 2995        LONG *plReceivedPackets);
 2996
 2997    HRESULT (STDMETHODCALLTYPE *get_lostPackets)(
 2998        IWMPNetwork *This,
 2999        LONG *plLostPackets);
 3000
 3001    HRESULT (STDMETHODCALLTYPE *get_receptionQuality)(
 3002        IWMPNetwork *This,
 3003        LONG *plReceptionQuality);
 3004
 3005    HRESULT (STDMETHODCALLTYPE *get_bufferingCount)(
 3006        IWMPNetwork *This,
 3007        LONG *plBufferingCount);
 3008
 3009    HRESULT (STDMETHODCALLTYPE *get_bufferingProgress)(
 3010        IWMPNetwork *This,
 3011        LONG *plBufferingProgress);
 3012
 3013    HRESULT (STDMETHODCALLTYPE *get_bufferingTime)(
 3014        IWMPNetwork *This,
 3015        LONG *plBufferingTime);
 3016
 3017    HRESULT (STDMETHODCALLTYPE *put_bufferingTime)(
 3018        IWMPNetwork *This,
 3019        LONG plBufferingTime);
 3020
 3021    HRESULT (STDMETHODCALLTYPE *get_frameRate)(
 3022        IWMPNetwork *This,
 3023        LONG *plFrameRate);
 3024
 3025    HRESULT (STDMETHODCALLTYPE *get_maxBitRate)(
 3026        IWMPNetwork *This,
 3027        LONG *plBitRate);
 3028
 3029    HRESULT (STDMETHODCALLTYPE *get_bitRate)(
 3030        IWMPNetwork *This,
 3031        LONG *plBitRate);
 3032
 3033    HRESULT (STDMETHODCALLTYPE *getProxySettings)(
 3034        IWMPNetwork *This,
 3035        BSTR bstrProtocol,
 3036        LONG *plProxySetting);
 3037
 3038    HRESULT (STDMETHODCALLTYPE *setProxySettings)(
 3039        IWMPNetwork *This,
 3040        BSTR bstrProtocol,
 3041        LONG lProxySetting);
 3042
 3043    HRESULT (STDMETHODCALLTYPE *getProxyName)(
 3044        IWMPNetwork *This,
 3045        BSTR bstrProtocol,
 3046        BSTR *pbstrProxyName);
 3047
 3048    HRESULT (STDMETHODCALLTYPE *setProxyName)(
 3049        IWMPNetwork *This,
 3050        BSTR bstrProtocol,
 3051        BSTR bstrProxyName);
 3052
 3053    HRESULT (STDMETHODCALLTYPE *getProxyPort)(
 3054        IWMPNetwork *This,
 3055        BSTR bstrProtocol,
 3056        LONG *lProxyPort);
 3057
 3058    HRESULT (STDMETHODCALLTYPE *setProxyPort)(
 3059        IWMPNetwork *This,
 3060        BSTR bstrProtocol,
 3061        LONG lProxyPort);
 3062
 3063    HRESULT (STDMETHODCALLTYPE *getProxyExceptionList)(
 3064        IWMPNetwork *This,
 3065        BSTR bstrProtocol,
 3066        BSTR *pbstrExceptionList);
 3067
 3068    HRESULT (STDMETHODCALLTYPE *setProxyExceptionList)(
 3069        IWMPNetwork *This,
 3070        BSTR bstrProtocol,
 3071        BSTR pbstrExceptionList);
 3072
 3073    HRESULT (STDMETHODCALLTYPE *getProxyBypassForLocal)(
 3074        IWMPNetwork *This,
 3075        BSTR bstrProtocol,
 3076        VARIANT_BOOL *pfBypassForLocal);
 3077
 3078    HRESULT (STDMETHODCALLTYPE *setProxyBypassForLocal)(
 3079        IWMPNetwork *This,
 3080        BSTR bstrProtocol,
 3081        VARIANT_BOOL fBypassForLocal);
 3082
 3083    HRESULT (STDMETHODCALLTYPE *get_maxBandwidth)(
 3084        IWMPNetwork *This,
 3085        LONG *lMaxBandwidth);
 3086
 3087    HRESULT (STDMETHODCALLTYPE *put_maxBandwidth)(
 3088        IWMPNetwork *This,
 3089        LONG lMaxBandwidth);
 3090
 3091    HRESULT (STDMETHODCALLTYPE *get_downloadProgress)(
 3092        IWMPNetwork *This,
 3093        LONG *plDownloadProgress);
 3094
 3095    HRESULT (STDMETHODCALLTYPE *get_encodedFrameRate)(
 3096        IWMPNetwork *This,
 3097        LONG *plFrameRate);
 3098
 3099    HRESULT (STDMETHODCALLTYPE *get_framesSkipped)(
 3100        IWMPNetwork *This,
 3101        LONG *plFrames);
 3102
 3103    END_INTERFACE
 3104} IWMPNetworkVtbl;
 3105
 3106interface IWMPNetwork {
 3107    CONST_VTBL IWMPNetworkVtbl* lpVtbl;
 3108};
 3109
 3110#ifdef COBJMACROS
 3111#ifndef WIDL_C_INLINE_WRAPPERS
 3112/*** IUnknown methods ***/
 3113#define IWMPNetwork_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3114#define IWMPNetwork_AddRef(This) (This)->lpVtbl->AddRef(This)
 3115#define IWMPNetwork_Release(This) (This)->lpVtbl->Release(This)
 3116/*** IDispatch methods ***/
 3117#define IWMPNetwork_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3118#define IWMPNetwork_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3119#define IWMPNetwork_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3120#define IWMPNetwork_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3121/*** IWMPNetwork methods ***/
 3122#define IWMPNetwork_get_bandWidth(This,plBandwidth) (This)->lpVtbl->get_bandWidth(This,plBandwidth)
 3123#define IWMPNetwork_get_recoveredPackets(This,plRecoveredPackets) (This)->lpVtbl->get_recoveredPackets(This,plRecoveredPackets)
 3124#define IWMPNetwork_get_sourceProtocol(This,pbstrSourceProtocol) (This)->lpVtbl->get_sourceProtocol(This,pbstrSourceProtocol)
 3125#define IWMPNetwork_get_receivedPackets(This,plReceivedPackets) (This)->lpVtbl->get_receivedPackets(This,plReceivedPackets)
 3126#define IWMPNetwork_get_lostPackets(This,plLostPackets) (This)->lpVtbl->get_lostPackets(This,plLostPackets)
 3127#define IWMPNetwork_get_receptionQuality(This,plReceptionQuality) (This)->lpVtbl->get_receptionQuality(This,plReceptionQuality)
 3128#define IWMPNetwork_get_bufferingCount(This,plBufferingCount) (This)->lpVtbl->get_bufferingCount(This,plBufferingCount)
 3129#define IWMPNetwork_get_bufferingProgress(This,plBufferingProgress) (This)->lpVtbl->get_bufferingProgress(This,plBufferingProgress)
 3130#define IWMPNetwork_get_bufferingTime(This,plBufferingTime) (This)->lpVtbl->get_bufferingTime(This,plBufferingTime)
 3131#define IWMPNetwork_put_bufferingTime(This,plBufferingTime) (This)->lpVtbl->put_bufferingTime(This,plBufferingTime)
 3132#define IWMPNetwork_get_frameRate(This,plFrameRate) (This)->lpVtbl->get_frameRate(This,plFrameRate)
 3133#define IWMPNetwork_get_maxBitRate(This,plBitRate) (This)->lpVtbl->get_maxBitRate(This,plBitRate)
 3134#define IWMPNetwork_get_bitRate(This,plBitRate) (This)->lpVtbl->get_bitRate(This,plBitRate)
 3135#define IWMPNetwork_getProxySettings(This,bstrProtocol,plProxySetting) (This)->lpVtbl->getProxySettings(This,bstrProtocol,plProxySetting)
 3136#define IWMPNetwork_setProxySettings(This,bstrProtocol,lProxySetting) (This)->lpVtbl->setProxySettings(This,bstrProtocol,lProxySetting)
 3137#define IWMPNetwork_getProxyName(This,bstrProtocol,pbstrProxyName) (This)->lpVtbl->getProxyName(This,bstrProtocol,pbstrProxyName)
 3138#define IWMPNetwork_setProxyName(This,bstrProtocol,bstrProxyName) (This)->lpVtbl->setProxyName(This,bstrProtocol,bstrProxyName)
 3139#define IWMPNetwork_getProxyPort(This,bstrProtocol,lProxyPort) (This)->lpVtbl->getProxyPort(This,bstrProtocol,lProxyPort)
 3140#define IWMPNetwork_setProxyPort(This,bstrProtocol,lProxyPort) (This)->lpVtbl->setProxyPort(This,bstrProtocol,lProxyPort)
 3141#define IWMPNetwork_getProxyExceptionList(This,bstrProtocol,pbstrExceptionList) (This)->lpVtbl->getProxyExceptionList(This,bstrProtocol,pbstrExceptionList)
 3142#define IWMPNetwork_setProxyExceptionList(This,bstrProtocol,pbstrExceptionList) (This)->lpVtbl->setProxyExceptionList(This,bstrProtocol,pbstrExceptionList)
 3143#define IWMPNetwork_getProxyBypassForLocal(This,bstrProtocol,pfBypassForLocal) (This)->lpVtbl->getProxyBypassForLocal(This,bstrProtocol,pfBypassForLocal)
 3144#define IWMPNetwork_setProxyBypassForLocal(This,bstrProtocol,fBypassForLocal) (This)->lpVtbl->setProxyBypassForLocal(This,bstrProtocol,fBypassForLocal)
 3145#define IWMPNetwork_get_maxBandwidth(This,lMaxBandwidth) (This)->lpVtbl->get_maxBandwidth(This,lMaxBandwidth)
 3146#define IWMPNetwork_put_maxBandwidth(This,lMaxBandwidth) (This)->lpVtbl->put_maxBandwidth(This,lMaxBandwidth)
 3147#define IWMPNetwork_get_downloadProgress(This,plDownloadProgress) (This)->lpVtbl->get_downloadProgress(This,plDownloadProgress)
 3148#define IWMPNetwork_get_encodedFrameRate(This,plFrameRate) (This)->lpVtbl->get_encodedFrameRate(This,plFrameRate)
 3149#define IWMPNetwork_get_framesSkipped(This,plFrames) (This)->lpVtbl->get_framesSkipped(This,plFrames)
 3150#else
 3151/*** IUnknown methods ***/
 3152static inline HRESULT IWMPNetwork_QueryInterface(IWMPNetwork* This,REFIID riid,void **ppvObject) {
 3153    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3154}
 3155static inline ULONG IWMPNetwork_AddRef(IWMPNetwork* This) {
 3156    return This->lpVtbl->AddRef(This);
 3157}
 3158static inline ULONG IWMPNetwork_Release(IWMPNetwork* This) {
 3159    return This->lpVtbl->Release(This);
 3160}
 3161/*** IDispatch methods ***/
 3162static inline HRESULT IWMPNetwork_GetTypeInfoCount(IWMPNetwork* This,UINT *pctinfo) {
 3163    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3164}
 3165static inline HRESULT IWMPNetwork_GetTypeInfo(IWMPNetwork* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3166    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3167}
 3168static inline HRESULT IWMPNetwork_GetIDsOfNames(IWMPNetwork* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3169    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3170}
 3171static inline HRESULT IWMPNetwork_Invoke(IWMPNetwork* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3172    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3173}
 3174/*** IWMPNetwork methods ***/
 3175static inline HRESULT IWMPNetwork_get_bandWidth(IWMPNetwork* This,LONG *plBandwidth) {
 3176    return This->lpVtbl->get_bandWidth(This,plBandwidth);
 3177}
 3178static inline HRESULT IWMPNetwork_get_recoveredPackets(IWMPNetwork* This,LONG *plRecoveredPackets) {
 3179    return This->lpVtbl->get_recoveredPackets(This,plRecoveredPackets);
 3180}
 3181static inline HRESULT IWMPNetwork_get_sourceProtocol(IWMPNetwork* This,BSTR *pbstrSourceProtocol) {
 3182    return This->lpVtbl->get_sourceProtocol(This,pbstrSourceProtocol);
 3183}
 3184static inline HRESULT IWMPNetwork_get_receivedPackets(IWMPNetwork* This,LONG *plReceivedPackets) {
 3185    return This->lpVtbl->get_receivedPackets(This,plReceivedPackets);
 3186}
 3187static inline HRESULT IWMPNetwork_get_lostPackets(IWMPNetwork* This,LONG *plLostPackets) {
 3188    return This->lpVtbl->get_lostPackets(This,plLostPackets);
 3189}
 3190static inline HRESULT IWMPNetwork_get_receptionQuality(IWMPNetwork* This,LONG *plReceptionQuality) {
 3191    return This->lpVtbl->get_receptionQuality(This,plReceptionQuality);
 3192}
 3193static inline HRESULT IWMPNetwork_get_bufferingCount(IWMPNetwork* This,LONG *plBufferingCount) {
 3194    return This->lpVtbl->get_bufferingCount(This,plBufferingCount);
 3195}
 3196static inline HRESULT IWMPNetwork_get_bufferingProgress(IWMPNetwork* This,LONG *plBufferingProgress) {
 3197    return This->lpVtbl->get_bufferingProgress(This,plBufferingProgress);
 3198}
 3199static inline HRESULT IWMPNetwork_get_bufferingTime(IWMPNetwork* This,LONG *plBufferingTime) {
 3200    return This->lpVtbl->get_bufferingTime(This,plBufferingTime);
 3201}
 3202static inline HRESULT IWMPNetwork_put_bufferingTime(IWMPNetwork* This,LONG plBufferingTime) {
 3203    return This->lpVtbl->put_bufferingTime(This,plBufferingTime);
 3204}
 3205static inline HRESULT IWMPNetwork_get_frameRate(IWMPNetwork* This,LONG *plFrameRate) {
 3206    return This->lpVtbl->get_frameRate(This,plFrameRate);
 3207}
 3208static inline HRESULT IWMPNetwork_get_maxBitRate(IWMPNetwork* This,LONG *plBitRate) {
 3209    return This->lpVtbl->get_maxBitRate(This,plBitRate);
 3210}
 3211static inline HRESULT IWMPNetwork_get_bitRate(IWMPNetwork* This,LONG *plBitRate) {
 3212    return This->lpVtbl->get_bitRate(This,plBitRate);
 3213}
 3214static inline HRESULT IWMPNetwork_getProxySettings(IWMPNetwork* This,BSTR bstrProtocol,LONG *plProxySetting) {
 3215    return This->lpVtbl->getProxySettings(This,bstrProtocol,plProxySetting);
 3216}
 3217static inline HRESULT IWMPNetwork_setProxySettings(IWMPNetwork* This,BSTR bstrProtocol,LONG lProxySetting) {
 3218    return This->lpVtbl->setProxySettings(This,bstrProtocol,lProxySetting);
 3219}
 3220static inline HRESULT IWMPNetwork_getProxyName(IWMPNetwork* This,BSTR bstrProtocol,BSTR *pbstrProxyName) {
 3221    return This->lpVtbl->getProxyName(This,bstrProtocol,pbstrProxyName);
 3222}
 3223static inline HRESULT IWMPNetwork_setProxyName(IWMPNetwork* This,BSTR bstrProtocol,BSTR bstrProxyName) {
 3224    return This->lpVtbl->setProxyName(This,bstrProtocol,bstrProxyName);
 3225}
 3226static inline HRESULT IWMPNetwork_getProxyPort(IWMPNetwork* This,BSTR bstrProtocol,LONG *lProxyPort) {
 3227    return This->lpVtbl->getProxyPort(This,bstrProtocol,lProxyPort);
 3228}
 3229static inline HRESULT IWMPNetwork_setProxyPort(IWMPNetwork* This,BSTR bstrProtocol,LONG lProxyPort) {
 3230    return This->lpVtbl->setProxyPort(This,bstrProtocol,lProxyPort);
 3231}
 3232static inline HRESULT IWMPNetwork_getProxyExceptionList(IWMPNetwork* This,BSTR bstrProtocol,BSTR *pbstrExceptionList) {
 3233    return This->lpVtbl->getProxyExceptionList(This,bstrProtocol,pbstrExceptionList);
 3234}
 3235static inline HRESULT IWMPNetwork_setProxyExceptionList(IWMPNetwork* This,BSTR bstrProtocol,BSTR pbstrExceptionList) {
 3236    return This->lpVtbl->setProxyExceptionList(This,bstrProtocol,pbstrExceptionList);
 3237}
 3238static inline HRESULT IWMPNetwork_getProxyBypassForLocal(IWMPNetwork* This,BSTR bstrProtocol,VARIANT_BOOL *pfBypassForLocal) {
 3239    return This->lpVtbl->getProxyBypassForLocal(This,bstrProtocol,pfBypassForLocal);
 3240}
 3241static inline HRESULT IWMPNetwork_setProxyBypassForLocal(IWMPNetwork* This,BSTR bstrProtocol,VARIANT_BOOL fBypassForLocal) {
 3242    return This->lpVtbl->setProxyBypassForLocal(This,bstrProtocol,fBypassForLocal);
 3243}
 3244static inline HRESULT IWMPNetwork_get_maxBandwidth(IWMPNetwork* This,LONG *lMaxBandwidth) {
 3245    return This->lpVtbl->get_maxBandwidth(This,lMaxBandwidth);
 3246}
 3247static inline HRESULT IWMPNetwork_put_maxBandwidth(IWMPNetwork* This,LONG lMaxBandwidth) {
 3248    return This->lpVtbl->put_maxBandwidth(This,lMaxBandwidth);
 3249}
 3250static inline HRESULT IWMPNetwork_get_downloadProgress(IWMPNetwork* This,LONG *plDownloadProgress) {
 3251    return This->lpVtbl->get_downloadProgress(This,plDownloadProgress);
 3252}
 3253static inline HRESULT IWMPNetwork_get_encodedFrameRate(IWMPNetwork* This,LONG *plFrameRate) {
 3254    return This->lpVtbl->get_encodedFrameRate(This,plFrameRate);
 3255}
 3256static inline HRESULT IWMPNetwork_get_framesSkipped(IWMPNetwork* This,LONG *plFrames) {
 3257    return This->lpVtbl->get_framesSkipped(This,plFrames);
 3258}
 3259#endif
 3260#endif
 3261
 3262#endif
 3263
 3264
 3265#endif  /* __IWMPNetwork_INTERFACE_DEFINED__ */
 3266
 3267/*****************************************************************************
 3268 * IWMPCdrom interface
 3269 */
 3270#ifndef __IWMPCdrom_INTERFACE_DEFINED__
 3271#define __IWMPCdrom_INTERFACE_DEFINED__
 3272
 3273DEFINE_GUID(IID_IWMPCdrom, 0xcfab6e98, 0x8730, 0x11d3, 0xb3,0x88, 0x00,0xc0,0x4f,0x68,0x57,0x4b);
 3274#if defined(__cplusplus) && !defined(CINTERFACE)
 3275MIDL_INTERFACE("cfab6e98-8730-11d3-b388-00c04f68574b")
 3276IWMPCdrom : public IDispatch
 3277{
 3278    virtual HRESULT STDMETHODCALLTYPE get_driveSpecifier(
 3279        BSTR *pbstrDrive) = 0;
 3280
 3281    virtual HRESULT STDMETHODCALLTYPE get_Playlist(
 3282        IWMPPlaylist **ppPlaylist) = 0;
 3283
 3284    virtual HRESULT STDMETHODCALLTYPE eject(
 3285        ) = 0;
 3286
 3287};
 3288#ifdef __CRT_UUID_DECL
 3289__CRT_UUID_DECL(IWMPCdrom, 0xcfab6e98, 0x8730, 0x11d3, 0xb3,0x88, 0x00,0xc0,0x4f,0x68,0x57,0x4b)
 3290#endif
 3291#else
 3292typedef struct IWMPCdromVtbl {
 3293    BEGIN_INTERFACE
 3294
 3295    /*** IUnknown methods ***/
 3296    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3297        IWMPCdrom *This,
 3298        REFIID riid,
 3299        void **ppvObject);
 3300
 3301    ULONG (STDMETHODCALLTYPE *AddRef)(
 3302        IWMPCdrom *This);
 3303
 3304    ULONG (STDMETHODCALLTYPE *Release)(
 3305        IWMPCdrom *This);
 3306
 3307    /*** IDispatch methods ***/
 3308    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3309        IWMPCdrom *This,
 3310        UINT *pctinfo);
 3311
 3312    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3313        IWMPCdrom *This,
 3314        UINT iTInfo,
 3315        LCID lcid,
 3316        ITypeInfo **ppTInfo);
 3317
 3318    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3319        IWMPCdrom *This,
 3320        REFIID riid,
 3321        LPOLESTR *rgszNames,
 3322        UINT cNames,
 3323        LCID lcid,
 3324        DISPID *rgDispId);
 3325
 3326    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3327        IWMPCdrom *This,
 3328        DISPID dispIdMember,
 3329        REFIID riid,
 3330        LCID lcid,
 3331        WORD wFlags,
 3332        DISPPARAMS *pDispParams,
 3333        VARIANT *pVarResult,
 3334        EXCEPINFO *pExcepInfo,
 3335        UINT *puArgErr);
 3336
 3337    /*** IWMPCdrom methods ***/
 3338    HRESULT (STDMETHODCALLTYPE *get_driveSpecifier)(
 3339        IWMPCdrom *This,
 3340        BSTR *pbstrDrive);
 3341
 3342    HRESULT (STDMETHODCALLTYPE *get_Playlist)(
 3343        IWMPCdrom *This,
 3344        IWMPPlaylist **ppPlaylist);
 3345
 3346    HRESULT (STDMETHODCALLTYPE *eject)(
 3347        IWMPCdrom *This);
 3348
 3349    END_INTERFACE
 3350} IWMPCdromVtbl;
 3351
 3352interface IWMPCdrom {
 3353    CONST_VTBL IWMPCdromVtbl* lpVtbl;
 3354};
 3355
 3356#ifdef COBJMACROS
 3357#ifndef WIDL_C_INLINE_WRAPPERS
 3358/*** IUnknown methods ***/
 3359#define IWMPCdrom_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3360#define IWMPCdrom_AddRef(This) (This)->lpVtbl->AddRef(This)
 3361#define IWMPCdrom_Release(This) (This)->lpVtbl->Release(This)
 3362/*** IDispatch methods ***/
 3363#define IWMPCdrom_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3364#define IWMPCdrom_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3365#define IWMPCdrom_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3366#define IWMPCdrom_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3367/*** IWMPCdrom methods ***/
 3368#define IWMPCdrom_get_driveSpecifier(This,pbstrDrive) (This)->lpVtbl->get_driveSpecifier(This,pbstrDrive)
 3369#define IWMPCdrom_get_Playlist(This,ppPlaylist) (This)->lpVtbl->get_Playlist(This,ppPlaylist)
 3370#define IWMPCdrom_eject(This) (This)->lpVtbl->eject(This)
 3371#else
 3372/*** IUnknown methods ***/
 3373static inline HRESULT IWMPCdrom_QueryInterface(IWMPCdrom* This,REFIID riid,void **ppvObject) {
 3374    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3375}
 3376static inline ULONG IWMPCdrom_AddRef(IWMPCdrom* This) {
 3377    return This->lpVtbl->AddRef(This);
 3378}
 3379static inline ULONG IWMPCdrom_Release(IWMPCdrom* This) {
 3380    return This->lpVtbl->Release(This);
 3381}
 3382/*** IDispatch methods ***/
 3383static inline HRESULT IWMPCdrom_GetTypeInfoCount(IWMPCdrom* This,UINT *pctinfo) {
 3384    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3385}
 3386static inline HRESULT IWMPCdrom_GetTypeInfo(IWMPCdrom* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3387    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3388}
 3389static inline HRESULT IWMPCdrom_GetIDsOfNames(IWMPCdrom* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3390    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3391}
 3392static inline HRESULT IWMPCdrom_Invoke(IWMPCdrom* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3393    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3394}
 3395/*** IWMPCdrom methods ***/
 3396static inline HRESULT IWMPCdrom_get_driveSpecifier(IWMPCdrom* This,BSTR *pbstrDrive) {
 3397    return This->lpVtbl->get_driveSpecifier(This,pbstrDrive);
 3398}
 3399static inline HRESULT IWMPCdrom_get_Playlist(IWMPCdrom* This,IWMPPlaylist **ppPlaylist) {
 3400    return This->lpVtbl->get_Playlist(This,ppPlaylist);
 3401}
 3402static inline HRESULT IWMPCdrom_eject(IWMPCdrom* This) {
 3403    return This->lpVtbl->eject(This);
 3404}
 3405#endif
 3406#endif
 3407
 3408#endif
 3409
 3410
 3411#endif  /* __IWMPCdrom_INTERFACE_DEFINED__ */
 3412
 3413/*****************************************************************************
 3414 * IWMPCdromCollection interface
 3415 */
 3416#ifndef __IWMPCdromCollection_INTERFACE_DEFINED__
 3417#define __IWMPCdromCollection_INTERFACE_DEFINED__
 3418
 3419DEFINE_GUID(IID_IWMPCdromCollection, 0xee4c8fe2, 0x34b2, 0x11d3, 0xa3,0xbf, 0x00,0x60,0x97,0xc9,0xb3,0x44);
 3420#if defined(__cplusplus) && !defined(CINTERFACE)
 3421MIDL_INTERFACE("ee4c8fe2-34b2-11d3-a3bf-006097c9b344")
 3422IWMPCdromCollection : public IDispatch
 3423{
 3424    virtual HRESULT STDMETHODCALLTYPE get_count(
 3425        LONG *plCount) = 0;
 3426
 3427    virtual HRESULT STDMETHODCALLTYPE Item(
 3428        LONG lIndex,
 3429        IWMPCdrom **ppItem) = 0;
 3430
 3431    virtual HRESULT STDMETHODCALLTYPE getByDriveSpecifier(
 3432        BSTR bstrDriveSpecifier,
 3433        IWMPCdrom **ppCdrom) = 0;
 3434
 3435};
 3436#ifdef __CRT_UUID_DECL
 3437__CRT_UUID_DECL(IWMPCdromCollection, 0xee4c8fe2, 0x34b2, 0x11d3, 0xa3,0xbf, 0x00,0x60,0x97,0xc9,0xb3,0x44)
 3438#endif
 3439#else
 3440typedef struct IWMPCdromCollectionVtbl {
 3441    BEGIN_INTERFACE
 3442
 3443    /*** IUnknown methods ***/
 3444    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3445        IWMPCdromCollection *This,
 3446        REFIID riid,
 3447        void **ppvObject);
 3448
 3449    ULONG (STDMETHODCALLTYPE *AddRef)(
 3450        IWMPCdromCollection *This);
 3451
 3452    ULONG (STDMETHODCALLTYPE *Release)(
 3453        IWMPCdromCollection *This);
 3454
 3455    /*** IDispatch methods ***/
 3456    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3457        IWMPCdromCollection *This,
 3458        UINT *pctinfo);
 3459
 3460    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3461        IWMPCdromCollection *This,
 3462        UINT iTInfo,
 3463        LCID lcid,
 3464        ITypeInfo **ppTInfo);
 3465
 3466    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3467        IWMPCdromCollection *This,
 3468        REFIID riid,
 3469        LPOLESTR *rgszNames,
 3470        UINT cNames,
 3471        LCID lcid,
 3472        DISPID *rgDispId);
 3473
 3474    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3475        IWMPCdromCollection *This,
 3476        DISPID dispIdMember,
 3477        REFIID riid,
 3478        LCID lcid,
 3479        WORD wFlags,
 3480        DISPPARAMS *pDispParams,
 3481        VARIANT *pVarResult,
 3482        EXCEPINFO *pExcepInfo,
 3483        UINT *puArgErr);
 3484
 3485    /*** IWMPCdromCollection methods ***/
 3486    HRESULT (STDMETHODCALLTYPE *get_count)(
 3487        IWMPCdromCollection *This,
 3488        LONG *plCount);
 3489
 3490    HRESULT (STDMETHODCALLTYPE *Item)(
 3491        IWMPCdromCollection *This,
 3492        LONG lIndex,
 3493        IWMPCdrom **ppItem);
 3494
 3495    HRESULT (STDMETHODCALLTYPE *getByDriveSpecifier)(
 3496        IWMPCdromCollection *This,
 3497        BSTR bstrDriveSpecifier,
 3498        IWMPCdrom **ppCdrom);
 3499
 3500    END_INTERFACE
 3501} IWMPCdromCollectionVtbl;
 3502
 3503interface IWMPCdromCollection {
 3504    CONST_VTBL IWMPCdromCollectionVtbl* lpVtbl;
 3505};
 3506
 3507#ifdef COBJMACROS
 3508#ifndef WIDL_C_INLINE_WRAPPERS
 3509/*** IUnknown methods ***/
 3510#define IWMPCdromCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3511#define IWMPCdromCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 3512#define IWMPCdromCollection_Release(This) (This)->lpVtbl->Release(This)
 3513/*** IDispatch methods ***/
 3514#define IWMPCdromCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3515#define IWMPCdromCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3516#define IWMPCdromCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3517#define IWMPCdromCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3518/*** IWMPCdromCollection methods ***/
 3519#define IWMPCdromCollection_get_count(This,plCount) (This)->lpVtbl->get_count(This,plCount)
 3520#define IWMPCdromCollection_Item(This,lIndex,ppItem) (This)->lpVtbl->Item(This,lIndex,ppItem)
 3521#define IWMPCdromCollection_getByDriveSpecifier(This,bstrDriveSpecifier,ppCdrom) (This)->lpVtbl->getByDriveSpecifier(This,bstrDriveSpecifier,ppCdrom)
 3522#else
 3523/*** IUnknown methods ***/
 3524static inline HRESULT IWMPCdromCollection_QueryInterface(IWMPCdromCollection* This,REFIID riid,void **ppvObject) {
 3525    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3526}
 3527static inline ULONG IWMPCdromCollection_AddRef(IWMPCdromCollection* This) {
 3528    return This->lpVtbl->AddRef(This);
 3529}
 3530static inline ULONG IWMPCdromCollection_Release(IWMPCdromCollection* This) {
 3531    return This->lpVtbl->Release(This);
 3532}
 3533/*** IDispatch methods ***/
 3534static inline HRESULT IWMPCdromCollection_GetTypeInfoCount(IWMPCdromCollection* This,UINT *pctinfo) {
 3535    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3536}
 3537static inline HRESULT IWMPCdromCollection_GetTypeInfo(IWMPCdromCollection* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3538    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3539}
 3540static inline HRESULT IWMPCdromCollection_GetIDsOfNames(IWMPCdromCollection* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3541    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3542}
 3543static inline HRESULT IWMPCdromCollection_Invoke(IWMPCdromCollection* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3544    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3545}
 3546/*** IWMPCdromCollection methods ***/
 3547static inline HRESULT IWMPCdromCollection_get_count(IWMPCdromCollection* This,LONG *plCount) {
 3548    return This->lpVtbl->get_count(This,plCount);
 3549}
 3550static inline HRESULT IWMPCdromCollection_Item(IWMPCdromCollection* This,LONG lIndex,IWMPCdrom **ppItem) {
 3551    return This->lpVtbl->Item(This,lIndex,ppItem);
 3552}
 3553static inline HRESULT IWMPCdromCollection_getByDriveSpecifier(IWMPCdromCollection* This,BSTR bstrDriveSpecifier,IWMPCdrom **ppCdrom) {
 3554    return This->lpVtbl->getByDriveSpecifier(This,bstrDriveSpecifier,ppCdrom);
 3555}
 3556#endif
 3557#endif
 3558
 3559#endif
 3560
 3561
 3562#endif  /* __IWMPCdromCollection_INTERFACE_DEFINED__ */
 3563
 3564/*****************************************************************************
 3565 * IWMPDVD interface
 3566 */
 3567#ifndef __IWMPDVD_INTERFACE_DEFINED__
 3568#define __IWMPDVD_INTERFACE_DEFINED__
 3569
 3570DEFINE_GUID(IID_IWMPDVD, 0x8da61686, 0x4668, 0x4a5c, 0xae,0x5d, 0x80,0x31,0x93,0x29,0x3d,0xbe);
 3571#if defined(__cplusplus) && !defined(CINTERFACE)
 3572MIDL_INTERFACE("8da61686-4668-4a5c-ae5d-803193293dbe")
 3573IWMPDVD : public IDispatch
 3574{
 3575    virtual HRESULT STDMETHODCALLTYPE get_isAvailable(
 3576        BSTR bstrItem,
 3577        VARIANT_BOOL *pIsAvailable) = 0;
 3578
 3579    virtual HRESULT STDMETHODCALLTYPE get_domain(
 3580        BSTR *strDomain) = 0;
 3581
 3582    virtual HRESULT STDMETHODCALLTYPE topMenu(
 3583        ) = 0;
 3584
 3585    virtual HRESULT STDMETHODCALLTYPE titleMenu(
 3586        ) = 0;
 3587
 3588    virtual HRESULT STDMETHODCALLTYPE back(
 3589        ) = 0;
 3590
 3591    virtual HRESULT STDMETHODCALLTYPE resume(
 3592        ) = 0;
 3593
 3594};
 3595#ifdef __CRT_UUID_DECL
 3596__CRT_UUID_DECL(IWMPDVD, 0x8da61686, 0x4668, 0x4a5c, 0xae,0x5d, 0x80,0x31,0x93,0x29,0x3d,0xbe)
 3597#endif
 3598#else
 3599typedef struct IWMPDVDVtbl {
 3600    BEGIN_INTERFACE
 3601
 3602    /*** IUnknown methods ***/
 3603    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3604        IWMPDVD *This,
 3605        REFIID riid,
 3606        void **ppvObject);
 3607
 3608    ULONG (STDMETHODCALLTYPE *AddRef)(
 3609        IWMPDVD *This);
 3610
 3611    ULONG (STDMETHODCALLTYPE *Release)(
 3612        IWMPDVD *This);
 3613
 3614    /*** IDispatch methods ***/
 3615    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3616        IWMPDVD *This,
 3617        UINT *pctinfo);
 3618
 3619    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3620        IWMPDVD *This,
 3621        UINT iTInfo,
 3622        LCID lcid,
 3623        ITypeInfo **ppTInfo);
 3624
 3625    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3626        IWMPDVD *This,
 3627        REFIID riid,
 3628        LPOLESTR *rgszNames,
 3629        UINT cNames,
 3630        LCID lcid,
 3631        DISPID *rgDispId);
 3632
 3633    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3634        IWMPDVD *This,
 3635        DISPID dispIdMember,
 3636        REFIID riid,
 3637        LCID lcid,
 3638        WORD wFlags,
 3639        DISPPARAMS *pDispParams,
 3640        VARIANT *pVarResult,
 3641        EXCEPINFO *pExcepInfo,
 3642        UINT *puArgErr);
 3643
 3644    /*** IWMPDVD methods ***/
 3645    HRESULT (STDMETHODCALLTYPE *get_isAvailable)(
 3646        IWMPDVD *This,
 3647        BSTR bstrItem,
 3648        VARIANT_BOOL *pIsAvailable);
 3649
 3650    HRESULT (STDMETHODCALLTYPE *get_domain)(
 3651        IWMPDVD *This,
 3652        BSTR *strDomain);
 3653
 3654    HRESULT (STDMETHODCALLTYPE *topMenu)(
 3655        IWMPDVD *This);
 3656
 3657    HRESULT (STDMETHODCALLTYPE *titleMenu)(
 3658        IWMPDVD *This);
 3659
 3660    HRESULT (STDMETHODCALLTYPE *back)(
 3661        IWMPDVD *This);
 3662
 3663    HRESULT (STDMETHODCALLTYPE *resume)(
 3664        IWMPDVD *This);
 3665
 3666    END_INTERFACE
 3667} IWMPDVDVtbl;
 3668
 3669interface IWMPDVD {
 3670    CONST_VTBL IWMPDVDVtbl* lpVtbl;
 3671};
 3672
 3673#ifdef COBJMACROS
 3674#ifndef WIDL_C_INLINE_WRAPPERS
 3675/*** IUnknown methods ***/
 3676#define IWMPDVD_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3677#define IWMPDVD_AddRef(This) (This)->lpVtbl->AddRef(This)
 3678#define IWMPDVD_Release(This) (This)->lpVtbl->Release(This)
 3679/*** IDispatch methods ***/
 3680#define IWMPDVD_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3681#define IWMPDVD_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3682#define IWMPDVD_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3683#define IWMPDVD_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3684/*** IWMPDVD methods ***/
 3685#define IWMPDVD_get_isAvailable(This,bstrItem,pIsAvailable) (This)->lpVtbl->get_isAvailable(This,bstrItem,pIsAvailable)
 3686#define IWMPDVD_get_domain(This,strDomain) (This)->lpVtbl->get_domain(This,strDomain)
 3687#define IWMPDVD_topMenu(This) (This)->lpVtbl->topMenu(This)
 3688#define IWMPDVD_titleMenu(This) (This)->lpVtbl->titleMenu(This)
 3689#define IWMPDVD_back(This) (This)->lpVtbl->back(This)
 3690#define IWMPDVD_resume(This) (This)->lpVtbl->resume(This)
 3691#else
 3692/*** IUnknown methods ***/
 3693static inline HRESULT IWMPDVD_QueryInterface(IWMPDVD* This,REFIID riid,void **ppvObject) {
 3694    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3695}
 3696static inline ULONG IWMPDVD_AddRef(IWMPDVD* This) {
 3697    return This->lpVtbl->AddRef(This);
 3698}
 3699static inline ULONG IWMPDVD_Release(IWMPDVD* This) {
 3700    return This->lpVtbl->Release(This);
 3701}
 3702/*** IDispatch methods ***/
 3703static inline HRESULT IWMPDVD_GetTypeInfoCount(IWMPDVD* This,UINT *pctinfo) {
 3704    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3705}
 3706static inline HRESULT IWMPDVD_GetTypeInfo(IWMPDVD* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3707    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3708}
 3709static inline HRESULT IWMPDVD_GetIDsOfNames(IWMPDVD* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3710    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3711}
 3712static inline HRESULT IWMPDVD_Invoke(IWMPDVD* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3713    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3714}
 3715/*** IWMPDVD methods ***/
 3716static inline HRESULT IWMPDVD_get_isAvailable(IWMPDVD* This,BSTR bstrItem,VARIANT_BOOL *pIsAvailable) {
 3717    return This->lpVtbl->get_isAvailable(This,bstrItem,pIsAvailable);
 3718}
 3719static inline HRESULT IWMPDVD_get_domain(IWMPDVD* This,BSTR *strDomain) {
 3720    return This->lpVtbl->get_domain(This,strDomain);
 3721}
 3722static inline HRESULT IWMPDVD_topMenu(IWMPDVD* This) {
 3723    return This->lpVtbl->topMenu(This);
 3724}
 3725static inline HRESULT IWMPDVD_titleMenu(IWMPDVD* This) {
 3726    return This->lpVtbl->titleMenu(This);
 3727}
 3728static inline HRESULT IWMPDVD_back(IWMPDVD* This) {
 3729    return This->lpVtbl->back(This);
 3730}
 3731static inline HRESULT IWMPDVD_resume(IWMPDVD* This) {
 3732    return This->lpVtbl->resume(This);
 3733}
 3734#endif
 3735#endif
 3736
 3737#endif
 3738
 3739
 3740#endif  /* __IWMPDVD_INTERFACE_DEFINED__ */
 3741
 3742/*****************************************************************************
 3743 * IWMPClosedCaption interface
 3744 */
 3745#ifndef __IWMPClosedCaption_INTERFACE_DEFINED__
 3746#define __IWMPClosedCaption_INTERFACE_DEFINED__
 3747
 3748DEFINE_GUID(IID_IWMPClosedCaption, 0x4f2df574, 0xc588, 0x11d3, 0x9e,0xd0, 0x00,0xc0,0x4f,0xb6,0xe9,0x37);
 3749#if defined(__cplusplus) && !defined(CINTERFACE)
 3750MIDL_INTERFACE("4f2df574-c588-11d3-9ed0-00c04fb6e937")
 3751IWMPClosedCaption : public IDispatch
 3752{
 3753    virtual HRESULT STDMETHODCALLTYPE get_SAMIStyle(
 3754        BSTR *pbstrSAMIStyle) = 0;
 3755
 3756    virtual HRESULT STDMETHODCALLTYPE put_SAMIStyle(
 3757        BSTR pbstrSAMIStyle) = 0;
 3758
 3759    virtual HRESULT STDMETHODCALLTYPE get_SAMILang(
 3760        BSTR *pbstrSAMILang) = 0;
 3761
 3762    virtual HRESULT STDMETHODCALLTYPE put_SAMILang(
 3763        BSTR pbstrSAMILang) = 0;
 3764
 3765    virtual HRESULT STDMETHODCALLTYPE get_SAMIFileName(
 3766        BSTR *pbstrSAMIFileName) = 0;
 3767
 3768    virtual HRESULT STDMETHODCALLTYPE put_SAMIFileName(
 3769        BSTR pbstrSAMIFileName) = 0;
 3770
 3771    virtual HRESULT STDMETHODCALLTYPE get_captioningId(
 3772        BSTR *pbstrCaptioningID) = 0;
 3773
 3774    virtual HRESULT STDMETHODCALLTYPE put_captioningId(
 3775        BSTR pbstrCaptioningID) = 0;
 3776
 3777};
 3778#ifdef __CRT_UUID_DECL
 3779__CRT_UUID_DECL(IWMPClosedCaption, 0x4f2df574, 0xc588, 0x11d3, 0x9e,0xd0, 0x00,0xc0,0x4f,0xb6,0xe9,0x37)
 3780#endif
 3781#else
 3782typedef struct IWMPClosedCaptionVtbl {
 3783    BEGIN_INTERFACE
 3784
 3785    /*** IUnknown methods ***/
 3786    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3787        IWMPClosedCaption *This,
 3788        REFIID riid,
 3789        void **ppvObject);
 3790
 3791    ULONG (STDMETHODCALLTYPE *AddRef)(
 3792        IWMPClosedCaption *This);
 3793
 3794    ULONG (STDMETHODCALLTYPE *Release)(
 3795        IWMPClosedCaption *This);
 3796
 3797    /*** IDispatch methods ***/
 3798    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3799        IWMPClosedCaption *This,
 3800        UINT *pctinfo);
 3801
 3802    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3803        IWMPClosedCaption *This,
 3804        UINT iTInfo,
 3805        LCID lcid,
 3806        ITypeInfo **ppTInfo);
 3807
 3808    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 3809        IWMPClosedCaption *This,
 3810        REFIID riid,
 3811        LPOLESTR *rgszNames,
 3812        UINT cNames,
 3813        LCID lcid,
 3814        DISPID *rgDispId);
 3815
 3816    HRESULT (STDMETHODCALLTYPE *Invoke)(
 3817        IWMPClosedCaption *This,
 3818        DISPID dispIdMember,
 3819        REFIID riid,
 3820        LCID lcid,
 3821        WORD wFlags,
 3822        DISPPARAMS *pDispParams,
 3823        VARIANT *pVarResult,
 3824        EXCEPINFO *pExcepInfo,
 3825        UINT *puArgErr);
 3826
 3827    /*** IWMPClosedCaption methods ***/
 3828    HRESULT (STDMETHODCALLTYPE *get_SAMIStyle)(
 3829        IWMPClosedCaption *This,
 3830        BSTR *pbstrSAMIStyle);
 3831
 3832    HRESULT (STDMETHODCALLTYPE *put_SAMIStyle)(
 3833        IWMPClosedCaption *This,
 3834        BSTR pbstrSAMIStyle);
 3835
 3836    HRESULT (STDMETHODCALLTYPE *get_SAMILang)(
 3837        IWMPClosedCaption *This,
 3838        BSTR *pbstrSAMILang);
 3839
 3840    HRESULT (STDMETHODCALLTYPE *put_SAMILang)(
 3841        IWMPClosedCaption *This,
 3842        BSTR pbstrSAMILang);
 3843
 3844    HRESULT (STDMETHODCALLTYPE *get_SAMIFileName)(
 3845        IWMPClosedCaption *This,
 3846        BSTR *pbstrSAMIFileName);
 3847
 3848    HRESULT (STDMETHODCALLTYPE *put_SAMIFileName)(
 3849        IWMPClosedCaption *This,
 3850        BSTR pbstrSAMIFileName);
 3851
 3852    HRESULT (STDMETHODCALLTYPE *get_captioningId)(
 3853        IWMPClosedCaption *This,
 3854        BSTR *pbstrCaptioningID);
 3855
 3856    HRESULT (STDMETHODCALLTYPE *put_captioningId)(
 3857        IWMPClosedCaption *This,
 3858        BSTR pbstrCaptioningID);
 3859
 3860    END_INTERFACE
 3861} IWMPClosedCaptionVtbl;
 3862
 3863interface IWMPClosedCaption {
 3864    CONST_VTBL IWMPClosedCaptionVtbl* lpVtbl;
 3865};
 3866
 3867#ifdef COBJMACROS
 3868#ifndef WIDL_C_INLINE_WRAPPERS
 3869/*** IUnknown methods ***/
 3870#define IWMPClosedCaption_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 3871#define IWMPClosedCaption_AddRef(This) (This)->lpVtbl->AddRef(This)
 3872#define IWMPClosedCaption_Release(This) (This)->lpVtbl->Release(This)
 3873/*** IDispatch methods ***/
 3874#define IWMPClosedCaption_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 3875#define IWMPClosedCaption_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 3876#define IWMPClosedCaption_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 3877#define IWMPClosedCaption_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 3878/*** IWMPClosedCaption methods ***/
 3879#define IWMPClosedCaption_get_SAMIStyle(This,pbstrSAMIStyle) (This)->lpVtbl->get_SAMIStyle(This,pbstrSAMIStyle)
 3880#define IWMPClosedCaption_put_SAMIStyle(This,pbstrSAMIStyle) (This)->lpVtbl->put_SAMIStyle(This,pbstrSAMIStyle)
 3881#define IWMPClosedCaption_get_SAMILang(This,pbstrSAMILang) (This)->lpVtbl->get_SAMILang(This,pbstrSAMILang)
 3882#define IWMPClosedCaption_put_SAMILang(This,pbstrSAMILang) (This)->lpVtbl->put_SAMILang(This,pbstrSAMILang)
 3883#define IWMPClosedCaption_get_SAMIFileName(This,pbstrSAMIFileName) (This)->lpVtbl->get_SAMIFileName(This,pbstrSAMIFileName)
 3884#define IWMPClosedCaption_put_SAMIFileName(This,pbstrSAMIFileName) (This)->lpVtbl->put_SAMIFileName(This,pbstrSAMIFileName)
 3885#define IWMPClosedCaption_get_captioningId(This,pbstrCaptioningID) (This)->lpVtbl->get_captioningId(This,pbstrCaptioningID)
 3886#define IWMPClosedCaption_put_captioningId(This,pbstrCaptioningID) (This)->lpVtbl->put_captioningId(This,pbstrCaptioningID)
 3887#else
 3888/*** IUnknown methods ***/
 3889static inline HRESULT IWMPClosedCaption_QueryInterface(IWMPClosedCaption* This,REFIID riid,void **ppvObject) {
 3890    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 3891}
 3892static inline ULONG IWMPClosedCaption_AddRef(IWMPClosedCaption* This) {
 3893    return This->lpVtbl->AddRef(This);
 3894}
 3895static inline ULONG IWMPClosedCaption_Release(IWMPClosedCaption* This) {
 3896    return This->lpVtbl->Release(This);
 3897}
 3898/*** IDispatch methods ***/
 3899static inline HRESULT IWMPClosedCaption_GetTypeInfoCount(IWMPClosedCaption* This,UINT *pctinfo) {
 3900    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 3901}
 3902static inline HRESULT IWMPClosedCaption_GetTypeInfo(IWMPClosedCaption* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 3903    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 3904}
 3905static inline HRESULT IWMPClosedCaption_GetIDsOfNames(IWMPClosedCaption* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 3906    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 3907}
 3908static inline HRESULT IWMPClosedCaption_Invoke(IWMPClosedCaption* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 3909    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 3910}
 3911/*** IWMPClosedCaption methods ***/
 3912static inline HRESULT IWMPClosedCaption_get_SAMIStyle(IWMPClosedCaption* This,BSTR *pbstrSAMIStyle) {
 3913    return This->lpVtbl->get_SAMIStyle(This,pbstrSAMIStyle);
 3914}
 3915static inline HRESULT IWMPClosedCaption_put_SAMIStyle(IWMPClosedCaption* This,BSTR pbstrSAMIStyle) {
 3916    return This->lpVtbl->put_SAMIStyle(This,pbstrSAMIStyle);
 3917}
 3918static inline HRESULT IWMPClosedCaption_get_SAMILang(IWMPClosedCaption* This,BSTR *pbstrSAMILang) {
 3919    return This->lpVtbl->get_SAMILang(This,pbstrSAMILang);
 3920}
 3921static inline HRESULT IWMPClosedCaption_put_SAMILang(IWMPClosedCaption* This,BSTR pbstrSAMILang) {
 3922    return This->lpVtbl->put_SAMILang(This,pbstrSAMILang);
 3923}
 3924static inline HRESULT IWMPClosedCaption_get_SAMIFileName(IWMPClosedCaption* This,BSTR *pbstrSAMIFileName) {
 3925    return This->lpVtbl->get_SAMIFileName(This,pbstrSAMIFileName);
 3926}
 3927static inline HRESULT IWMPClosedCaption_put_SAMIFileName(IWMPClosedCaption* This,BSTR pbstrSAMIFileName) {
 3928    return This->lpVtbl->put_SAMIFileName(This,pbstrSAMIFileName);
 3929}
 3930static inline HRESULT IWMPClosedCaption_get_captioningId(IWMPClosedCaption* This,BSTR *pbstrCaptioningID) {
 3931    return This->lpVtbl->get_captioningId(This,pbstrCaptioningID);
 3932}
 3933static inline HRESULT IWMPClosedCaption_put_captioningId(IWMPClosedCaption* This,BSTR pbstrCaptioningID) {
 3934    return This->lpVtbl->put_captioningId(This,pbstrCaptioningID);
 3935}
 3936#endif
 3937#endif
 3938
 3939#endif
 3940
 3941
 3942#endif  /* __IWMPClosedCaption_INTERFACE_DEFINED__ */
 3943
 3944/*****************************************************************************
 3945 * IWMPErrorItem interface
 3946 */
 3947#ifndef __IWMPErrorItem_INTERFACE_DEFINED__
 3948#define __IWMPErrorItem_INTERFACE_DEFINED__
 3949
 3950DEFINE_GUID(IID_IWMPErrorItem, 0x3614c646, 0x3b3b, 0x4de7, 0xa8,0x1e, 0x93,0x0e,0x3f,0x21,0x27,0xb3);
 3951#if defined(__cplusplus) && !defined(CINTERFACE)
 3952MIDL_INTERFACE("3614c646-3b3b-4de7-a81e-930e3f2127b3")
 3953IWMPErrorItem : public IDispatch
 3954{
 3955    virtual HRESULT STDMETHODCALLTYPE get_errorCode(
 3956        LONG *phr) = 0;
 3957
 3958    virtual HRESULT STDMETHODCALLTYPE get_errorDescription(
 3959        BSTR *pbstrDescription) = 0;
 3960
 3961    virtual HRESULT STDMETHODCALLTYPE get_errorContext(
 3962        VARIANT *pvarContext) = 0;
 3963
 3964    virtual HRESULT STDMETHODCALLTYPE get_remedy(
 3965        LONG *plRemedy) = 0;
 3966
 3967    virtual HRESULT STDMETHODCALLTYPE get_customUrl(
 3968        BSTR *pbstrCustomUrl) = 0;
 3969
 3970};
 3971#ifdef __CRT_UUID_DECL
 3972__CRT_UUID_DECL(IWMPErrorItem, 0x3614c646, 0x3b3b, 0x4de7, 0xa8,0x1e, 0x93,0x0e,0x3f,0x21,0x27,0xb3)
 3973#endif
 3974#else
 3975typedef struct IWMPErrorItemVtbl {
 3976    BEGIN_INTERFACE
 3977
 3978    /*** IUnknown methods ***/
 3979    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 3980        IWMPErrorItem *This,
 3981        REFIID riid,
 3982        void **ppvObject);
 3983
 3984    ULONG (STDMETHODCALLTYPE *AddRef)(
 3985        IWMPErrorItem *This);
 3986
 3987    ULONG (STDMETHODCALLTYPE *Release)(
 3988        IWMPErrorItem *This);
 3989
 3990    /*** IDispatch methods ***/
 3991    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 3992        IWMPErrorItem *This,
 3993        UINT *pctinfo);
 3994
 3995    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 3996        IWMPErrorItem *This,
 3997        UINT iTInfo,
 3998        LCID lcid,
 3999        ITypeInfo **ppTInfo);
 4000
 4001    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 4002        IWMPErrorItem *This,
 4003        REFIID riid,
 4004        LPOLESTR *rgszNames,
 4005        UINT cNames,
 4006        LCID lcid,
 4007        DISPID *rgDispId);
 4008
 4009    HRESULT (STDMETHODCALLTYPE *Invoke)(
 4010        IWMPErrorItem *This,
 4011        DISPID dispIdMember,
 4012        REFIID riid,
 4013        LCID lcid,
 4014        WORD wFlags,
 4015        DISPPARAMS *pDispParams,
 4016        VARIANT *pVarResult,
 4017        EXCEPINFO *pExcepInfo,
 4018        UINT *puArgErr);
 4019
 4020    /*** IWMPErrorItem methods ***/
 4021    HRESULT (STDMETHODCALLTYPE *get_errorCode)(
 4022        IWMPErrorItem *This,
 4023        LONG *phr);
 4024
 4025    HRESULT (STDMETHODCALLTYPE *get_errorDescription)(
 4026        IWMPErrorItem *This,
 4027        BSTR *pbstrDescription);
 4028
 4029    HRESULT (STDMETHODCALLTYPE *get_errorContext)(
 4030        IWMPErrorItem *This,
 4031        VARIANT *pvarContext);
 4032
 4033    HRESULT (STDMETHODCALLTYPE *get_remedy)(
 4034        IWMPErrorItem *This,
 4035        LONG *plRemedy);
 4036
 4037    HRESULT (STDMETHODCALLTYPE *get_customUrl)(
 4038        IWMPErrorItem *This,
 4039        BSTR *pbstrCustomUrl);
 4040
 4041    END_INTERFACE
 4042} IWMPErrorItemVtbl;
 4043
 4044interface IWMPErrorItem {
 4045    CONST_VTBL IWMPErrorItemVtbl* lpVtbl;
 4046};
 4047
 4048#ifdef COBJMACROS
 4049#ifndef WIDL_C_INLINE_WRAPPERS
 4050/*** IUnknown methods ***/
 4051#define IWMPErrorItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 4052#define IWMPErrorItem_AddRef(This) (This)->lpVtbl->AddRef(This)
 4053#define IWMPErrorItem_Release(This) (This)->lpVtbl->Release(This)
 4054/*** IDispatch methods ***/
 4055#define IWMPErrorItem_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 4056#define IWMPErrorItem_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 4057#define IWMPErrorItem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 4058#define IWMPErrorItem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 4059/*** IWMPErrorItem methods ***/
 4060#define IWMPErrorItem_get_errorCode(This,phr) (This)->lpVtbl->get_errorCode(This,phr)
 4061#define IWMPErrorItem_get_errorDescription(This,pbstrDescription) (This)->lpVtbl->get_errorDescription(This,pbstrDescription)
 4062#define IWMPErrorItem_get_errorContext(This,pvarContext) (This)->lpVtbl->get_errorContext(This,pvarContext)
 4063#define IWMPErrorItem_get_remedy(This,plRemedy) (This)->lpVtbl->get_remedy(This,plRemedy)
 4064#define IWMPErrorItem_get_customUrl(This,pbstrCustomUrl) (This)->lpVtbl->get_customUrl(This,pbstrCustomUrl)
 4065#else
 4066/*** IUnknown methods ***/
 4067static inline HRESULT IWMPErrorItem_QueryInterface(IWMPErrorItem* This,REFIID riid,void **ppvObject) {
 4068    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 4069}
 4070static inline ULONG IWMPErrorItem_AddRef(IWMPErrorItem* This) {
 4071    return This->lpVtbl->AddRef(This);
 4072}
 4073static inline ULONG IWMPErrorItem_Release(IWMPErrorItem* This) {
 4074    return This->lpVtbl->Release(This);
 4075}
 4076/*** IDispatch methods ***/
 4077static inline HRESULT IWMPErrorItem_GetTypeInfoCount(IWMPErrorItem* This,UINT *pctinfo) {
 4078    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 4079}
 4080static inline HRESULT IWMPErrorItem_GetTypeInfo(IWMPErrorItem* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 4081    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 4082}
 4083static inline HRESULT IWMPErrorItem_GetIDsOfNames(IWMPErrorItem* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 4084    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 4085}
 4086static inline HRESULT IWMPErrorItem_Invoke(IWMPErrorItem* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 4087    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 4088}
 4089/*** IWMPErrorItem methods ***/
 4090static inline HRESULT IWMPErrorItem_get_errorCode(IWMPErrorItem* This,LONG *phr) {
 4091    return This->lpVtbl->get_errorCode(This,phr);
 4092}
 4093static inline HRESULT IWMPErrorItem_get_errorDescription(IWMPErrorItem* This,BSTR *pbstrDescription) {
 4094    return This->lpVtbl->get_errorDescription(This,pbstrDescription);
 4095}
 4096static inline HRESULT IWMPErrorItem_get_errorContext(IWMPErrorItem* This,VARIANT *pvarContext) {
 4097    return This->lpVtbl->get_errorContext(This,pvarContext);
 4098}
 4099static inline HRESULT IWMPErrorItem_get_remedy(IWMPErrorItem* This,LONG *plRemedy) {
 4100    return This->lpVtbl->get_remedy(This,plRemedy);
 4101}
 4102static inline HRESULT IWMPErrorItem_get_customUrl(IWMPErrorItem* This,BSTR *pbstrCustomUrl) {
 4103    return This->lpVtbl->get_customUrl(This,pbstrCustomUrl);
 4104}
 4105#endif
 4106#endif
 4107
 4108#endif
 4109
 4110
 4111#endif  /* __IWMPErrorItem_INTERFACE_DEFINED__ */
 4112
 4113/*****************************************************************************
 4114 * IWMPMedia2 interface
 4115 */
 4116#ifndef __IWMPMedia2_INTERFACE_DEFINED__
 4117#define __IWMPMedia2_INTERFACE_DEFINED__
 4118
 4119DEFINE_GUID(IID_IWMPMedia2, 0xab7c88bb, 0x143e, 0x4ea4, 0xac,0xc3, 0xe4,0x35,0x0b,0x21,0x06,0xc3);
 4120#if defined(__cplusplus) && !defined(CINTERFACE)
 4121MIDL_INTERFACE("ab7c88bb-143e-4ea4-acc3-e4350b2106c3")
 4122IWMPMedia2 : public IWMPMedia
 4123{
 4124    virtual HRESULT STDMETHODCALLTYPE get_error(
 4125        IWMPErrorItem **out) = 0;
 4126
 4127};
 4128#ifdef __CRT_UUID_DECL
 4129__CRT_UUID_DECL(IWMPMedia2, 0xab7c88bb, 0x143e, 0x4ea4, 0xac,0xc3, 0xe4,0x35,0x0b,0x21,0x06,0xc3)
 4130#endif
 4131#else
 4132typedef struct IWMPMedia2Vtbl {
 4133    BEGIN_INTERFACE
 4134
 4135    /*** IUnknown methods ***/
 4136    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 4137        IWMPMedia2 *This,
 4138        REFIID riid,
 4139        void **ppvObject);
 4140
 4141    ULONG (STDMETHODCALLTYPE *AddRef)(
 4142        IWMPMedia2 *This);
 4143
 4144    ULONG (STDMETHODCALLTYPE *Release)(
 4145        IWMPMedia2 *This);
 4146
 4147    /*** IDispatch methods ***/
 4148    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 4149        IWMPMedia2 *This,
 4150        UINT *pctinfo);
 4151
 4152    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 4153        IWMPMedia2 *This,
 4154        UINT iTInfo,
 4155        LCID lcid,
 4156        ITypeInfo **ppTInfo);
 4157
 4158    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 4159        IWMPMedia2 *This,
 4160        REFIID riid,
 4161        LPOLESTR *rgszNames,
 4162        UINT cNames,
 4163        LCID lcid,
 4164        DISPID *rgDispId);
 4165
 4166    HRESULT (STDMETHODCALLTYPE *Invoke)(
 4167        IWMPMedia2 *This,
 4168        DISPID dispIdMember,
 4169        REFIID riid,
 4170        LCID lcid,
 4171        WORD wFlags,
 4172        DISPPARAMS *pDispParams,
 4173        VARIANT *pVarResult,
 4174        EXCEPINFO *pExcepInfo,
 4175        UINT *puArgErr);
 4176
 4177    /*** IWMPMedia methods ***/
 4178    HRESULT (STDMETHODCALLTYPE *get_isIdentical)(
 4179        IWMPMedia2 *This,
 4180        IWMPMedia *pIWMPMedia,
 4181        VARIANT_BOOL *pvbool);
 4182
 4183    HRESULT (STDMETHODCALLTYPE *get_sourceURL)(
 4184        IWMPMedia2 *This,
 4185        BSTR *pbstrSourceURL);
 4186
 4187    HRESULT (STDMETHODCALLTYPE *get_name)(
 4188        IWMPMedia2 *This,
 4189        BSTR *pbstrName);
 4190
 4191    HRESULT (STDMETHODCALLTYPE *put_name)(
 4192        IWMPMedia2 *This,
 4193        BSTR pbstrName);
 4194
 4195    HRESULT (STDMETHODCALLTYPE *get_imageSourceWidth)(
 4196        IWMPMedia2 *This,
 4197        LONG *pWidth);
 4198
 4199    HRESULT (STDMETHODCALLTYPE *get_imageSourceHeight)(
 4200        IWMPMedia2 *This,
 4201        LONG *pHeight);
 4202
 4203    HRESULT (STDMETHODCALLTYPE *get_markerCount)(
 4204        IWMPMedia2 *This,
 4205        LONG *pMarkerCount);
 4206
 4207    HRESULT (STDMETHODCALLTYPE *getMarkerTime)(
 4208        IWMPMedia2 *This,
 4209        LONG MarkerNum,
 4210        double *pMarkerTime);
 4211
 4212    HRESULT (STDMETHODCALLTYPE *getMarkerName)(
 4213        IWMPMedia2 *This,
 4214        LONG MarkerNum,
 4215        BSTR *pbstrMarkerName);
 4216
 4217    HRESULT (STDMETHODCALLTYPE *get_duration)(
 4218        IWMPMedia2 *This,
 4219        double *pDuration);
 4220
 4221    HRESULT (STDMETHODCALLTYPE *get_durationString)(
 4222        IWMPMedia2 *This,
 4223        BSTR *pbstrDuration);
 4224
 4225    HRESULT (STDMETHODCALLTYPE *get_attributeCount)(
 4226        IWMPMedia2 *This,
 4227        LONG *plCount);
 4228
 4229    HRESULT (STDMETHODCALLTYPE *getAttributeName)(
 4230        IWMPMedia2 *This,
 4231        LONG lIndex,
 4232        BSTR *pbstrItemName);
 4233
 4234    HRESULT (STDMETHODCALLTYPE *getItemInfo)(
 4235        IWMPMedia2 *This,
 4236        BSTR bstrItemName,
 4237        BSTR *pbstrVal);
 4238
 4239    HRESULT (STDMETHODCALLTYPE *setItemInfo)(
 4240        IWMPMedia2 *This,
 4241        BSTR bstrItemName,
 4242        BSTR bstrVal);
 4243
 4244    HRESULT (STDMETHODCALLTYPE *getItemInfoByAtom)(
 4245        IWMPMedia2 *This,
 4246        LONG lAtom,
 4247        BSTR *pbstrVal);
 4248
 4249    HRESULT (STDMETHODCALLTYPE *isMemberOf)(
 4250        IWMPMedia2 *This,
 4251        IWMPPlaylist *pPlaylist,
 4252        VARIANT_BOOL *pvarfIsMemberOf);
 4253
 4254    HRESULT (STDMETHODCALLTYPE *isReadOnlyItem)(
 4255        IWMPMedia2 *This,
 4256        BSTR bstrItemName,
 4257        VARIANT_BOOL *pvarfIsReadOnly);
 4258
 4259    /*** IWMPMedia2 methods ***/
 4260    HRESULT (STDMETHODCALLTYPE *get_error)(
 4261        IWMPMedia2 *This,
 4262        IWMPErrorItem **out);
 4263
 4264    END_INTERFACE
 4265} IWMPMedia2Vtbl;
 4266
 4267interface IWMPMedia2 {
 4268    CONST_VTBL IWMPMedia2Vtbl* lpVtbl;
 4269};
 4270
 4271#ifdef COBJMACROS
 4272#ifndef WIDL_C_INLINE_WRAPPERS
 4273/*** IUnknown methods ***/
 4274#define IWMPMedia2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 4275#define IWMPMedia2_AddRef(This) (This)->lpVtbl->AddRef(This)
 4276#define IWMPMedia2_Release(This) (This)->lpVtbl->Release(This)
 4277/*** IDispatch methods ***/
 4278#define IWMPMedia2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 4279#define IWMPMedia2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 4280#define IWMPMedia2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 4281#define IWMPMedia2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 4282/*** IWMPMedia methods ***/
 4283#define IWMPMedia2_get_isIdentical(This,pIWMPMedia,pvbool) (This)->lpVtbl->get_isIdentical(This,pIWMPMedia,pvbool)
 4284#define IWMPMedia2_get_sourceURL(This,pbstrSourceURL) (This)->lpVtbl->get_sourceURL(This,pbstrSourceURL)
 4285#define IWMPMedia2_get_name(This,pbstrName) (This)->lpVtbl->get_name(This,pbstrName)
 4286#define IWMPMedia2_put_name(This,pbstrName) (This)->lpVtbl->put_name(This,pbstrName)
 4287#define IWMPMedia2_get_imageSourceWidth(This,pWidth) (This)->lpVtbl->get_imageSourceWidth(This,pWidth)
 4288#define IWMPMedia2_get_imageSourceHeight(This,pHeight) (This)->lpVtbl->get_imageSourceHeight(This,pHeight)
 4289#define IWMPMedia2_get_markerCount(This,pMarkerCount) (This)->lpVtbl->get_markerCount(This,pMarkerCount)
 4290#define IWMPMedia2_getMarkerTime(This,MarkerNum,pMarkerTime) (This)->lpVtbl->getMarkerTime(This,MarkerNum,pMarkerTime)
 4291#define IWMPMedia2_getMarkerName(This,MarkerNum,pbstrMarkerName) (This)->lpVtbl->getMarkerName(This,MarkerNum,pbstrMarkerName)
 4292#define IWMPMedia2_get_duration(This,pDuration) (This)->lpVtbl->get_duration(This,pDuration)
 4293#define IWMPMedia2_get_durationString(This,pbstrDuration) (This)->lpVtbl->get_durationString(This,pbstrDuration)
 4294#define IWMPMedia2_get_attributeCount(This,plCount) (This)->lpVtbl->get_attributeCount(This,plCount)
 4295#define IWMPMedia2_getAttributeName(This,lIndex,pbstrItemName) (This)->lpVtbl->getAttributeName(This,lIndex,pbstrItemName)
 4296#define IWMPMedia2_getItemInfo(This,bstrItemName,pbstrVal) (This)->lpVtbl->getItemInfo(This,bstrItemName,pbstrVal)
 4297#define IWMPMedia2_setItemInfo(This,bstrItemName,bstrVal) (This)->lpVtbl->setItemInfo(This,bstrItemName,bstrVal)
 4298#define IWMPMedia2_getItemInfoByAtom(This,lAtom,pbstrVal) (This)->lpVtbl->getItemInfoByAtom(This,lAtom,pbstrVal)
 4299#define IWMPMedia2_isMemberOf(This,pPlaylist,pvarfIsMemberOf) (This)->lpVtbl->isMemberOf(This,pPlaylist,pvarfIsMemberOf)
 4300#define IWMPMedia2_isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly) (This)->lpVtbl->isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly)
 4301/*** IWMPMedia2 methods ***/
 4302#define IWMPMedia2_get_error(This,out) (This)->lpVtbl->get_error(This,out)
 4303#else
 4304/*** IUnknown methods ***/
 4305static inline HRESULT IWMPMedia2_QueryInterface(IWMPMedia2* This,REFIID riid,void **ppvObject) {
 4306    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 4307}
 4308static inline ULONG IWMPMedia2_AddRef(IWMPMedia2* This) {
 4309    return This->lpVtbl->AddRef(This);
 4310}
 4311static inline ULONG IWMPMedia2_Release(IWMPMedia2* This) {
 4312    return This->lpVtbl->Release(This);
 4313}
 4314/*** IDispatch methods ***/
 4315static inline HRESULT IWMPMedia2_GetTypeInfoCount(IWMPMedia2* This,UINT *pctinfo) {
 4316    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 4317}
 4318static inline HRESULT IWMPMedia2_GetTypeInfo(IWMPMedia2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 4319    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 4320}
 4321static inline HRESULT IWMPMedia2_GetIDsOfNames(IWMPMedia2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 4322    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 4323}
 4324static inline HRESULT IWMPMedia2_Invoke(IWMPMedia2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 4325    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 4326}
 4327/*** IWMPMedia methods ***/
 4328static inline HRESULT IWMPMedia2_get_isIdentical(IWMPMedia2* This,IWMPMedia *pIWMPMedia,VARIANT_BOOL *pvbool) {
 4329    return This->lpVtbl->get_isIdentical(This,pIWMPMedia,pvbool);
 4330}
 4331static inline HRESULT IWMPMedia2_get_sourceURL(IWMPMedia2* This,BSTR *pbstrSourceURL) {
 4332    return This->lpVtbl->get_sourceURL(This,pbstrSourceURL);
 4333}
 4334static inline HRESULT IWMPMedia2_get_name(IWMPMedia2* This,BSTR *pbstrName) {
 4335    return This->lpVtbl->get_name(This,pbstrName);
 4336}
 4337static inline HRESULT IWMPMedia2_put_name(IWMPMedia2* This,BSTR pbstrName) {
 4338    return This->lpVtbl->put_name(This,pbstrName);
 4339}
 4340static inline HRESULT IWMPMedia2_get_imageSourceWidth(IWMPMedia2* This,LONG *pWidth) {
 4341    return This->lpVtbl->get_imageSourceWidth(This,pWidth);
 4342}
 4343static inline HRESULT IWMPMedia2_get_imageSourceHeight(IWMPMedia2* This,LONG *pHeight) {
 4344    return This->lpVtbl->get_imageSourceHeight(This,pHeight);
 4345}
 4346static inline HRESULT IWMPMedia2_get_markerCount(IWMPMedia2* This,LONG *pMarkerCount) {
 4347    return This->lpVtbl->get_markerCount(This,pMarkerCount);
 4348}
 4349static inline HRESULT IWMPMedia2_getMarkerTime(IWMPMedia2* This,LONG MarkerNum,double *pMarkerTime) {
 4350    return This->lpVtbl->getMarkerTime(This,MarkerNum,pMarkerTime);
 4351}
 4352static inline HRESULT IWMPMedia2_getMarkerName(IWMPMedia2* This,LONG MarkerNum,BSTR *pbstrMarkerName) {
 4353    return This->lpVtbl->getMarkerName(This,MarkerNum,pbstrMarkerName);
 4354}
 4355static inline HRESULT IWMPMedia2_get_duration(IWMPMedia2* This,double *pDuration) {
 4356    return This->lpVtbl->get_duration(This,pDuration);
 4357}
 4358static inline HRESULT IWMPMedia2_get_durationString(IWMPMedia2* This,BSTR *pbstrDuration) {
 4359    return This->lpVtbl->get_durationString(This,pbstrDuration);
 4360}
 4361static inline HRESULT IWMPMedia2_get_attributeCount(IWMPMedia2* This,LONG *plCount) {
 4362    return This->lpVtbl->get_attributeCount(This,plCount);
 4363}
 4364static inline HRESULT IWMPMedia2_getAttributeName(IWMPMedia2* This,LONG lIndex,BSTR *pbstrItemName) {
 4365    return This->lpVtbl->getAttributeName(This,lIndex,pbstrItemName);
 4366}
 4367static inline HRESULT IWMPMedia2_getItemInfo(IWMPMedia2* This,BSTR bstrItemName,BSTR *pbstrVal) {
 4368    return This->lpVtbl->getItemInfo(This,bstrItemName,pbstrVal);
 4369}
 4370static inline HRESULT IWMPMedia2_setItemInfo(IWMPMedia2* This,BSTR bstrItemName,BSTR bstrVal) {
 4371    return This->lpVtbl->setItemInfo(This,bstrItemName,bstrVal);
 4372}
 4373static inline HRESULT IWMPMedia2_getItemInfoByAtom(IWMPMedia2* This,LONG lAtom,BSTR *pbstrVal) {
 4374    return This->lpVtbl->getItemInfoByAtom(This,lAtom,pbstrVal);
 4375}
 4376static inline HRESULT IWMPMedia2_isMemberOf(IWMPMedia2* This,IWMPPlaylist *pPlaylist,VARIANT_BOOL *pvarfIsMemberOf) {
 4377    return This->lpVtbl->isMemberOf(This,pPlaylist,pvarfIsMemberOf);
 4378}
 4379static inline HRESULT IWMPMedia2_isReadOnlyItem(IWMPMedia2* This,BSTR bstrItemName,VARIANT_BOOL *pvarfIsReadOnly) {
 4380    return This->lpVtbl->isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly);
 4381}
 4382/*** IWMPMedia2 methods ***/
 4383static inline HRESULT IWMPMedia2_get_error(IWMPMedia2* This,IWMPErrorItem **out) {
 4384    return This->lpVtbl->get_error(This,out);
 4385}
 4386#endif
 4387#endif
 4388
 4389#endif
 4390
 4391
 4392#endif  /* __IWMPMedia2_INTERFACE_DEFINED__ */
 4393
 4394/*****************************************************************************
 4395 * IWMPMedia3 interface
 4396 */
 4397#ifndef __IWMPMedia3_INTERFACE_DEFINED__
 4398#define __IWMPMedia3_INTERFACE_DEFINED__
 4399
 4400DEFINE_GUID(IID_IWMPMedia3, 0xf118efc7, 0xf03a, 0x4fb4, 0x99,0xc9, 0x1c,0x02,0xa5,0xc1,0x06,0x5b);
 4401#if defined(__cplusplus) && !defined(CINTERFACE)
 4402MIDL_INTERFACE("f118efc7-f03a-4fb4-99c9-1c02a5c1065b")
 4403IWMPMedia3 : public IWMPMedia2
 4404{
 4405    virtual HRESULT STDMETHODCALLTYPE getAttributeCountByType(
 4406        BSTR type,
 4407        BSTR language,
 4408        LONG *out) = 0;
 4409
 4410    virtual HRESULT STDMETHODCALLTYPE getItemInfoByType(
 4411        BSTR type,
 4412        BSTR language,
 4413        LONG index,
 4414        VARIANT *out) = 0;
 4415
 4416};
 4417#ifdef __CRT_UUID_DECL
 4418__CRT_UUID_DECL(IWMPMedia3, 0xf118efc7, 0xf03a, 0x4fb4, 0x99,0xc9, 0x1c,0x02,0xa5,0xc1,0x06,0x5b)
 4419#endif
 4420#else
 4421typedef struct IWMPMedia3Vtbl {
 4422    BEGIN_INTERFACE
 4423
 4424    /*** IUnknown methods ***/
 4425    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 4426        IWMPMedia3 *This,
 4427        REFIID riid,
 4428        void **ppvObject);
 4429
 4430    ULONG (STDMETHODCALLTYPE *AddRef)(
 4431        IWMPMedia3 *This);
 4432
 4433    ULONG (STDMETHODCALLTYPE *Release)(
 4434        IWMPMedia3 *This);
 4435
 4436    /*** IDispatch methods ***/
 4437    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 4438        IWMPMedia3 *This,
 4439        UINT *pctinfo);
 4440
 4441    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 4442        IWMPMedia3 *This,
 4443        UINT iTInfo,
 4444        LCID lcid,
 4445        ITypeInfo **ppTInfo);
 4446
 4447    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 4448        IWMPMedia3 *This,
 4449        REFIID riid,
 4450        LPOLESTR *rgszNames,
 4451        UINT cNames,
 4452        LCID lcid,
 4453        DISPID *rgDispId);
 4454
 4455    HRESULT (STDMETHODCALLTYPE *Invoke)(
 4456        IWMPMedia3 *This,
 4457        DISPID dispIdMember,
 4458        REFIID riid,
 4459        LCID lcid,
 4460        WORD wFlags,
 4461        DISPPARAMS *pDispParams,
 4462        VARIANT *pVarResult,
 4463        EXCEPINFO *pExcepInfo,
 4464        UINT *puArgErr);
 4465
 4466    /*** IWMPMedia methods ***/
 4467    HRESULT (STDMETHODCALLTYPE *get_isIdentical)(
 4468        IWMPMedia3 *This,
 4469        IWMPMedia *pIWMPMedia,
 4470        VARIANT_BOOL *pvbool);
 4471
 4472    HRESULT (STDMETHODCALLTYPE *get_sourceURL)(
 4473        IWMPMedia3 *This,
 4474        BSTR *pbstrSourceURL);
 4475
 4476    HRESULT (STDMETHODCALLTYPE *get_name)(
 4477        IWMPMedia3 *This,
 4478        BSTR *pbstrName);
 4479
 4480    HRESULT (STDMETHODCALLTYPE *put_name)(
 4481        IWMPMedia3 *This,
 4482        BSTR pbstrName);
 4483
 4484    HRESULT (STDMETHODCALLTYPE *get_imageSourceWidth)(
 4485        IWMPMedia3 *This,
 4486        LONG *pWidth);
 4487
 4488    HRESULT (STDMETHODCALLTYPE *get_imageSourceHeight)(
 4489        IWMPMedia3 *This,
 4490        LONG *pHeight);
 4491
 4492    HRESULT (STDMETHODCALLTYPE *get_markerCount)(
 4493        IWMPMedia3 *This,
 4494        LONG *pMarkerCount);
 4495
 4496    HRESULT (STDMETHODCALLTYPE *getMarkerTime)(
 4497        IWMPMedia3 *This,
 4498        LONG MarkerNum,
 4499        double *pMarkerTime);
 4500
 4501    HRESULT (STDMETHODCALLTYPE *getMarkerName)(
 4502        IWMPMedia3 *This,
 4503        LONG MarkerNum,
 4504        BSTR *pbstrMarkerName);
 4505
 4506    HRESULT (STDMETHODCALLTYPE *get_duration)(
 4507        IWMPMedia3 *This,
 4508        double *pDuration);
 4509
 4510    HRESULT (STDMETHODCALLTYPE *get_durationString)(
 4511        IWMPMedia3 *This,
 4512        BSTR *pbstrDuration);
 4513
 4514    HRESULT (STDMETHODCALLTYPE *get_attributeCount)(
 4515        IWMPMedia3 *This,
 4516        LONG *plCount);
 4517
 4518    HRESULT (STDMETHODCALLTYPE *getAttributeName)(
 4519        IWMPMedia3 *This,
 4520        LONG lIndex,
 4521        BSTR *pbstrItemName);
 4522
 4523    HRESULT (STDMETHODCALLTYPE *getItemInfo)(
 4524        IWMPMedia3 *This,
 4525        BSTR bstrItemName,
 4526        BSTR *pbstrVal);
 4527
 4528    HRESULT (STDMETHODCALLTYPE *setItemInfo)(
 4529        IWMPMedia3 *This,
 4530        BSTR bstrItemName,
 4531        BSTR bstrVal);
 4532
 4533    HRESULT (STDMETHODCALLTYPE *getItemInfoByAtom)(
 4534        IWMPMedia3 *This,
 4535        LONG lAtom,
 4536        BSTR *pbstrVal);
 4537
 4538    HRESULT (STDMETHODCALLTYPE *isMemberOf)(
 4539        IWMPMedia3 *This,
 4540        IWMPPlaylist *pPlaylist,
 4541        VARIANT_BOOL *pvarfIsMemberOf);
 4542
 4543    HRESULT (STDMETHODCALLTYPE *isReadOnlyItem)(
 4544        IWMPMedia3 *This,
 4545        BSTR bstrItemName,
 4546        VARIANT_BOOL *pvarfIsReadOnly);
 4547
 4548    /*** IWMPMedia2 methods ***/
 4549    HRESULT (STDMETHODCALLTYPE *get_error)(
 4550        IWMPMedia3 *This,
 4551        IWMPErrorItem **out);
 4552
 4553    /*** IWMPMedia3 methods ***/
 4554    HRESULT (STDMETHODCALLTYPE *getAttributeCountByType)(
 4555        IWMPMedia3 *This,
 4556        BSTR type,
 4557        BSTR language,
 4558        LONG *out);
 4559
 4560    HRESULT (STDMETHODCALLTYPE *getItemInfoByType)(
 4561        IWMPMedia3 *This,
 4562        BSTR type,
 4563        BSTR language,
 4564        LONG index,
 4565        VARIANT *out);
 4566
 4567    END_INTERFACE
 4568} IWMPMedia3Vtbl;
 4569
 4570interface IWMPMedia3 {
 4571    CONST_VTBL IWMPMedia3Vtbl* lpVtbl;
 4572};
 4573
 4574#ifdef COBJMACROS
 4575#ifndef WIDL_C_INLINE_WRAPPERS
 4576/*** IUnknown methods ***/
 4577#define IWMPMedia3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 4578#define IWMPMedia3_AddRef(This) (This)->lpVtbl->AddRef(This)
 4579#define IWMPMedia3_Release(This) (This)->lpVtbl->Release(This)
 4580/*** IDispatch methods ***/
 4581#define IWMPMedia3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 4582#define IWMPMedia3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 4583#define IWMPMedia3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 4584#define IWMPMedia3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 4585/*** IWMPMedia methods ***/
 4586#define IWMPMedia3_get_isIdentical(This,pIWMPMedia,pvbool) (This)->lpVtbl->get_isIdentical(This,pIWMPMedia,pvbool)
 4587#define IWMPMedia3_get_sourceURL(This,pbstrSourceURL) (This)->lpVtbl->get_sourceURL(This,pbstrSourceURL)
 4588#define IWMPMedia3_get_name(This,pbstrName) (This)->lpVtbl->get_name(This,pbstrName)
 4589#define IWMPMedia3_put_name(This,pbstrName) (This)->lpVtbl->put_name(This,pbstrName)
 4590#define IWMPMedia3_get_imageSourceWidth(This,pWidth) (This)->lpVtbl->get_imageSourceWidth(This,pWidth)
 4591#define IWMPMedia3_get_imageSourceHeight(This,pHeight) (This)->lpVtbl->get_imageSourceHeight(This,pHeight)
 4592#define IWMPMedia3_get_markerCount(This,pMarkerCount) (This)->lpVtbl->get_markerCount(This,pMarkerCount)
 4593#define IWMPMedia3_getMarkerTime(This,MarkerNum,pMarkerTime) (This)->lpVtbl->getMarkerTime(This,MarkerNum,pMarkerTime)
 4594#define IWMPMedia3_getMarkerName(This,MarkerNum,pbstrMarkerName) (This)->lpVtbl->getMarkerName(This,MarkerNum,pbstrMarkerName)
 4595#define IWMPMedia3_get_duration(This,pDuration) (This)->lpVtbl->get_duration(This,pDuration)
 4596#define IWMPMedia3_get_durationString(This,pbstrDuration) (This)->lpVtbl->get_durationString(This,pbstrDuration)
 4597#define IWMPMedia3_get_attributeCount(This,plCount) (This)->lpVtbl->get_attributeCount(This,plCount)
 4598#define IWMPMedia3_getAttributeName(This,lIndex,pbstrItemName) (This)->lpVtbl->getAttributeName(This,lIndex,pbstrItemName)
 4599#define IWMPMedia3_getItemInfo(This,bstrItemName,pbstrVal) (This)->lpVtbl->getItemInfo(This,bstrItemName,pbstrVal)
 4600#define IWMPMedia3_setItemInfo(This,bstrItemName,bstrVal) (This)->lpVtbl->setItemInfo(This,bstrItemName,bstrVal)
 4601#define IWMPMedia3_getItemInfoByAtom(This,lAtom,pbstrVal) (This)->lpVtbl->getItemInfoByAtom(This,lAtom,pbstrVal)
 4602#define IWMPMedia3_isMemberOf(This,pPlaylist,pvarfIsMemberOf) (This)->lpVtbl->isMemberOf(This,pPlaylist,pvarfIsMemberOf)
 4603#define IWMPMedia3_isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly) (This)->lpVtbl->isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly)
 4604/*** IWMPMedia2 methods ***/
 4605#define IWMPMedia3_get_error(This,out) (This)->lpVtbl->get_error(This,out)
 4606/*** IWMPMedia3 methods ***/
 4607#define IWMPMedia3_getAttributeCountByType(This,type,language,out) (This)->lpVtbl->getAttributeCountByType(This,type,language,out)
 4608#define IWMPMedia3_getItemInfoByType(This,type,language,index,out) (This)->lpVtbl->getItemInfoByType(This,type,language,index,out)
 4609#else
 4610/*** IUnknown methods ***/
 4611static inline HRESULT IWMPMedia3_QueryInterface(IWMPMedia3* This,REFIID riid,void **ppvObject) {
 4612    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 4613}
 4614static inline ULONG IWMPMedia3_AddRef(IWMPMedia3* This) {
 4615    return This->lpVtbl->AddRef(This);
 4616}
 4617static inline ULONG IWMPMedia3_Release(IWMPMedia3* This) {
 4618    return This->lpVtbl->Release(This);
 4619}
 4620/*** IDispatch methods ***/
 4621static inline HRESULT IWMPMedia3_GetTypeInfoCount(IWMPMedia3* This,UINT *pctinfo) {
 4622    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 4623}
 4624static inline HRESULT IWMPMedia3_GetTypeInfo(IWMPMedia3* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 4625    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 4626}
 4627static inline HRESULT IWMPMedia3_GetIDsOfNames(IWMPMedia3* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 4628    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 4629}
 4630static inline HRESULT IWMPMedia3_Invoke(IWMPMedia3* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 4631    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 4632}
 4633/*** IWMPMedia methods ***/
 4634static inline HRESULT IWMPMedia3_get_isIdentical(IWMPMedia3* This,IWMPMedia *pIWMPMedia,VARIANT_BOOL *pvbool) {
 4635    return This->lpVtbl->get_isIdentical(This,pIWMPMedia,pvbool);
 4636}
 4637static inline HRESULT IWMPMedia3_get_sourceURL(IWMPMedia3* This,BSTR *pbstrSourceURL) {
 4638    return This->lpVtbl->get_sourceURL(This,pbstrSourceURL);
 4639}
 4640static inline HRESULT IWMPMedia3_get_name(IWMPMedia3* This,BSTR *pbstrName) {
 4641    return This->lpVtbl->get_name(This,pbstrName);
 4642}
 4643static inline HRESULT IWMPMedia3_put_name(IWMPMedia3* This,BSTR pbstrName) {
 4644    return This->lpVtbl->put_name(This,pbstrName);
 4645}
 4646static inline HRESULT IWMPMedia3_get_imageSourceWidth(IWMPMedia3* This,LONG *pWidth) {
 4647    return This->lpVtbl->get_imageSourceWidth(This,pWidth);
 4648}
 4649static inline HRESULT IWMPMedia3_get_imageSourceHeight(IWMPMedia3* This,LONG *pHeight) {
 4650    return This->lpVtbl->get_imageSourceHeight(This,pHeight);
 4651}
 4652static inline HRESULT IWMPMedia3_get_markerCount(IWMPMedia3* This,LONG *pMarkerCount) {
 4653    return This->lpVtbl->get_markerCount(This,pMarkerCount);
 4654}
 4655static inline HRESULT IWMPMedia3_getMarkerTime(IWMPMedia3* This,LONG MarkerNum,double *pMarkerTime) {
 4656    return This->lpVtbl->getMarkerTime(This,MarkerNum,pMarkerTime);
 4657}
 4658static inline HRESULT IWMPMedia3_getMarkerName(IWMPMedia3* This,LONG MarkerNum,BSTR *pbstrMarkerName) {
 4659    return This->lpVtbl->getMarkerName(This,MarkerNum,pbstrMarkerName);
 4660}
 4661static inline HRESULT IWMPMedia3_get_duration(IWMPMedia3* This,double *pDuration) {
 4662    return This->lpVtbl->get_duration(This,pDuration);
 4663}
 4664static inline HRESULT IWMPMedia3_get_durationString(IWMPMedia3* This,BSTR *pbstrDuration) {
 4665    return This->lpVtbl->get_durationString(This,pbstrDuration);
 4666}
 4667static inline HRESULT IWMPMedia3_get_attributeCount(IWMPMedia3* This,LONG *plCount) {
 4668    return This->lpVtbl->get_attributeCount(This,plCount);
 4669}
 4670static inline HRESULT IWMPMedia3_getAttributeName(IWMPMedia3* This,LONG lIndex,BSTR *pbstrItemName) {
 4671    return This->lpVtbl->getAttributeName(This,lIndex,pbstrItemName);
 4672}
 4673static inline HRESULT IWMPMedia3_getItemInfo(IWMPMedia3* This,BSTR bstrItemName,BSTR *pbstrVal) {
 4674    return This->lpVtbl->getItemInfo(This,bstrItemName,pbstrVal);
 4675}
 4676static inline HRESULT IWMPMedia3_setItemInfo(IWMPMedia3* This,BSTR bstrItemName,BSTR bstrVal) {
 4677    return This->lpVtbl->setItemInfo(This,bstrItemName,bstrVal);
 4678}
 4679static inline HRESULT IWMPMedia3_getItemInfoByAtom(IWMPMedia3* This,LONG lAtom,BSTR *pbstrVal) {
 4680    return This->lpVtbl->getItemInfoByAtom(This,lAtom,pbstrVal);
 4681}
 4682static inline HRESULT IWMPMedia3_isMemberOf(IWMPMedia3* This,IWMPPlaylist *pPlaylist,VARIANT_BOOL *pvarfIsMemberOf) {
 4683    return This->lpVtbl->isMemberOf(This,pPlaylist,pvarfIsMemberOf);
 4684}
 4685static inline HRESULT IWMPMedia3_isReadOnlyItem(IWMPMedia3* This,BSTR bstrItemName,VARIANT_BOOL *pvarfIsReadOnly) {
 4686    return This->lpVtbl->isReadOnlyItem(This,bstrItemName,pvarfIsReadOnly);
 4687}
 4688/*** IWMPMedia2 methods ***/
 4689static inline HRESULT IWMPMedia3_get_error(IWMPMedia3* This,IWMPErrorItem **out) {
 4690    return This->lpVtbl->get_error(This,out);
 4691}
 4692/*** IWMPMedia3 methods ***/
 4693static inline HRESULT IWMPMedia3_getAttributeCountByType(IWMPMedia3* This,BSTR type,BSTR language,LONG *out) {
 4694    return This->lpVtbl->getAttributeCountByType(This,type,language,out);
 4695}
 4696static inline HRESULT IWMPMedia3_getItemInfoByType(IWMPMedia3* This,BSTR type,BSTR language,LONG index,VARIANT *out) {
 4697    return This->lpVtbl->getItemInfoByType(This,type,language,index,out);
 4698}
 4699#endif
 4700#endif
 4701
 4702#endif
 4703
 4704
 4705#endif  /* __IWMPMedia3_INTERFACE_DEFINED__ */
 4706
 4707/*****************************************************************************
 4708 * IWMPError interface
 4709 */
 4710#ifndef __IWMPError_INTERFACE_DEFINED__
 4711#define __IWMPError_INTERFACE_DEFINED__
 4712
 4713DEFINE_GUID(IID_IWMPError, 0xa12dcf7d, 0x14ab, 0x4c1b, 0xa8,0xcd, 0x63,0x90,0x9f,0x06,0x02,0x5b);
 4714#if defined(__cplusplus) && !defined(CINTERFACE)
 4715MIDL_INTERFACE("a12dcf7d-14ab-4c1b-a8cd-63909f06025b")
 4716IWMPError : public IDispatch
 4717{
 4718    virtual HRESULT STDMETHODCALLTYPE clearErrorQueue(
 4719        ) = 0;
 4720
 4721    virtual HRESULT STDMETHODCALLTYPE get_errorCount(
 4722        LONG *plNumErrors) = 0;
 4723
 4724    virtual HRESULT STDMETHODCALLTYPE get_Item(
 4725        LONG dwIndex,
 4726        IWMPErrorItem **ppErrorItem) = 0;
 4727
 4728    virtual HRESULT STDMETHODCALLTYPE webHelp(
 4729        ) = 0;
 4730
 4731};
 4732#ifdef __CRT_UUID_DECL
 4733__CRT_UUID_DECL(IWMPError, 0xa12dcf7d, 0x14ab, 0x4c1b, 0xa8,0xcd, 0x63,0x90,0x9f,0x06,0x02,0x5b)
 4734#endif
 4735#else
 4736typedef struct IWMPErrorVtbl {
 4737    BEGIN_INTERFACE
 4738
 4739    /*** IUnknown methods ***/
 4740    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 4741        IWMPError *This,
 4742        REFIID riid,
 4743        void **ppvObject);
 4744
 4745    ULONG (STDMETHODCALLTYPE *AddRef)(
 4746        IWMPError *This);
 4747
 4748    ULONG (STDMETHODCALLTYPE *Release)(
 4749        IWMPError *This);
 4750
 4751    /*** IDispatch methods ***/
 4752    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 4753        IWMPError *This,
 4754        UINT *pctinfo);
 4755
 4756    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 4757        IWMPError *This,
 4758        UINT iTInfo,
 4759        LCID lcid,
 4760        ITypeInfo **ppTInfo);
 4761
 4762    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 4763        IWMPError *This,
 4764        REFIID riid,
 4765        LPOLESTR *rgszNames,
 4766        UINT cNames,
 4767        LCID lcid,
 4768        DISPID *rgDispId);
 4769
 4770    HRESULT (STDMETHODCALLTYPE *Invoke)(
 4771        IWMPError *This,
 4772        DISPID dispIdMember,
 4773        REFIID riid,
 4774        LCID lcid,
 4775        WORD wFlags,
 4776        DISPPARAMS *pDispParams,
 4777        VARIANT *pVarResult,
 4778        EXCEPINFO *pExcepInfo,
 4779        UINT *puArgErr);
 4780
 4781    /*** IWMPError methods ***/
 4782    HRESULT (STDMETHODCALLTYPE *clearErrorQueue)(
 4783        IWMPError *This);
 4784
 4785    HRESULT (STDMETHODCALLTYPE *get_errorCount)(
 4786        IWMPError *This,
 4787        LONG *plNumErrors);
 4788
 4789    HRESULT (STDMETHODCALLTYPE *get_Item)(
 4790        IWMPError *This,
 4791        LONG dwIndex,
 4792        IWMPErrorItem **ppErrorItem);
 4793
 4794    HRESULT (STDMETHODCALLTYPE *webHelp)(
 4795        IWMPError *This);
 4796
 4797    END_INTERFACE
 4798} IWMPErrorVtbl;
 4799
 4800interface IWMPError {
 4801    CONST_VTBL IWMPErrorVtbl* lpVtbl;
 4802};
 4803
 4804#ifdef COBJMACROS
 4805#ifndef WIDL_C_INLINE_WRAPPERS
 4806/*** IUnknown methods ***/
 4807#define IWMPError_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 4808#define IWMPError_AddRef(This) (This)->lpVtbl->AddRef(This)
 4809#define IWMPError_Release(This) (This)->lpVtbl->Release(This)
 4810/*** IDispatch methods ***/
 4811#define IWMPError_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 4812#define IWMPError_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 4813#define IWMPError_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 4814#define IWMPError_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 4815/*** IWMPError methods ***/
 4816#define IWMPError_clearErrorQueue(This) (This)->lpVtbl->clearErrorQueue(This)
 4817#define IWMPError_get_errorCount(This,plNumErrors) (This)->lpVtbl->get_errorCount(This,plNumErrors)
 4818#define IWMPError_get_Item(This,dwIndex,ppErrorItem) (This)->lpVtbl->get_Item(This,dwIndex,ppErrorItem)
 4819#define IWMPError_webHelp(This) (This)->lpVtbl->webHelp(This)
 4820#else
 4821/*** IUnknown methods ***/
 4822static inline HRESULT IWMPError_QueryInterface(IWMPError* This,REFIID riid,void **ppvObject) {
 4823    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 4824}
 4825static inline ULONG IWMPError_AddRef(IWMPError* This) {
 4826    return This->lpVtbl->AddRef(This);
 4827}
 4828static inline ULONG IWMPError_Release(IWMPError* This) {
 4829    return This->lpVtbl->Release(This);
 4830}
 4831/*** IDispatch methods ***/
 4832static inline HRESULT IWMPError_GetTypeInfoCount(IWMPError* This,UINT *pctinfo) {
 4833    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 4834}
 4835static inline HRESULT IWMPError_GetTypeInfo(IWMPError* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 4836    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 4837}
 4838static inline HRESULT IWMPError_GetIDsOfNames(IWMPError* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 4839    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 4840}
 4841static inline HRESULT IWMPError_Invoke(IWMPError* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 4842    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 4843}
 4844/*** IWMPError methods ***/
 4845static inline HRESULT IWMPError_clearErrorQueue(IWMPError* This) {
 4846    return This->lpVtbl->clearErrorQueue(This);
 4847}
 4848static inline HRESULT IWMPError_get_errorCount(IWMPError* This,LONG *plNumErrors) {
 4849    return This->lpVtbl->get_errorCount(This,plNumErrors);
 4850}
 4851static inline HRESULT IWMPError_get_Item(IWMPError* This,LONG dwIndex,IWMPErrorItem **ppErrorItem) {
 4852    return This->lpVtbl->get_Item(This,dwIndex,ppErrorItem);
 4853}
 4854static inline HRESULT IWMPError_webHelp(IWMPError* This) {
 4855    return This->lpVtbl->webHelp(This);
 4856}
 4857#endif
 4858#endif
 4859
 4860#endif
 4861
 4862
 4863#endif  /* __IWMPError_INTERFACE_DEFINED__ */
 4864
 4865/*****************************************************************************
 4866 * IWMPPlayerApplication interface
 4867 */
 4868#ifndef __IWMPPlayerApplication_INTERFACE_DEFINED__
 4869#define __IWMPPlayerApplication_INTERFACE_DEFINED__
 4870
 4871DEFINE_GUID(IID_IWMPPlayerApplication, 0x40897764, 0xceab, 0x47be, 0xad,0x4a, 0x8e,0x28,0x53,0x7f,0x9b,0xbf);
 4872#if defined(__cplusplus) && !defined(CINTERFACE)
 4873MIDL_INTERFACE("40897764-ceab-47be-ad4a-8e28537f9bbf")
 4874IWMPPlayerApplication : public IDispatch
 4875{
 4876    virtual HRESULT STDMETHODCALLTYPE switchToPlayerApplication(
 4877        ) = 0;
 4878
 4879    virtual HRESULT STDMETHODCALLTYPE switchToControl(
 4880        ) = 0;
 4881
 4882    virtual HRESULT STDMETHODCALLTYPE get_playerDocked(
 4883        VARIANT_BOOL *pbPlayerDocked) = 0;
 4884
 4885    virtual HRESULT STDMETHODCALLTYPE get_hasDisplay(
 4886        VARIANT_BOOL *pbHasDisplay) = 0;
 4887
 4888};
 4889#ifdef __CRT_UUID_DECL
 4890__CRT_UUID_DECL(IWMPPlayerApplication, 0x40897764, 0xceab, 0x47be, 0xad,0x4a, 0x8e,0x28,0x53,0x7f,0x9b,0xbf)
 4891#endif
 4892#else
 4893typedef struct IWMPPlayerApplicationVtbl {
 4894    BEGIN_INTERFACE
 4895
 4896    /*** IUnknown methods ***/
 4897    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 4898        IWMPPlayerApplication *This,
 4899        REFIID riid,
 4900        void **ppvObject);
 4901
 4902    ULONG (STDMETHODCALLTYPE *AddRef)(
 4903        IWMPPlayerApplication *This);
 4904
 4905    ULONG (STDMETHODCALLTYPE *Release)(
 4906        IWMPPlayerApplication *This);
 4907
 4908    /*** IDispatch methods ***/
 4909    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 4910        IWMPPlayerApplication *This,
 4911        UINT *pctinfo);
 4912
 4913    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 4914        IWMPPlayerApplication *This,
 4915        UINT iTInfo,
 4916        LCID lcid,
 4917        ITypeInfo **ppTInfo);
 4918
 4919    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 4920        IWMPPlayerApplication *This,
 4921        REFIID riid,
 4922        LPOLESTR *rgszNames,
 4923        UINT cNames,
 4924        LCID lcid,
 4925        DISPID *rgDispId);
 4926
 4927    HRESULT (STDMETHODCALLTYPE *Invoke)(
 4928        IWMPPlayerApplication *This,
 4929        DISPID dispIdMember,
 4930        REFIID riid,
 4931        LCID lcid,
 4932        WORD wFlags,
 4933        DISPPARAMS *pDispParams,
 4934        VARIANT *pVarResult,
 4935        EXCEPINFO *pExcepInfo,
 4936        UINT *puArgErr);
 4937
 4938    /*** IWMPPlayerApplication methods ***/
 4939    HRESULT (STDMETHODCALLTYPE *switchToPlayerApplication)(
 4940        IWMPPlayerApplication *This);
 4941
 4942    HRESULT (STDMETHODCALLTYPE *switchToControl)(
 4943        IWMPPlayerApplication *This);
 4944
 4945    HRESULT (STDMETHODCALLTYPE *get_playerDocked)(
 4946        IWMPPlayerApplication *This,
 4947        VARIANT_BOOL *pbPlayerDocked);
 4948
 4949    HRESULT (STDMETHODCALLTYPE *get_hasDisplay)(
 4950        IWMPPlayerApplication *This,
 4951        VARIANT_BOOL *pbHasDisplay);
 4952
 4953    END_INTERFACE
 4954} IWMPPlayerApplicationVtbl;
 4955
 4956interface IWMPPlayerApplication {
 4957    CONST_VTBL IWMPPlayerApplicationVtbl* lpVtbl;
 4958};
 4959
 4960#ifdef COBJMACROS
 4961#ifndef WIDL_C_INLINE_WRAPPERS
 4962/*** IUnknown methods ***/
 4963#define IWMPPlayerApplication_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 4964#define IWMPPlayerApplication_AddRef(This) (This)->lpVtbl->AddRef(This)
 4965#define IWMPPlayerApplication_Release(This) (This)->lpVtbl->Release(This)
 4966/*** IDispatch methods ***/
 4967#define IWMPPlayerApplication_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 4968#define IWMPPlayerApplication_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 4969#define IWMPPlayerApplication_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 4970#define IWMPPlayerApplication_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 4971/*** IWMPPlayerApplication methods ***/
 4972#define IWMPPlayerApplication_switchToPlayerApplication(This) (This)->lpVtbl->switchToPlayerApplication(This)
 4973#define IWMPPlayerApplication_switchToControl(This) (This)->lpVtbl->switchToControl(This)
 4974#define IWMPPlayerApplication_get_playerDocked(This,pbPlayerDocked) (This)->lpVtbl->get_playerDocked(This,pbPlayerDocked)
 4975#define IWMPPlayerApplication_get_hasDisplay(This,pbHasDisplay) (This)->lpVtbl->get_hasDisplay(This,pbHasDisplay)
 4976#else
 4977/*** IUnknown methods ***/
 4978static inline HRESULT IWMPPlayerApplication_QueryInterface(IWMPPlayerApplication* This,REFIID riid,void **ppvObject) {
 4979    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 4980}
 4981static inline ULONG IWMPPlayerApplication_AddRef(IWMPPlayerApplication* This) {
 4982    return This->lpVtbl->AddRef(This);
 4983}
 4984static inline ULONG IWMPPlayerApplication_Release(IWMPPlayerApplication* This) {
 4985    return This->lpVtbl->Release(This);
 4986}
 4987/*** IDispatch methods ***/
 4988static inline HRESULT IWMPPlayerApplication_GetTypeInfoCount(IWMPPlayerApplication* This,UINT *pctinfo) {
 4989    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 4990}
 4991static inline HRESULT IWMPPlayerApplication_GetTypeInfo(IWMPPlayerApplication* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 4992    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 4993}
 4994static inline HRESULT IWMPPlayerApplication_GetIDsOfNames(IWMPPlayerApplication* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 4995    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 4996}
 4997static inline HRESULT IWMPPlayerApplication_Invoke(IWMPPlayerApplication* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 4998    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 4999}
 5000/*** IWMPPlayerApplication methods ***/
 5001static inline HRESULT IWMPPlayerApplication_switchToPlayerApplication(IWMPPlayerApplication* This) {
 5002    return This->lpVtbl->switchToPlayerApplication(This);
 5003}
 5004static inline HRESULT IWMPPlayerApplication_switchToControl(IWMPPlayerApplication* This) {
 5005    return This->lpVtbl->switchToControl(This);
 5006}
 5007static inline HRESULT IWMPPlayerApplication_get_playerDocked(IWMPPlayerApplication* This,VARIANT_BOOL *pbPlayerDocked) {
 5008    return This->lpVtbl->get_playerDocked(This,pbPlayerDocked);
 5009}
 5010static inline HRESULT IWMPPlayerApplication_get_hasDisplay(IWMPPlayerApplication* This,VARIANT_BOOL *pbHasDisplay) {
 5011    return This->lpVtbl->get_hasDisplay(This,pbHasDisplay);
 5012}
 5013#endif
 5014#endif
 5015
 5016#endif
 5017
 5018
 5019#endif  /* __IWMPPlayerApplication_INTERFACE_DEFINED__ */
 5020
 5021/*****************************************************************************
 5022 * IWMPCore interface
 5023 */
 5024#ifndef __IWMPCore_INTERFACE_DEFINED__
 5025#define __IWMPCore_INTERFACE_DEFINED__
 5026
 5027DEFINE_GUID(IID_IWMPCore, 0xd84cca99, 0xcce2, 0x11d2, 0x9e,0xcc, 0x00,0x00,0xf8,0x08,0x59,0x81);
 5028#if defined(__cplusplus) && !defined(CINTERFACE)
 5029MIDL_INTERFACE("d84cca99-cce2-11d2-9ecc-0000f8085981")
 5030IWMPCore : public IDispatch
 5031{
 5032    virtual HRESULT STDMETHODCALLTYPE close(
 5033        ) = 0;
 5034
 5035    virtual HRESULT STDMETHODCALLTYPE get_URL(
 5036        BSTR *pbstrURL) = 0;
 5037
 5038    virtual HRESULT STDMETHODCALLTYPE put_URL(
 5039        BSTR pbstrURL) = 0;
 5040
 5041    virtual HRESULT STDMETHODCALLTYPE get_openState(
 5042        WMPOpenState *pwmpos) = 0;
 5043
 5044    virtual HRESULT STDMETHODCALLTYPE get_playState(
 5045        WMPPlayState *pwmpps) = 0;
 5046
 5047    virtual HRESULT STDMETHODCALLTYPE get_controls(
 5048        IWMPControls **ppControl) = 0;
 5049
 5050    virtual HRESULT STDMETHODCALLTYPE get_settings(
 5051        IWMPSettings **ppSettings) = 0;
 5052
 5053    virtual HRESULT STDMETHODCALLTYPE get_currentMedia(
 5054        IWMPMedia **ppMedia) = 0;
 5055
 5056    virtual HRESULT STDMETHODCALLTYPE put_currentMedia(
 5057        IWMPMedia *ppMedia) = 0;
 5058
 5059    virtual HRESULT STDMETHODCALLTYPE get_mediaCollection(
 5060        IWMPMediaCollection **ppMediaCollection) = 0;
 5061
 5062    virtual HRESULT STDMETHODCALLTYPE get_playlistCollection(
 5063        IWMPPlaylistCollection **ppPlaylistCollection) = 0;
 5064
 5065    virtual HRESULT STDMETHODCALLTYPE get_versionInfo(
 5066        BSTR *pbstrVersionInfo) = 0;
 5067
 5068    virtual HRESULT STDMETHODCALLTYPE launchURL(
 5069        BSTR bstrURL) = 0;
 5070
 5071    virtual HRESULT STDMETHODCALLTYPE get_network(
 5072        IWMPNetwork **ppQNI) = 0;
 5073
 5074    virtual HRESULT STDMETHODCALLTYPE get_currentPlaylist(
 5075        IWMPPlaylist **ppPL) = 0;
 5076
 5077    virtual HRESULT STDMETHODCALLTYPE put_currentPlaylist(
 5078        IWMPPlaylist *ppPL) = 0;
 5079
 5080    virtual HRESULT STDMETHODCALLTYPE get_cdromCollection(
 5081        IWMPCdromCollection **ppCdromCollection) = 0;
 5082
 5083    virtual HRESULT STDMETHODCALLTYPE get_closedCaption(
 5084        IWMPClosedCaption **ppClosedCaption) = 0;
 5085
 5086    virtual HRESULT STDMETHODCALLTYPE get_isOnline(
 5087        VARIANT_BOOL *pfOnline) = 0;
 5088
 5089    virtual HRESULT STDMETHODCALLTYPE get_Error(
 5090        IWMPError **ppError) = 0;
 5091
 5092    virtual HRESULT STDMETHODCALLTYPE get_status(
 5093        BSTR *pbstrStatus) = 0;
 5094
 5095};
 5096#ifdef __CRT_UUID_DECL
 5097__CRT_UUID_DECL(IWMPCore, 0xd84cca99, 0xcce2, 0x11d2, 0x9e,0xcc, 0x00,0x00,0xf8,0x08,0x59,0x81)
 5098#endif
 5099#else
 5100typedef struct IWMPCoreVtbl {
 5101    BEGIN_INTERFACE
 5102
 5103    /*** IUnknown methods ***/
 5104    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 5105        IWMPCore *This,
 5106        REFIID riid,
 5107        void **ppvObject);
 5108
 5109    ULONG (STDMETHODCALLTYPE *AddRef)(
 5110        IWMPCore *This);
 5111
 5112    ULONG (STDMETHODCALLTYPE *Release)(
 5113        IWMPCore *This);
 5114
 5115    /*** IDispatch methods ***/
 5116    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 5117        IWMPCore *This,
 5118        UINT *pctinfo);
 5119
 5120    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 5121        IWMPCore *This,
 5122        UINT iTInfo,
 5123        LCID lcid,
 5124        ITypeInfo **ppTInfo);
 5125
 5126    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 5127        IWMPCore *This,
 5128        REFIID riid,
 5129        LPOLESTR *rgszNames,
 5130        UINT cNames,
 5131        LCID lcid,
 5132        DISPID *rgDispId);
 5133
 5134    HRESULT (STDMETHODCALLTYPE *Invoke)(
 5135        IWMPCore *This,
 5136        DISPID dispIdMember,
 5137        REFIID riid,
 5138        LCID lcid,
 5139        WORD wFlags,
 5140        DISPPARAMS *pDispParams,
 5141        VARIANT *pVarResult,
 5142        EXCEPINFO *pExcepInfo,
 5143        UINT *puArgErr);
 5144
 5145    /*** IWMPCore methods ***/
 5146    HRESULT (STDMETHODCALLTYPE *close)(
 5147        IWMPCore *This);
 5148
 5149    HRESULT (STDMETHODCALLTYPE *get_URL)(
 5150        IWMPCore *This,
 5151        BSTR *pbstrURL);
 5152
 5153    HRESULT (STDMETHODCALLTYPE *put_URL)(
 5154        IWMPCore *This,
 5155        BSTR pbstrURL);
 5156
 5157    HRESULT (STDMETHODCALLTYPE *get_openState)(
 5158        IWMPCore *This,
 5159        WMPOpenState *pwmpos);
 5160
 5161    HRESULT (STDMETHODCALLTYPE *get_playState)(
 5162        IWMPCore *This,
 5163        WMPPlayState *pwmpps);
 5164
 5165    HRESULT (STDMETHODCALLTYPE *get_controls)(
 5166        IWMPCore *This,
 5167        IWMPControls **ppControl);
 5168
 5169    HRESULT (STDMETHODCALLTYPE *get_settings)(
 5170        IWMPCore *This,
 5171        IWMPSettings **ppSettings);
 5172
 5173    HRESULT (STDMETHODCALLTYPE *get_currentMedia)(
 5174        IWMPCore *This,
 5175        IWMPMedia **ppMedia);
 5176
 5177    HRESULT (STDMETHODCALLTYPE *put_currentMedia)(
 5178        IWMPCore *This,
 5179        IWMPMedia *ppMedia);
 5180
 5181    HRESULT (STDMETHODCALLTYPE *get_mediaCollection)(
 5182        IWMPCore *This,
 5183        IWMPMediaCollection **ppMediaCollection);
 5184
 5185    HRESULT (STDMETHODCALLTYPE *get_playlistCollection)(
 5186        IWMPCore *This,
 5187        IWMPPlaylistCollection **ppPlaylistCollection);
 5188
 5189    HRESULT (STDMETHODCALLTYPE *get_versionInfo)(
 5190        IWMPCore *This,
 5191        BSTR *pbstrVersionInfo);
 5192
 5193    HRESULT (STDMETHODCALLTYPE *launchURL)(
 5194        IWMPCore *This,
 5195        BSTR bstrURL);
 5196
 5197    HRESULT (STDMETHODCALLTYPE *get_network)(
 5198        IWMPCore *This,
 5199        IWMPNetwork **ppQNI);
 5200
 5201    HRESULT (STDMETHODCALLTYPE *get_currentPlaylist)(
 5202        IWMPCore *This,
 5203        IWMPPlaylist **ppPL);
 5204
 5205    HRESULT (STDMETHODCALLTYPE *put_currentPlaylist)(
 5206        IWMPCore *This,
 5207        IWMPPlaylist *ppPL);
 5208
 5209    HRESULT (STDMETHODCALLTYPE *get_cdromCollection)(
 5210        IWMPCore *This,
 5211        IWMPCdromCollection **ppCdromCollection);
 5212
 5213    HRESULT (STDMETHODCALLTYPE *get_closedCaption)(
 5214        IWMPCore *This,
 5215        IWMPClosedCaption **ppClosedCaption);
 5216
 5217    HRESULT (STDMETHODCALLTYPE *get_isOnline)(
 5218        IWMPCore *This,
 5219        VARIANT_BOOL *pfOnline);
 5220
 5221    HRESULT (STDMETHODCALLTYPE *get_Error)(
 5222        IWMPCore *This,
 5223        IWMPError **ppError);
 5224
 5225    HRESULT (STDMETHODCALLTYPE *get_status)(
 5226        IWMPCore *This,
 5227        BSTR *pbstrStatus);
 5228
 5229    END_INTERFACE
 5230} IWMPCoreVtbl;
 5231
 5232interface IWMPCore {
 5233    CONST_VTBL IWMPCoreVtbl* lpVtbl;
 5234};
 5235
 5236#ifdef COBJMACROS
 5237#ifndef WIDL_C_INLINE_WRAPPERS
 5238/*** IUnknown methods ***/
 5239#define IWMPCore_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 5240#define IWMPCore_AddRef(This) (This)->lpVtbl->AddRef(This)
 5241#define IWMPCore_Release(This) (This)->lpVtbl->Release(This)
 5242/*** IDispatch methods ***/
 5243#define IWMPCore_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 5244#define IWMPCore_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 5245#define IWMPCore_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 5246#define IWMPCore_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 5247/*** IWMPCore methods ***/
 5248#define IWMPCore_close(This) (This)->lpVtbl->close(This)
 5249#define IWMPCore_get_URL(This,pbstrURL) (This)->lpVtbl->get_URL(This,pbstrURL)
 5250#define IWMPCore_put_URL(This,pbstrURL) (This)->lpVtbl->put_URL(This,pbstrURL)
 5251#define IWMPCore_get_openState(This,pwmpos) (This)->lpVtbl->get_openState(This,pwmpos)
 5252#define IWMPCore_get_playState(This,pwmpps) (This)->lpVtbl->get_playState(This,pwmpps)
 5253#define IWMPCore_get_controls(This,ppControl) (This)->lpVtbl->get_controls(This,ppControl)
 5254#define IWMPCore_get_settings(This,ppSettings) (This)->lpVtbl->get_settings(This,ppSettings)
 5255#define IWMPCore_get_currentMedia(This,ppMedia) (This)->lpVtbl->get_currentMedia(This,ppMedia)
 5256#define IWMPCore_put_currentMedia(This,ppMedia) (This)->lpVtbl->put_currentMedia(This,ppMedia)
 5257#define IWMPCore_get_mediaCollection(This,ppMediaCollection) (This)->lpVtbl->get_mediaCollection(This,ppMediaCollection)
 5258#define IWMPCore_get_playlistCollection(This,ppPlaylistCollection) (This)->lpVtbl->get_playlistCollection(This,ppPlaylistCollection)
 5259#define IWMPCore_get_versionInfo(This,pbstrVersionInfo) (This)->lpVtbl->get_versionInfo(This,pbstrVersionInfo)
 5260#define IWMPCore_launchURL(This,bstrURL) (This)->lpVtbl->launchURL(This,bstrURL)
 5261#define IWMPCore_get_network(This,ppQNI) (This)->lpVtbl->get_network(This,ppQNI)
 5262#define IWMPCore_get_currentPlaylist(This,ppPL) (This)->lpVtbl->get_currentPlaylist(This,ppPL)
 5263#define IWMPCore_put_currentPlaylist(This,ppPL) (This)->lpVtbl->put_currentPlaylist(This,ppPL)
 5264#define IWMPCore_get_cdromCollection(This,ppCdromCollection) (This)->lpVtbl->get_cdromCollection(This,ppCdromCollection)
 5265#define IWMPCore_get_closedCaption(This,ppClosedCaption) (This)->lpVtbl->get_closedCaption(This,ppClosedCaption)
 5266#define IWMPCore_get_isOnline(This,pfOnline) (This)->lpVtbl->get_isOnline(This,pfOnline)
 5267#define IWMPCore_get_Error(This,ppError) (This)->lpVtbl->get_Error(This,ppError)
 5268#define IWMPCore_get_status(This,pbstrStatus) (This)->lpVtbl->get_status(This,pbstrStatus)
 5269#else
 5270/*** IUnknown methods ***/
 5271static inline HRESULT IWMPCore_QueryInterface(IWMPCore* This,REFIID riid,void **ppvObject) {
 5272    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 5273}
 5274static inline ULONG IWMPCore_AddRef(IWMPCore* This) {
 5275    return This->lpVtbl->AddRef(This);
 5276}
 5277static inline ULONG IWMPCore_Release(IWMPCore* This) {
 5278    return This->lpVtbl->Release(This);
 5279}
 5280/*** IDispatch methods ***/
 5281static inline HRESULT IWMPCore_GetTypeInfoCount(IWMPCore* This,UINT *pctinfo) {
 5282    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 5283}
 5284static inline HRESULT IWMPCore_GetTypeInfo(IWMPCore* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 5285    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 5286}
 5287static inline HRESULT IWMPCore_GetIDsOfNames(IWMPCore* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 5288    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 5289}
 5290static inline HRESULT IWMPCore_Invoke(IWMPCore* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 5291    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 5292}
 5293/*** IWMPCore methods ***/
 5294static inline HRESULT IWMPCore_close(IWMPCore* This) {
 5295    return This->lpVtbl->close(This);
 5296}
 5297static inline HRESULT IWMPCore_get_URL(IWMPCore* This,BSTR *pbstrURL) {
 5298    return This->lpVtbl->get_URL(This,pbstrURL);
 5299}
 5300static inline HRESULT IWMPCore_put_URL(IWMPCore* This,BSTR pbstrURL) {
 5301    return This->lpVtbl->put_URL(This,pbstrURL);
 5302}
 5303static inline HRESULT IWMPCore_get_openState(IWMPCore* This,WMPOpenState *pwmpos) {
 5304    return This->lpVtbl->get_openState(This,pwmpos);
 5305}
 5306static inline HRESULT IWMPCore_get_playState(IWMPCore* This,WMPPlayState *pwmpps) {
 5307    return This->lpVtbl->get_playState(This,pwmpps);
 5308}
 5309static inline HRESULT IWMPCore_get_controls(IWMPCore* This,IWMPControls **ppControl) {
 5310    return This->lpVtbl->get_controls(This,ppControl);
 5311}
 5312static inline HRESULT IWMPCore_get_settings(IWMPCore* This,IWMPSettings **ppSettings) {
 5313    return This->lpVtbl->get_settings(This,ppSettings);
 5314}
 5315static inline HRESULT IWMPCore_get_currentMedia(IWMPCore* This,IWMPMedia **ppMedia) {
 5316    return This->lpVtbl->get_currentMedia(This,ppMedia);
 5317}
 5318static inline HRESULT IWMPCore_put_currentMedia(IWMPCore* This,IWMPMedia *ppMedia) {
 5319    return This->lpVtbl->put_currentMedia(This,ppMedia);
 5320}
 5321static inline HRESULT IWMPCore_get_mediaCollection(IWMPCore* This,IWMPMediaCollection **ppMediaCollection) {
 5322    return This->lpVtbl->get_mediaCollection(This,ppMediaCollection);
 5323}
 5324static inline HRESULT IWMPCore_get_playlistCollection(IWMPCore* This,IWMPPlaylistCollection **ppPlaylistCollection) {
 5325    return This->lpVtbl->get_playlistCollection(This,ppPlaylistCollection);
 5326}
 5327static inline HRESULT IWMPCore_get_versionInfo(IWMPCore* This,BSTR *pbstrVersionInfo) {
 5328    return This->lpVtbl->get_versionInfo(This,pbstrVersionInfo);
 5329}
 5330static inline HRESULT IWMPCore_launchURL(IWMPCore* This,BSTR bstrURL) {
 5331    return This->lpVtbl->launchURL(This,bstrURL);
 5332}
 5333static inline HRESULT IWMPCore_get_network(IWMPCore* This,IWMPNetwork **ppQNI) {
 5334    return This->lpVtbl->get_network(This,ppQNI);
 5335}
 5336static inline HRESULT IWMPCore_get_currentPlaylist(IWMPCore* This,IWMPPlaylist **ppPL) {
 5337    return This->lpVtbl->get_currentPlaylist(This,ppPL);
 5338}
 5339static inline HRESULT IWMPCore_put_currentPlaylist(IWMPCore* This,IWMPPlaylist *ppPL) {
 5340    return This->lpVtbl->put_currentPlaylist(This,ppPL);
 5341}
 5342static inline HRESULT IWMPCore_get_cdromCollection(IWMPCore* This,IWMPCdromCollection **ppCdromCollection) {
 5343    return This->lpVtbl->get_cdromCollection(This,ppCdromCollection);
 5344}
 5345static inline HRESULT IWMPCore_get_closedCaption(IWMPCore* This,IWMPClosedCaption **ppClosedCaption) {
 5346    return This->lpVtbl->get_closedCaption(This,ppClosedCaption);
 5347}
 5348static inline HRESULT IWMPCore_get_isOnline(IWMPCore* This,VARIANT_BOOL *pfOnline) {
 5349    return This->lpVtbl->get_isOnline(This,pfOnline);
 5350}
 5351static inline HRESULT IWMPCore_get_Error(IWMPCore* This,IWMPError **ppError) {
 5352    return This->lpVtbl->get_Error(This,ppError);
 5353}
 5354static inline HRESULT IWMPCore_get_status(IWMPCore* This,BSTR *pbstrStatus) {
 5355    return This->lpVtbl->get_status(This,pbstrStatus);
 5356}
 5357#endif
 5358#endif
 5359
 5360#endif
 5361
 5362
 5363#endif  /* __IWMPCore_INTERFACE_DEFINED__ */
 5364
 5365/*****************************************************************************
 5366 * IWMPCore2 interface
 5367 */
 5368#ifndef __IWMPCore2_INTERFACE_DEFINED__
 5369#define __IWMPCore2_INTERFACE_DEFINED__
 5370
 5371DEFINE_GUID(IID_IWMPCore2, 0xbc17e5b7, 0x7561, 0x4c18, 0xbb,0x90, 0x17,0xd4,0x85,0x77,0x56,0x59);
 5372#if defined(__cplusplus) && !defined(CINTERFACE)
 5373MIDL_INTERFACE("bc17e5b7-7561-4c18-bb90-17d485775659")
 5374IWMPCore2 : public IWMPCore
 5375{
 5376    virtual HRESULT STDMETHODCALLTYPE get_dvd(
 5377        IWMPDVD **ppDVD) = 0;
 5378
 5379};
 5380#ifdef __CRT_UUID_DECL
 5381__CRT_UUID_DECL(IWMPCore2, 0xbc17e5b7, 0x7561, 0x4c18, 0xbb,0x90, 0x17,0xd4,0x85,0x77,0x56,0x59)
 5382#endif
 5383#else
 5384typedef struct IWMPCore2Vtbl {
 5385    BEGIN_INTERFACE
 5386
 5387    /*** IUnknown methods ***/
 5388    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 5389        IWMPCore2 *This,
 5390        REFIID riid,
 5391        void **ppvObject);
 5392
 5393    ULONG (STDMETHODCALLTYPE *AddRef)(
 5394        IWMPCore2 *This);
 5395
 5396    ULONG (STDMETHODCALLTYPE *Release)(
 5397        IWMPCore2 *This);
 5398
 5399    /*** IDispatch methods ***/
 5400    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 5401        IWMPCore2 *This,
 5402        UINT *pctinfo);
 5403
 5404    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 5405        IWMPCore2 *This,
 5406        UINT iTInfo,
 5407        LCID lcid,
 5408        ITypeInfo **ppTInfo);
 5409
 5410    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 5411        IWMPCore2 *This,
 5412        REFIID riid,
 5413        LPOLESTR *rgszNames,
 5414        UINT cNames,
 5415        LCID lcid,
 5416        DISPID *rgDispId);
 5417
 5418    HRESULT (STDMETHODCALLTYPE *Invoke)(
 5419        IWMPCore2 *This,
 5420        DISPID dispIdMember,
 5421        REFIID riid,
 5422        LCID lcid,
 5423        WORD wFlags,
 5424        DISPPARAMS *pDispParams,
 5425        VARIANT *pVarResult,
 5426        EXCEPINFO *pExcepInfo,
 5427        UINT *puArgErr);
 5428
 5429    /*** IWMPCore methods ***/
 5430    HRESULT (STDMETHODCALLTYPE *close)(
 5431        IWMPCore2 *This);
 5432
 5433    HRESULT (STDMETHODCALLTYPE *get_URL)(
 5434        IWMPCore2 *This,
 5435        BSTR *pbstrURL);
 5436
 5437    HRESULT (STDMETHODCALLTYPE *put_URL)(
 5438        IWMPCore2 *This,
 5439        BSTR pbstrURL);
 5440
 5441    HRESULT (STDMETHODCALLTYPE *get_openState)(
 5442        IWMPCore2 *This,
 5443        WMPOpenState *pwmpos);
 5444
 5445    HRESULT (STDMETHODCALLTYPE *get_playState)(
 5446        IWMPCore2 *This,
 5447        WMPPlayState *pwmpps);
 5448
 5449    HRESULT (STDMETHODCALLTYPE *get_controls)(
 5450        IWMPCore2 *This,
 5451        IWMPControls **ppControl);
 5452
 5453    HRESULT (STDMETHODCALLTYPE *get_settings)(
 5454        IWMPCore2 *This,
 5455        IWMPSettings **ppSettings);
 5456
 5457    HRESULT (STDMETHODCALLTYPE *get_currentMedia)(
 5458        IWMPCore2 *This,
 5459        IWMPMedia **ppMedia);
 5460
 5461    HRESULT (STDMETHODCALLTYPE *put_currentMedia)(
 5462        IWMPCore2 *This,
 5463        IWMPMedia *ppMedia);
 5464
 5465    HRESULT (STDMETHODCALLTYPE *get_mediaCollection)(
 5466        IWMPCore2 *This,
 5467        IWMPMediaCollection **ppMediaCollection);
 5468
 5469    HRESULT (STDMETHODCALLTYPE *get_playlistCollection)(
 5470        IWMPCore2 *This,
 5471        IWMPPlaylistCollection **ppPlaylistCollection);
 5472
 5473    HRESULT (STDMETHODCALLTYPE *get_versionInfo)(
 5474        IWMPCore2 *This,
 5475        BSTR *pbstrVersionInfo);
 5476
 5477    HRESULT (STDMETHODCALLTYPE *launchURL)(
 5478        IWMPCore2 *This,
 5479        BSTR bstrURL);
 5480
 5481    HRESULT (STDMETHODCALLTYPE *get_network)(
 5482        IWMPCore2 *This,
 5483        IWMPNetwork **ppQNI);
 5484
 5485    HRESULT (STDMETHODCALLTYPE *get_currentPlaylist)(
 5486        IWMPCore2 *This,
 5487        IWMPPlaylist **ppPL);
 5488
 5489    HRESULT (STDMETHODCALLTYPE *put_currentPlaylist)(
 5490        IWMPCore2 *This,
 5491        IWMPPlaylist *ppPL);
 5492
 5493    HRESULT (STDMETHODCALLTYPE *get_cdromCollection)(
 5494        IWMPCore2 *This,
 5495        IWMPCdromCollection **ppCdromCollection);
 5496
 5497    HRESULT (STDMETHODCALLTYPE *get_closedCaption)(
 5498        IWMPCore2 *This,
 5499        IWMPClosedCaption **ppClosedCaption);
 5500
 5501    HRESULT (STDMETHODCALLTYPE *get_isOnline)(
 5502        IWMPCore2 *This,
 5503        VARIANT_BOOL *pfOnline);
 5504
 5505    HRESULT (STDMETHODCALLTYPE *get_Error)(
 5506        IWMPCore2 *This,
 5507        IWMPError **ppError);
 5508
 5509    HRESULT (STDMETHODCALLTYPE *get_status)(
 5510        IWMPCore2 *This,
 5511        BSTR *pbstrStatus);
 5512
 5513    /*** IWMPCore2 methods ***/
 5514    HRESULT (STDMETHODCALLTYPE *get_dvd)(
 5515        IWMPCore2 *This,
 5516        IWMPDVD **ppDVD);
 5517
 5518    END_INTERFACE
 5519} IWMPCore2Vtbl;
 5520
 5521interface IWMPCore2 {
 5522    CONST_VTBL IWMPCore2Vtbl* lpVtbl;
 5523};
 5524
 5525#ifdef COBJMACROS
 5526#ifndef WIDL_C_INLINE_WRAPPERS
 5527/*** IUnknown methods ***/
 5528#define IWMPCore2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 5529#define IWMPCore2_AddRef(This) (This)->lpVtbl->AddRef(This)
 5530#define IWMPCore2_Release(This) (This)->lpVtbl->Release(This)
 5531/*** IDispatch methods ***/
 5532#define IWMPCore2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 5533#define IWMPCore2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 5534#define IWMPCore2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 5535#define IWMPCore2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 5536/*** IWMPCore methods ***/
 5537#define IWMPCore2_close(This) (This)->lpVtbl->close(This)
 5538#define IWMPCore2_get_URL(This,pbstrURL) (This)->lpVtbl->get_URL(This,pbstrURL)
 5539#define IWMPCore2_put_URL(This,pbstrURL) (This)->lpVtbl->put_URL(This,pbstrURL)
 5540#define IWMPCore2_get_openState(This,pwmpos) (This)->lpVtbl->get_openState(This,pwmpos)
 5541#define IWMPCore2_get_playState(This,pwmpps) (This)->lpVtbl->get_playState(This,pwmpps)
 5542#define IWMPCore2_get_controls(This,ppControl) (This)->lpVtbl->get_controls(This,ppControl)
 5543#define IWMPCore2_get_settings(This,ppSettings) (This)->lpVtbl->get_settings(This,ppSettings)
 5544#define IWMPCore2_get_currentMedia(This,ppMedia) (This)->lpVtbl->get_currentMedia(This,ppMedia)
 5545#define IWMPCore2_put_currentMedia(This,ppMedia) (This)->lpVtbl->put_currentMedia(This,ppMedia)
 5546#define IWMPCore2_get_mediaCollection(This,ppMediaCollection) (This)->lpVtbl->get_mediaCollection(This,ppMediaCollection)
 5547#define IWMPCore2_get_playlistCollection(This,ppPlaylistCollection) (This)->lpVtbl->get_playlistCollection(This,ppPlaylistCollection)
 5548#define IWMPCore2_get_versionInfo(This,pbstrVersionInfo) (This)->lpVtbl->get_versionInfo(This,pbstrVersionInfo)
 5549#define IWMPCore2_launchURL(This,bstrURL) (This)->lpVtbl->launchURL(This,bstrURL)
 5550#define IWMPCore2_get_network(This,ppQNI) (This)->lpVtbl->get_network(This,ppQNI)
 5551#define IWMPCore2_get_currentPlaylist(This,ppPL) (This)->lpVtbl->get_currentPlaylist(This,ppPL)
 5552#define IWMPCore2_put_currentPlaylist(This,ppPL) (This)->lpVtbl->put_currentPlaylist(This,ppPL)
 5553#define IWMPCore2_get_cdromCollection(This,ppCdromCollection) (This)->lpVtbl->get_cdromCollection(This,ppCdromCollection)
 5554#define IWMPCore2_get_closedCaption(This,ppClosedCaption) (This)->lpVtbl->get_closedCaption(This,ppClosedCaption)
 5555#define IWMPCore2_get_isOnline(This,pfOnline) (This)->lpVtbl->get_isOnline(This,pfOnline)
 5556#define IWMPCore2_get_Error(This,ppError) (This)->lpVtbl->get_Error(This,ppError)
 5557#define IWMPCore2_get_status(This,pbstrStatus) (This)->lpVtbl->get_status(This,pbstrStatus)
 5558/*** IWMPCore2 methods ***/
 5559#define IWMPCore2_get_dvd(This,ppDVD) (This)->lpVtbl->get_dvd(This,ppDVD)
 5560#else
 5561/*** IUnknown methods ***/
 5562static inline HRESULT IWMPCore2_QueryInterface(IWMPCore2* This,REFIID riid,void **ppvObject) {
 5563    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 5564}
 5565static inline ULONG IWMPCore2_AddRef(IWMPCore2* This) {
 5566    return This->lpVtbl->AddRef(This);
 5567}
 5568static inline ULONG IWMPCore2_Release(IWMPCore2* This) {
 5569    return This->lpVtbl->Release(This);
 5570}
 5571/*** IDispatch methods ***/
 5572static inline HRESULT IWMPCore2_GetTypeInfoCount(IWMPCore2* This,UINT *pctinfo) {
 5573    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 5574}
 5575static inline HRESULT IWMPCore2_GetTypeInfo(IWMPCore2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 5576    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 5577}
 5578static inline HRESULT IWMPCore2_GetIDsOfNames(IWMPCore2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 5579    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 5580}
 5581static inline HRESULT IWMPCore2_Invoke(IWMPCore2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 5582    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 5583}
 5584/*** IWMPCore methods ***/
 5585static inline HRESULT IWMPCore2_close(IWMPCore2* This) {
 5586    return This->lpVtbl->close(This);
 5587}
 5588static inline HRESULT IWMPCore2_get_URL(IWMPCore2* This,BSTR *pbstrURL) {
 5589    return This->lpVtbl->get_URL(This,pbstrURL);
 5590}
 5591static inline HRESULT IWMPCore2_put_URL(IWMPCore2* This,BSTR pbstrURL) {
 5592    return This->lpVtbl->put_URL(This,pbstrURL);
 5593}
 5594static inline HRESULT IWMPCore2_get_openState(IWMPCore2* This,WMPOpenState *pwmpos) {
 5595    return This->lpVtbl->get_openState(This,pwmpos);
 5596}
 5597static inline HRESULT IWMPCore2_get_playState(IWMPCore2* This,WMPPlayState *pwmpps) {
 5598    return This->lpVtbl->get_playState(This,pwmpps);
 5599}
 5600static inline HRESULT IWMPCore2_get_controls(IWMPCore2* This,IWMPControls **ppControl) {
 5601    return This->lpVtbl->get_controls(This,ppControl);
 5602}
 5603static inline HRESULT IWMPCore2_get_settings(IWMPCore2* This,IWMPSettings **ppSettings) {
 5604    return This->lpVtbl->get_settings(This,ppSettings);
 5605}
 5606static inline HRESULT IWMPCore2_get_currentMedia(IWMPCore2* This,IWMPMedia **ppMedia) {
 5607    return This->lpVtbl->get_currentMedia(This,ppMedia);
 5608}
 5609static inline HRESULT IWMPCore2_put_currentMedia(IWMPCore2* This,IWMPMedia *ppMedia) {
 5610    return This->lpVtbl->put_currentMedia(This,ppMedia);
 5611}
 5612static inline HRESULT IWMPCore2_get_mediaCollection(IWMPCore2* This,IWMPMediaCollection **ppMediaCollection) {
 5613    return This->lpVtbl->get_mediaCollection(This,ppMediaCollection);
 5614}
 5615static inline HRESULT IWMPCore2_get_playlistCollection(IWMPCore2* This,IWMPPlaylistCollection **ppPlaylistCollection) {
 5616    return This->lpVtbl->get_playlistCollection(This,ppPlaylistCollection);
 5617}
 5618static inline HRESULT IWMPCore2_get_versionInfo(IWMPCore2* This,BSTR *pbstrVersionInfo) {
 5619    return This->lpVtbl->get_versionInfo(This,pbstrVersionInfo);
 5620}
 5621static inline HRESULT IWMPCore2_launchURL(IWMPCore2* This,BSTR bstrURL) {
 5622    return This->lpVtbl->launchURL(This,bstrURL);
 5623}
 5624static inline HRESULT IWMPCore2_get_network(IWMPCore2* This,IWMPNetwork **ppQNI) {
 5625    return This->lpVtbl->get_network(This,ppQNI);
 5626}
 5627static inline HRESULT IWMPCore2_get_currentPlaylist(IWMPCore2* This,IWMPPlaylist **ppPL) {
 5628    return This->lpVtbl->get_currentPlaylist(This,ppPL);
 5629}
 5630static inline HRESULT IWMPCore2_put_currentPlaylist(IWMPCore2* This,IWMPPlaylist *ppPL) {
 5631    return This->lpVtbl->put_currentPlaylist(This,ppPL);
 5632}
 5633static inline HRESULT IWMPCore2_get_cdromCollection(IWMPCore2* This,IWMPCdromCollection **ppCdromCollection) {
 5634    return This->lpVtbl->get_cdromCollection(This,ppCdromCollection);
 5635}
 5636static inline HRESULT IWMPCore2_get_closedCaption(IWMPCore2* This,IWMPClosedCaption **ppClosedCaption) {
 5637    return This->lpVtbl->get_closedCaption(This,ppClosedCaption);
 5638}
 5639static inline HRESULT IWMPCore2_get_isOnline(IWMPCore2* This,VARIANT_BOOL *pfOnline) {
 5640    return This->lpVtbl->get_isOnline(This,pfOnline);
 5641}
 5642static inline HRESULT IWMPCore2_get_Error(IWMPCore2* This,IWMPError **ppError) {
 5643    return This->lpVtbl->get_Error(This,ppError);
 5644}
 5645static inline HRESULT IWMPCore2_get_status(IWMPCore2* This,BSTR *pbstrStatus) {
 5646    return This->lpVtbl->get_status(This,pbstrStatus);
 5647}
 5648/*** IWMPCore2 methods ***/
 5649static inline HRESULT IWMPCore2_get_dvd(IWMPCore2* This,IWMPDVD **ppDVD) {
 5650    return This->lpVtbl->get_dvd(This,ppDVD);
 5651}
 5652#endif
 5653#endif
 5654
 5655#endif
 5656
 5657
 5658#endif  /* __IWMPCore2_INTERFACE_DEFINED__ */
 5659
 5660/*****************************************************************************
 5661 * IWMPCore3 interface
 5662 */
 5663#ifndef __IWMPCore3_INTERFACE_DEFINED__
 5664#define __IWMPCore3_INTERFACE_DEFINED__
 5665
 5666DEFINE_GUID(IID_IWMPCore3, 0x7587c667, 0x628f, 0x499f, 0x88,0xe7, 0x6a,0x6f,0x4e,0x88,0x84,0x64);
 5667#if defined(__cplusplus) && !defined(CINTERFACE)
 5668MIDL_INTERFACE("7587c667-628f-499f-88e7-6a6f4e888464")
 5669IWMPCore3 : public IWMPCore2
 5670{
 5671    virtual HRESULT STDMETHODCALLTYPE newPlaylist(
 5672        BSTR bstrName,
 5673        BSTR bstrURL,
 5674        IWMPPlaylist **ppPlaylist) = 0;
 5675
 5676    virtual HRESULT STDMETHODCALLTYPE newMedia(
 5677        BSTR bstrURL,
 5678        IWMPMedia **ppMedia) = 0;
 5679
 5680};
 5681#ifdef __CRT_UUID_DECL
 5682__CRT_UUID_DECL(IWMPCore3, 0x7587c667, 0x628f, 0x499f, 0x88,0xe7, 0x6a,0x6f,0x4e,0x88,0x84,0x64)
 5683#endif
 5684#else
 5685typedef struct IWMPCore3Vtbl {
 5686    BEGIN_INTERFACE
 5687
 5688    /*** IUnknown methods ***/
 5689    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 5690        IWMPCore3 *This,
 5691        REFIID riid,
 5692        void **ppvObject);
 5693
 5694    ULONG (STDMETHODCALLTYPE *AddRef)(
 5695        IWMPCore3 *This);
 5696
 5697    ULONG (STDMETHODCALLTYPE *Release)(
 5698        IWMPCore3 *This);
 5699
 5700    /*** IDispatch methods ***/
 5701    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 5702        IWMPCore3 *This,
 5703        UINT *pctinfo);
 5704
 5705    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 5706        IWMPCore3 *This,
 5707        UINT iTInfo,
 5708        LCID lcid,
 5709        ITypeInfo **ppTInfo);
 5710
 5711    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 5712        IWMPCore3 *This,
 5713        REFIID riid,
 5714        LPOLESTR *rgszNames,
 5715        UINT cNames,
 5716        LCID lcid,
 5717        DISPID *rgDispId);
 5718
 5719    HRESULT (STDMETHODCALLTYPE *Invoke)(
 5720        IWMPCore3 *This,
 5721        DISPID dispIdMember,
 5722        REFIID riid,
 5723        LCID lcid,
 5724        WORD wFlags,
 5725        DISPPARAMS *pDispParams,
 5726        VARIANT *pVarResult,
 5727        EXCEPINFO *pExcepInfo,
 5728        UINT *puArgErr);
 5729
 5730    /*** IWMPCore methods ***/
 5731    HRESULT (STDMETHODCALLTYPE *close)(
 5732        IWMPCore3 *This);
 5733
 5734    HRESULT (STDMETHODCALLTYPE *get_URL)(
 5735        IWMPCore3 *This,
 5736        BSTR *pbstrURL);
 5737
 5738    HRESULT (STDMETHODCALLTYPE *put_URL)(
 5739        IWMPCore3 *This,
 5740        BSTR pbstrURL);
 5741
 5742    HRESULT (STDMETHODCALLTYPE *get_openState)(
 5743        IWMPCore3 *This,
 5744        WMPOpenState *pwmpos);
 5745
 5746    HRESULT (STDMETHODCALLTYPE *get_playState)(
 5747        IWMPCore3 *This,
 5748        WMPPlayState *pwmpps);
 5749
 5750    HRESULT (STDMETHODCALLTYPE *get_controls)(
 5751        IWMPCore3 *This,
 5752        IWMPControls **ppControl);
 5753
 5754    HRESULT (STDMETHODCALLTYPE *get_settings)(
 5755        IWMPCore3 *This,
 5756        IWMPSettings **ppSettings);
 5757
 5758    HRESULT (STDMETHODCALLTYPE *get_currentMedia)(
 5759        IWMPCore3 *This,
 5760        IWMPMedia **ppMedia);
 5761
 5762    HRESULT (STDMETHODCALLTYPE *put_currentMedia)(
 5763        IWMPCore3 *This,
 5764        IWMPMedia *ppMedia);
 5765
 5766    HRESULT (STDMETHODCALLTYPE *get_mediaCollection)(
 5767        IWMPCore3 *This,
 5768        IWMPMediaCollection **ppMediaCollection);
 5769
 5770    HRESULT (STDMETHODCALLTYPE *get_playlistCollection)(
 5771        IWMPCore3 *This,
 5772        IWMPPlaylistCollection **ppPlaylistCollection);
 5773
 5774    HRESULT (STDMETHODCALLTYPE *get_versionInfo)(
 5775        IWMPCore3 *This,
 5776        BSTR *pbstrVersionInfo);
 5777
 5778    HRESULT (STDMETHODCALLTYPE *launchURL)(
 5779        IWMPCore3 *This,
 5780        BSTR bstrURL);
 5781
 5782    HRESULT (STDMETHODCALLTYPE *get_network)(
 5783        IWMPCore3 *This,
 5784        IWMPNetwork **ppQNI);
 5785
 5786    HRESULT (STDMETHODCALLTYPE *get_currentPlaylist)(
 5787        IWMPCore3 *This,
 5788        IWMPPlaylist **ppPL);
 5789
 5790    HRESULT (STDMETHODCALLTYPE *put_currentPlaylist)(
 5791        IWMPCore3 *This,
 5792        IWMPPlaylist *ppPL);
 5793
 5794    HRESULT (STDMETHODCALLTYPE *get_cdromCollection)(
 5795        IWMPCore3 *This,
 5796        IWMPCdromCollection **ppCdromCollection);
 5797
 5798    HRESULT (STDMETHODCALLTYPE *get_closedCaption)(
 5799        IWMPCore3 *This,
 5800        IWMPClosedCaption **ppClosedCaption);
 5801
 5802    HRESULT (STDMETHODCALLTYPE *get_isOnline)(
 5803        IWMPCore3 *This,
 5804        VARIANT_BOOL *pfOnline);
 5805
 5806    HRESULT (STDMETHODCALLTYPE *get_Error)(
 5807        IWMPCore3 *This,
 5808        IWMPError **ppError);
 5809
 5810    HRESULT (STDMETHODCALLTYPE *get_status)(
 5811        IWMPCore3 *This,
 5812        BSTR *pbstrStatus);
 5813
 5814    /*** IWMPCore2 methods ***/
 5815    HRESULT (STDMETHODCALLTYPE *get_dvd)(
 5816        IWMPCore3 *This,
 5817        IWMPDVD **ppDVD);
 5818
 5819    /*** IWMPCore3 methods ***/
 5820    HRESULT (STDMETHODCALLTYPE *newPlaylist)(
 5821        IWMPCore3 *This,
 5822        BSTR bstrName,
 5823        BSTR bstrURL,
 5824        IWMPPlaylist **ppPlaylist);
 5825
 5826    HRESULT (STDMETHODCALLTYPE *newMedia)(
 5827        IWMPCore3 *This,
 5828        BSTR bstrURL,
 5829        IWMPMedia **ppMedia);
 5830
 5831    END_INTERFACE
 5832} IWMPCore3Vtbl;
 5833
 5834interface IWMPCore3 {
 5835    CONST_VTBL IWMPCore3Vtbl* lpVtbl;
 5836};
 5837
 5838#ifdef COBJMACROS
 5839#ifndef WIDL_C_INLINE_WRAPPERS
 5840/*** IUnknown methods ***/
 5841#define IWMPCore3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 5842#define IWMPCore3_AddRef(This) (This)->lpVtbl->AddRef(This)
 5843#define IWMPCore3_Release(This) (This)->lpVtbl->Release(This)
 5844/*** IDispatch methods ***/
 5845#define IWMPCore3_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 5846#define IWMPCore3_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 5847#define IWMPCore3_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 5848#define IWMPCore3_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 5849/*** IWMPCore methods ***/
 5850#define IWMPCore3_close(This) (This)->lpVtbl->close(This)
 5851#define IWMPCore3_get_URL(This,pbstrURL) (This)->lpVtbl->get_URL(This,pbstrURL)
 5852#define IWMPCore3_put_URL(This,pbstrURL) (This)->lpVtbl->put_URL(This,pbstrURL)
 5853#define IWMPCore3_get_openState(This,pwmpos) (This)->lpVtbl->get_openState(This,pwmpos)
 5854#define IWMPCore3_get_playState(This,pwmpps) (This)->lpVtbl->get_playState(This,pwmpps)
 5855#define IWMPCore3_get_controls(This,ppControl) (This)->lpVtbl->get_controls(This,ppControl)
 5856#define IWMPCore3_get_settings(This,ppSettings) (This)->lpVtbl->get_settings(This,ppSettings)
 5857#define IWMPCore3_get_currentMedia(This,ppMedia) (This)->lpVtbl->get_currentMedia(This,ppMedia)
 5858#define IWMPCore3_put_currentMedia(This,ppMedia) (This)->lpVtbl->put_currentMedia(This,ppMedia)
 5859#define IWMPCore3_get_mediaCollection(This,ppMediaCollection) (This)->lpVtbl->get_mediaCollection(This,ppMediaCollection)
 5860#define IWMPCore3_get_playlistCollection(This,ppPlaylistCollection) (This)->lpVtbl->get_playlistCollection(This,ppPlaylistCollection)
 5861#define IWMPCore3_get_versionInfo(This,pbstrVersionInfo) (This)->lpVtbl->get_versionInfo(This,pbstrVersionInfo)
 5862#define IWMPCore3_launchURL(This,bstrURL) (This)->lpVtbl->launchURL(This,bstrURL)
 5863#define IWMPCore3_get_network(This,ppQNI) (This)->lpVtbl->get_network(This,ppQNI)
 5864#define IWMPCore3_get_currentPlaylist(This,ppPL) (This)->lpVtbl->get_currentPlaylist(This,ppPL)
 5865#define IWMPCore3_put_currentPlaylist(This,ppPL) (This)->lpVtbl->put_currentPlaylist(This,ppPL)
 5866#define IWMPCore3_get_cdromCollection(This,ppCdromCollection) (This)->lpVtbl->get_cdromCollection(This,ppCdromCollection)
 5867#define IWMPCore3_get_closedCaption(This,ppClosedCaption) (This)->lpVtbl->get_closedCaption(This,ppClosedCaption)
 5868#define IWMPCore3_get_isOnline(This,pfOnline) (This)->lpVtbl->get_isOnline(This,pfOnline)
 5869#define IWMPCore3_get_Error(This,ppError) (This)->lpVtbl->get_Error(This,ppError)
 5870#define IWMPCore3_get_status(This,pbstrStatus) (This)->lpVtbl->get_status(This,pbstrStatus)
 5871/*** IWMPCore2 methods ***/
 5872#define IWMPCore3_get_dvd(This,ppDVD) (This)->lpVtbl->get_dvd(This,ppDVD)
 5873/*** IWMPCore3 methods ***/
 5874#define IWMPCore3_newPlaylist(This,bstrName,bstrURL,ppPlaylist) (This)->lpVtbl->newPlaylist(This,bstrName,bstrURL,ppPlaylist)
 5875#define IWMPCore3_newMedia(This,bstrURL,ppMedia) (This)->lpVtbl->newMedia(This,bstrURL,ppMedia)
 5876#else
 5877/*** IUnknown methods ***/
 5878static inline HRESULT IWMPCore3_QueryInterface(IWMPCore3* This,REFIID riid,void **ppvObject) {
 5879    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 5880}
 5881static inline ULONG IWMPCore3_AddRef(IWMPCore3* This) {
 5882    return This->lpVtbl->AddRef(This);
 5883}
 5884static inline ULONG IWMPCore3_Release(IWMPCore3* This) {
 5885    return This->lpVtbl->Release(This);
 5886}
 5887/*** IDispatch methods ***/
 5888static inline HRESULT IWMPCore3_GetTypeInfoCount(IWMPCore3* This,UINT *pctinfo) {
 5889    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 5890}
 5891static inline HRESULT IWMPCore3_GetTypeInfo(IWMPCore3* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 5892    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 5893}
 5894static inline HRESULT IWMPCore3_GetIDsOfNames(IWMPCore3* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 5895    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 5896}
 5897static inline HRESULT IWMPCore3_Invoke(IWMPCore3* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 5898    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 5899}
 5900/*** IWMPCore methods ***/
 5901static inline HRESULT IWMPCore3_close(IWMPCore3* This) {
 5902    return This->lpVtbl->close(This);
 5903}
 5904static inline HRESULT IWMPCore3_get_URL(IWMPCore3* This,BSTR *pbstrURL) {
 5905    return This->lpVtbl->get_URL(This,pbstrURL);
 5906}
 5907static inline HRESULT IWMPCore3_put_URL(IWMPCore3* This,BSTR pbstrURL) {
 5908    return This->lpVtbl->put_URL(This,pbstrURL);
 5909}
 5910static inline HRESULT IWMPCore3_get_openState(IWMPCore3* This,WMPOpenState *pwmpos) {
 5911    return This->lpVtbl->get_openState(This,pwmpos);
 5912}
 5913static inline HRESULT IWMPCore3_get_playState(IWMPCore3* This,WMPPlayState *pwmpps) {
 5914    return This->lpVtbl->get_playState(This,pwmpps);
 5915}
 5916static inline HRESULT IWMPCore3_get_controls(IWMPCore3* This,IWMPControls **ppControl) {
 5917    return This->lpVtbl->get_controls(This,ppControl);
 5918}
 5919static inline HRESULT IWMPCore3_get_settings(IWMPCore3* This,IWMPSettings **ppSettings) {
 5920    return This->lpVtbl->get_settings(This,ppSettings);
 5921}
 5922static inline HRESULT IWMPCore3_get_currentMedia(IWMPCore3* This,IWMPMedia **ppMedia) {
 5923    return This->lpVtbl->get_currentMedia(This,ppMedia);
 5924}
 5925static inline HRESULT IWMPCore3_put_currentMedia(IWMPCore3* This,IWMPMedia *ppMedia) {
 5926    return This->lpVtbl->put_currentMedia(This,ppMedia);
 5927}
 5928static inline HRESULT IWMPCore3_get_mediaCollection(IWMPCore3* This,IWMPMediaCollection **ppMediaCollection) {
 5929    return This->lpVtbl->get_mediaCollection(This,ppMediaCollection);
 5930}
 5931static inline HRESULT IWMPCore3_get_playlistCollection(IWMPCore3* This,IWMPPlaylistCollection **ppPlaylistCollection) {
 5932    return This->lpVtbl->get_playlistCollection(This,ppPlaylistCollection);
 5933}
 5934static inline HRESULT IWMPCore3_get_versionInfo(IWMPCore3* This,BSTR *pbstrVersionInfo) {
 5935    return This->lpVtbl->get_versionInfo(This,pbstrVersionInfo);
 5936}
 5937static inline HRESULT IWMPCore3_launchURL(IWMPCore3* This,BSTR bstrURL) {
 5938    return This->lpVtbl->launchURL(This,bstrURL);
 5939}
 5940static inline HRESULT IWMPCore3_get_network(IWMPCore3* This,IWMPNetwork **ppQNI) {
 5941    return This->lpVtbl->get_network(This,ppQNI);
 5942}
 5943static inline HRESULT IWMPCore3_get_currentPlaylist(IWMPCore3* This,IWMPPlaylist **ppPL) {
 5944    return This->lpVtbl->get_currentPlaylist(This,ppPL);
 5945}
 5946static inline HRESULT IWMPCore3_put_currentPlaylist(IWMPCore3* This,IWMPPlaylist *ppPL) {
 5947    return This->lpVtbl->put_currentPlaylist(This,ppPL);
 5948}
 5949static inline HRESULT IWMPCore3_get_cdromCollection(IWMPCore3* This,IWMPCdromCollection **ppCdromCollection) {
 5950    return This->lpVtbl->get_cdromCollection(This,ppCdromCollection);
 5951}
 5952static inline HRESULT IWMPCore3_get_closedCaption(IWMPCore3* This,IWMPClosedCaption **ppClosedCaption) {
 5953    return This->lpVtbl->get_closedCaption(This,ppClosedCaption);
 5954}
 5955static inline HRESULT IWMPCore3_get_isOnline(IWMPCore3* This,VARIANT_BOOL *pfOnline) {
 5956    return This->lpVtbl->get_isOnline(This,pfOnline);
 5957}
 5958static inline HRESULT IWMPCore3_get_Error(IWMPCore3* This,IWMPError **ppError) {
 5959    return This->lpVtbl->get_Error(This,ppError);
 5960}
 5961static inline HRESULT IWMPCore3_get_status(IWMPCore3* This,BSTR *pbstrStatus) {
 5962    return This->lpVtbl->get_status(This,pbstrStatus);
 5963}
 5964/*** IWMPCore2 methods ***/
 5965static inline HRESULT IWMPCore3_get_dvd(IWMPCore3* This,IWMPDVD **ppDVD) {
 5966    return This->lpVtbl->get_dvd(This,ppDVD);
 5967}
 5968/*** IWMPCore3 methods ***/
 5969static inline HRESULT IWMPCore3_newPlaylist(IWMPCore3* This,BSTR bstrName,BSTR bstrURL,IWMPPlaylist **ppPlaylist) {
 5970    return This->lpVtbl->newPlaylist(This,bstrName,bstrURL,ppPlaylist);
 5971}
 5972static inline HRESULT IWMPCore3_newMedia(IWMPCore3* This,BSTR bstrURL,IWMPMedia **ppMedia) {
 5973    return This->lpVtbl->newMedia(This,bstrURL,ppMedia);
 5974}
 5975#endif
 5976#endif
 5977
 5978#endif
 5979
 5980
 5981#endif  /* __IWMPCore3_INTERFACE_DEFINED__ */
 5982
 5983/*****************************************************************************
 5984 * IWMPPlayer4 interface
 5985 */
 5986#ifndef __IWMPPlayer4_INTERFACE_DEFINED__
 5987#define __IWMPPlayer4_INTERFACE_DEFINED__
 5988
 5989DEFINE_GUID(IID_IWMPPlayer4, 0x6c497d62, 0x8919, 0x413c, 0x82,0xdb, 0xe9,0x35,0xfb,0x3e,0xc5,0x84);
 5990#if defined(__cplusplus) && !defined(CINTERFACE)
 5991MIDL_INTERFACE("6c497d62-8919-413c-82db-e935fb3ec584")
 5992IWMPPlayer4 : public IWMPCore3
 5993{
 5994    virtual HRESULT STDMETHODCALLTYPE get_enabled(
 5995        VARIANT_BOOL *pbEnabled) = 0;
 5996
 5997    virtual HRESULT STDMETHODCALLTYPE put_enabled(
 5998        VARIANT_BOOL pbEnabled) = 0;
 5999
 6000    virtual HRESULT STDMETHODCALLTYPE get_fullScreen(
 6001        VARIANT_BOOL *pbFullScreen) = 0;
 6002
 6003    virtual HRESULT STDMETHODCALLTYPE put_fullScreen(
 6004        VARIANT_BOOL pbFullScreen) = 0;
 6005
 6006    virtual HRESULT STDMETHODCALLTYPE get_enableContextMenu(
 6007        VARIANT_BOOL *pbEnableContextMenu) = 0;
 6008
 6009    virtual HRESULT STDMETHODCALLTYPE put_enableContextMenu(
 6010        VARIANT_BOOL pbEnableContextMenu) = 0;
 6011
 6012    virtual HRESULT STDMETHODCALLTYPE put_uiMode(
 6013        BSTR pbstrMode) = 0;
 6014
 6015    virtual HRESULT STDMETHODCALLTYPE get_uiMode(
 6016        BSTR *pbstrMode) = 0;
 6017
 6018    virtual HRESULT STDMETHODCALLTYPE get_stretchToFit(
 6019        VARIANT_BOOL *pbEnabled) = 0;
 6020
 6021    virtual HRESULT STDMETHODCALLTYPE put_stretchToFit(
 6022        VARIANT_BOOL pbEnabled) = 0;
 6023
 6024    virtual HRESULT STDMETHODCALLTYPE get_windowlessVideo(
 6025        VARIANT_BOOL *pbEnabled) = 0;
 6026
 6027    virtual HRESULT STDMETHODCALLTYPE put_windowlessVideo(
 6028        VARIANT_BOOL pbEnabled) = 0;
 6029
 6030    virtual HRESULT STDMETHODCALLTYPE get_isRemote(
 6031        VARIANT_BOOL *pvarfIsRemote) = 0;
 6032
 6033    virtual HRESULT STDMETHODCALLTYPE get_playerApplication(
 6034        IWMPPlayerApplication **ppIWMPPlayerApplication) = 0;
 6035
 6036    virtual HRESULT STDMETHODCALLTYPE openPlayer(
 6037        BSTR bstrURL) = 0;
 6038
 6039};
 6040#ifdef __CRT_UUID_DECL
 6041__CRT_UUID_DECL(IWMPPlayer4, 0x6c497d62, 0x8919, 0x413c, 0x82,0xdb, 0xe9,0x35,0xfb,0x3e,0xc5,0x84)
 6042#endif
 6043#else
 6044typedef struct IWMPPlayer4Vtbl {
 6045    BEGIN_INTERFACE
 6046
 6047    /*** IUnknown methods ***/
 6048    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 6049        IWMPPlayer4 *This,
 6050        REFIID riid,
 6051        void **ppvObject);
 6052
 6053    ULONG (STDMETHODCALLTYPE *AddRef)(
 6054        IWMPPlayer4 *This);
 6055
 6056    ULONG (STDMETHODCALLTYPE *Release)(
 6057        IWMPPlayer4 *This);
 6058
 6059    /*** IDispatch methods ***/
 6060    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 6061        IWMPPlayer4 *This,
 6062        UINT *pctinfo);
 6063
 6064    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 6065        IWMPPlayer4 *This,
 6066        UINT iTInfo,
 6067        LCID lcid,
 6068        ITypeInfo **ppTInfo);
 6069
 6070    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 6071        IWMPPlayer4 *This,
 6072        REFIID riid,
 6073        LPOLESTR *rgszNames,
 6074        UINT cNames,
 6075        LCID lcid,
 6076        DISPID *rgDispId);
 6077
 6078    HRESULT (STDMETHODCALLTYPE *Invoke)(
 6079        IWMPPlayer4 *This,
 6080        DISPID dispIdMember,
 6081        REFIID riid,
 6082        LCID lcid,
 6083        WORD wFlags,
 6084        DISPPARAMS *pDispParams,
 6085        VARIANT *pVarResult,
 6086        EXCEPINFO *pExcepInfo,
 6087        UINT *puArgErr);
 6088
 6089    /*** IWMPCore methods ***/
 6090    HRESULT (STDMETHODCALLTYPE *close)(
 6091        IWMPPlayer4 *This);
 6092
 6093    HRESULT (STDMETHODCALLTYPE *get_URL)(
 6094        IWMPPlayer4 *This,
 6095        BSTR *pbstrURL);
 6096
 6097    HRESULT (STDMETHODCALLTYPE *put_URL)(
 6098        IWMPPlayer4 *This,
 6099        BSTR pbstrURL);
 6100
 6101    HRESULT (STDMETHODCALLTYPE *get_openState)(
 6102        IWMPPlayer4 *This,
 6103        WMPOpenState *pwmpos);
 6104
 6105    HRESULT (STDMETHODCALLTYPE *get_playState)(
 6106        IWMPPlayer4 *This,
 6107        WMPPlayState *pwmpps);
 6108
 6109    HRESULT (STDMETHODCALLTYPE *get_controls)(
 6110        IWMPPlayer4 *This,
 6111        IWMPControls **ppControl);
 6112
 6113    HRESULT (STDMETHODCALLTYPE *get_settings)(
 6114        IWMPPlayer4 *This,
 6115        IWMPSettings **ppSettings);
 6116
 6117    HRESULT (STDMETHODCALLTYPE *get_currentMedia)(
 6118        IWMPPlayer4 *This,
 6119        IWMPMedia **ppMedia);
 6120
 6121    HRESULT (STDMETHODCALLTYPE *put_currentMedia)(
 6122        IWMPPlayer4 *This,
 6123        IWMPMedia *ppMedia);
 6124
 6125    HRESULT (STDMETHODCALLTYPE *get_mediaCollection)(
 6126        IWMPPlayer4 *This,
 6127        IWMPMediaCollection **ppMediaCollection);
 6128
 6129    HRESULT (STDMETHODCALLTYPE *get_playlistCollection)(
 6130        IWMPPlayer4 *This,
 6131        IWMPPlaylistCollection **ppPlaylistCollection);
 6132
 6133    HRESULT (STDMETHODCALLTYPE *get_versionInfo)(
 6134        IWMPPlayer4 *This,
 6135        BSTR *pbstrVersionInfo);
 6136
 6137    HRESULT (STDMETHODCALLTYPE *launchURL)(
 6138        IWMPPlayer4 *This,
 6139        BSTR bstrURL);
 6140
 6141    HRESULT (STDMETHODCALLTYPE *get_network)(
 6142        IWMPPlayer4 *This,
 6143        IWMPNetwork **ppQNI);
 6144
 6145    HRESULT (STDMETHODCALLTYPE *get_currentPlaylist)(
 6146        IWMPPlayer4 *This,
 6147        IWMPPlaylist **ppPL);
 6148
 6149    HRESULT (STDMETHODCALLTYPE *put_currentPlaylist)(
 6150        IWMPPlayer4 *This,
 6151        IWMPPlaylist *ppPL);
 6152
 6153    HRESULT (STDMETHODCALLTYPE *get_cdromCollection)(
 6154        IWMPPlayer4 *This,
 6155        IWMPCdromCollection **ppCdromCollection);
 6156
 6157    HRESULT (STDMETHODCALLTYPE *get_closedCaption)(
 6158        IWMPPlayer4 *This,
 6159        IWMPClosedCaption **ppClosedCaption);
 6160
 6161    HRESULT (STDMETHODCALLTYPE *get_isOnline)(
 6162        IWMPPlayer4 *This,
 6163        VARIANT_BOOL *pfOnline);
 6164
 6165    HRESULT (STDMETHODCALLTYPE *get_Error)(
 6166        IWMPPlayer4 *This,
 6167        IWMPError **ppError);
 6168
 6169    HRESULT (STDMETHODCALLTYPE *get_status)(
 6170        IWMPPlayer4 *This,
 6171        BSTR *pbstrStatus);
 6172
 6173    /*** IWMPCore2 methods ***/
 6174    HRESULT (STDMETHODCALLTYPE *get_dvd)(
 6175        IWMPPlayer4 *This,
 6176        IWMPDVD **ppDVD);
 6177
 6178    /*** IWMPCore3 methods ***/
 6179    HRESULT (STDMETHODCALLTYPE *newPlaylist)(
 6180        IWMPPlayer4 *This,
 6181        BSTR bstrName,
 6182        BSTR bstrURL,
 6183        IWMPPlaylist **ppPlaylist);
 6184
 6185    HRESULT (STDMETHODCALLTYPE *newMedia)(
 6186        IWMPPlayer4 *This,
 6187        BSTR bstrURL,
 6188        IWMPMedia **ppMedia);
 6189
 6190    /*** IWMPPlayer4 methods ***/
 6191    HRESULT (STDMETHODCALLTYPE *get_enabled)(
 6192        IWMPPlayer4 *This,
 6193        VARIANT_BOOL *pbEnabled);
 6194
 6195    HRESULT (STDMETHODCALLTYPE *put_enabled)(
 6196        IWMPPlayer4 *This,
 6197        VARIANT_BOOL pbEnabled);
 6198
 6199    HRESULT (STDMETHODCALLTYPE *get_fullScreen)(
 6200        IWMPPlayer4 *This,
 6201        VARIANT_BOOL *pbFullScreen);
 6202
 6203    HRESULT (STDMETHODCALLTYPE *put_fullScreen)(
 6204        IWMPPlayer4 *This,
 6205        VARIANT_BOOL pbFullScreen);
 6206
 6207    HRESULT (STDMETHODCALLTYPE *get_enableContextMenu)(
 6208        IWMPPlayer4 *This,
 6209        VARIANT_BOOL *pbEnableContextMenu);
 6210
 6211    HRESULT (STDMETHODCALLTYPE *put_enableContextMenu)(
 6212        IWMPPlayer4 *This,
 6213        VARIANT_BOOL pbEnableContextMenu);
 6214
 6215    HRESULT (STDMETHODCALLTYPE *put_uiMode)(
 6216        IWMPPlayer4 *This,
 6217        BSTR pbstrMode);
 6218
 6219    HRESULT (STDMETHODCALLTYPE *get_uiMode)(
 6220        IWMPPlayer4 *This,
 6221        BSTR *pbstrMode);
 6222
 6223    HRESULT (STDMETHODCALLTYPE *get_stretchToFit)(
 6224        IWMPPlayer4 *This,
 6225        VARIANT_BOOL *pbEnabled);
 6226
 6227    HRESULT (STDMETHODCALLTYPE *put_stretchToFit)(
 6228        IWMPPlayer4 *This,
 6229        VARIANT_BOOL pbEnabled);
 6230
 6231    HRESULT (STDMETHODCALLTYPE *get_windowlessVideo)(
 6232        IWMPPlayer4 *This,
 6233        VARIANT_BOOL *pbEnabled);
 6234
 6235    HRESULT (STDMETHODCALLTYPE *put_windowlessVideo)(
 6236        IWMPPlayer4 *This,
 6237        VARIANT_BOOL pbEnabled);
 6238
 6239    HRESULT (STDMETHODCALLTYPE *get_isRemote)(
 6240        IWMPPlayer4 *This,
 6241        VARIANT_BOOL *pvarfIsRemote);
 6242
 6243    HRESULT (STDMETHODCALLTYPE *get_playerApplication)(
 6244        IWMPPlayer4 *This,
 6245        IWMPPlayerApplication **ppIWMPPlayerApplication);
 6246
 6247    HRESULT (STDMETHODCALLTYPE *openPlayer)(
 6248        IWMPPlayer4 *This,
 6249        BSTR bstrURL);
 6250
 6251    END_INTERFACE
 6252} IWMPPlayer4Vtbl;
 6253
 6254interface IWMPPlayer4 {
 6255    CONST_VTBL IWMPPlayer4Vtbl* lpVtbl;
 6256};
 6257
 6258#ifdef COBJMACROS
 6259#ifndef WIDL_C_INLINE_WRAPPERS
 6260/*** IUnknown methods ***/
 6261#define IWMPPlayer4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 6262#define IWMPPlayer4_AddRef(This) (This)->lpVtbl->AddRef(This)
 6263#define IWMPPlayer4_Release(This) (This)->lpVtbl->Release(This)
 6264/*** IDispatch methods ***/
 6265#define IWMPPlayer4_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 6266#define IWMPPlayer4_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 6267#define IWMPPlayer4_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 6268#define IWMPPlayer4_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 6269/*** IWMPCore methods ***/
 6270#define IWMPPlayer4_close(This) (This)->lpVtbl->close(This)
 6271#define IWMPPlayer4_get_URL(This,pbstrURL) (This)->lpVtbl->get_URL(This,pbstrURL)
 6272#define IWMPPlayer4_put_URL(This,pbstrURL) (This)->lpVtbl->put_URL(This,pbstrURL)
 6273#define IWMPPlayer4_get_openState(This,pwmpos) (This)->lpVtbl->get_openState(This,pwmpos)
 6274#define IWMPPlayer4_get_playState(This,pwmpps) (This)->lpVtbl->get_playState(This,pwmpps)
 6275#define IWMPPlayer4_get_controls(This,ppControl) (This)->lpVtbl->get_controls(This,ppControl)
 6276#define IWMPPlayer4_get_settings(This,ppSettings) (This)->lpVtbl->get_settings(This,ppSettings)
 6277#define IWMPPlayer4_get_currentMedia(This,ppMedia) (This)->lpVtbl->get_currentMedia(This,ppMedia)
 6278#define IWMPPlayer4_put_currentMedia(This,ppMedia) (This)->lpVtbl->put_currentMedia(This,ppMedia)
 6279#define IWMPPlayer4_get_mediaCollection(This,ppMediaCollection) (This)->lpVtbl->get_mediaCollection(This,ppMediaCollection)
 6280#define IWMPPlayer4_get_playlistCollection(This,ppPlaylistCollection) (This)->lpVtbl->get_playlistCollection(This,ppPlaylistCollection)
 6281#define IWMPPlayer4_get_versionInfo(This,pbstrVersionInfo) (This)->lpVtbl->get_versionInfo(This,pbstrVersionInfo)
 6282#define IWMPPlayer4_launchURL(This,bstrURL) (This)->lpVtbl->launchURL(This,bstrURL)
 6283#define IWMPPlayer4_get_network(This,ppQNI) (This)->lpVtbl->get_network(This,ppQNI)
 6284#define IWMPPlayer4_get_currentPlaylist(This,ppPL) (This)->lpVtbl->get_currentPlaylist(This,ppPL)
 6285#define IWMPPlayer4_put_currentPlaylist(This,ppPL) (This)->lpVtbl->put_currentPlaylist(This,ppPL)
 6286#define IWMPPlayer4_get_cdromCollection(This,ppCdromCollection) (This)->lpVtbl->get_cdromCollection(This,ppCdromCollection)
 6287#define IWMPPlayer4_get_closedCaption(This,ppClosedCaption) (This)->lpVtbl->get_closedCaption(This,ppClosedCaption)
 6288#define IWMPPlayer4_get_isOnline(This,pfOnline) (This)->lpVtbl->get_isOnline(This,pfOnline)
 6289#define IWMPPlayer4_get_Error(This,ppError) (This)->lpVtbl->get_Error(This,ppError)
 6290#define IWMPPlayer4_get_status(This,pbstrStatus) (This)->lpVtbl->get_status(This,pbstrStatus)
 6291/*** IWMPCore2 methods ***/
 6292#define IWMPPlayer4_get_dvd(This,ppDVD) (This)->lpVtbl->get_dvd(This,ppDVD)
 6293/*** IWMPCore3 methods ***/
 6294#define IWMPPlayer4_newPlaylist(This,bstrName,bstrURL,ppPlaylist) (This)->lpVtbl->newPlaylist(This,bstrName,bstrURL,ppPlaylist)
 6295#define IWMPPlayer4_newMedia(This,bstrURL,ppMedia) (This)->lpVtbl->newMedia(This,bstrURL,ppMedia)
 6296/*** IWMPPlayer4 methods ***/
 6297#define IWMPPlayer4_get_enabled(This,pbEnabled) (This)->lpVtbl->get_enabled(This,pbEnabled)
 6298#define IWMPPlayer4_put_enabled(This,pbEnabled) (This)->lpVtbl->put_enabled(This,pbEnabled)
 6299#define IWMPPlayer4_get_fullScreen(This,pbFullScreen) (This)->lpVtbl->get_fullScreen(This,pbFullScreen)
 6300#define IWMPPlayer4_put_fullScreen(This,pbFullScreen) (This)->lpVtbl->put_fullScreen(This,pbFullScreen)
 6301#define IWMPPlayer4_get_enableContextMenu(This,pbEnableContextMenu) (This)->lpVtbl->get_enableContextMenu(This,pbEnableContextMenu)
 6302#define IWMPPlayer4_put_enableContextMenu(This,pbEnableContextMenu) (This)->lpVtbl->put_enableContextMenu(This,pbEnableContextMenu)
 6303#define IWMPPlayer4_put_uiMode(This,pbstrMode) (This)->lpVtbl->put_uiMode(This,pbstrMode)
 6304#define IWMPPlayer4_get_uiMode(This,pbstrMode) (This)->lpVtbl->get_uiMode(This,pbstrMode)
 6305#define IWMPPlayer4_get_stretchToFit(This,pbEnabled) (This)->lpVtbl->get_stretchToFit(This,pbEnabled)
 6306#define IWMPPlayer4_put_stretchToFit(This,pbEnabled) (This)->lpVtbl->put_stretchToFit(This,pbEnabled)
 6307#define IWMPPlayer4_get_windowlessVideo(This,pbEnabled) (This)->lpVtbl->get_windowlessVideo(This,pbEnabled)
 6308#define IWMPPlayer4_put_windowlessVideo(This,pbEnabled) (This)->lpVtbl->put_windowlessVideo(This,pbEnabled)
 6309#define IWMPPlayer4_get_isRemote(This,pvarfIsRemote) (This)->lpVtbl->get_isRemote(This,pvarfIsRemote)
 6310#define IWMPPlayer4_get_playerApplication(This,ppIWMPPlayerApplication) (This)->lpVtbl->get_playerApplication(This,ppIWMPPlayerApplication)
 6311#define IWMPPlayer4_openPlayer(This,bstrURL) (This)->lpVtbl->openPlayer(This,bstrURL)
 6312#else
 6313/*** IUnknown methods ***/
 6314static inline HRESULT IWMPPlayer4_QueryInterface(IWMPPlayer4* This,REFIID riid,void **ppvObject) {
 6315    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 6316}
 6317static inline ULONG IWMPPlayer4_AddRef(IWMPPlayer4* This) {
 6318    return This->lpVtbl->AddRef(This);
 6319}
 6320static inline ULONG IWMPPlayer4_Release(IWMPPlayer4* This) {
 6321    return This->lpVtbl->Release(This);
 6322}
 6323/*** IDispatch methods ***/
 6324static inline HRESULT IWMPPlayer4_GetTypeInfoCount(IWMPPlayer4* This,UINT *pctinfo) {
 6325    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 6326}
 6327static inline HRESULT IWMPPlayer4_GetTypeInfo(IWMPPlayer4* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 6328    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 6329}
 6330static inline HRESULT IWMPPlayer4_GetIDsOfNames(IWMPPlayer4* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 6331    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 6332}
 6333static inline HRESULT IWMPPlayer4_Invoke(IWMPPlayer4* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 6334    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 6335}
 6336/*** IWMPCore methods ***/
 6337static inline HRESULT IWMPPlayer4_close(IWMPPlayer4* This) {
 6338    return This->lpVtbl->close(This);
 6339}
 6340static inline HRESULT IWMPPlayer4_get_URL(IWMPPlayer4* This,BSTR *pbstrURL) {
 6341    return This->lpVtbl->get_URL(This,pbstrURL);
 6342}
 6343static inline HRESULT IWMPPlayer4_put_URL(IWMPPlayer4* This,BSTR pbstrURL) {
 6344    return This->lpVtbl->put_URL(This,pbstrURL);
 6345}
 6346static inline HRESULT IWMPPlayer4_get_openState(IWMPPlayer4* This,WMPOpenState *pwmpos) {
 6347    return This->lpVtbl->get_openState(This,pwmpos);
 6348}
 6349static inline HRESULT IWMPPlayer4_get_playState(IWMPPlayer4* This,WMPPlayState *pwmpps) {
 6350    return This->lpVtbl->get_playState(This,pwmpps);
 6351}
 6352static inline HRESULT IWMPPlayer4_get_controls(IWMPPlayer4* This,IWMPControls **ppControl) {
 6353    return This->lpVtbl->get_controls(This,ppControl);
 6354}
 6355static inline HRESULT IWMPPlayer4_get_settings(IWMPPlayer4* This,IWMPSettings **ppSettings) {
 6356    return This->lpVtbl->get_settings(This,ppSettings);
 6357}
 6358static inline HRESULT IWMPPlayer4_get_currentMedia(IWMPPlayer4* This,IWMPMedia **ppMedia) {
 6359    return This->lpVtbl->get_currentMedia(This,ppMedia);
 6360}
 6361static inline HRESULT IWMPPlayer4_put_currentMedia(IWMPPlayer4* This,IWMPMedia *ppMedia) {
 6362    return This->lpVtbl->put_currentMedia(This,ppMedia);
 6363}
 6364static inline HRESULT IWMPPlayer4_get_mediaCollection(IWMPPlayer4* This,IWMPMediaCollection **ppMediaCollection) {
 6365    return This->lpVtbl->get_mediaCollection(This,ppMediaCollection);
 6366}
 6367static inline HRESULT IWMPPlayer4_get_playlistCollection(IWMPPlayer4* This,IWMPPlaylistCollection **ppPlaylistCollection) {
 6368    return This->lpVtbl->get_playlistCollection(This,ppPlaylistCollection);
 6369}
 6370static inline HRESULT IWMPPlayer4_get_versionInfo(IWMPPlayer4* This,BSTR *pbstrVersionInfo) {
 6371    return This->lpVtbl->get_versionInfo(This,pbstrVersionInfo);
 6372}
 6373static inline HRESULT IWMPPlayer4_launchURL(IWMPPlayer4* This,BSTR bstrURL) {
 6374    return This->lpVtbl->launchURL(This,bstrURL);
 6375}
 6376static inline HRESULT IWMPPlayer4_get_network(IWMPPlayer4* This,IWMPNetwork **ppQNI) {
 6377    return This->lpVtbl->get_network(This,ppQNI);
 6378}
 6379static inline HRESULT IWMPPlayer4_get_currentPlaylist(IWMPPlayer4* This,IWMPPlaylist **ppPL) {
 6380    return This->lpVtbl->get_currentPlaylist(This,ppPL);
 6381}
 6382static inline HRESULT IWMPPlayer4_put_currentPlaylist(IWMPPlayer4* This,IWMPPlaylist *ppPL) {
 6383    return This->lpVtbl->put_currentPlaylist(This,ppPL);
 6384}
 6385static inline HRESULT IWMPPlayer4_get_cdromCollection(IWMPPlayer4* This,IWMPCdromCollection **ppCdromCollection) {
 6386    return This->lpVtbl->get_cdromCollection(This,ppCdromCollection);
 6387}
 6388static inline HRESULT IWMPPlayer4_get_closedCaption(IWMPPlayer4* This,IWMPClosedCaption **ppClosedCaption) {
 6389    return This->lpVtbl->get_closedCaption(This,ppClosedCaption);
 6390}
 6391static inline HRESULT IWMPPlayer4_get_isOnline(IWMPPlayer4* This,VARIANT_BOOL *pfOnline) {
 6392    return This->lpVtbl->get_isOnline(This,pfOnline);
 6393}
 6394static inline HRESULT IWMPPlayer4_get_Error(IWMPPlayer4* This,IWMPError **ppError) {
 6395    return This->lpVtbl->get_Error(This,ppError);
 6396}
 6397static inline HRESULT IWMPPlayer4_get_status(IWMPPlayer4* This,BSTR *pbstrStatus) {
 6398    return This->lpVtbl->get_status(This,pbstrStatus);
 6399}
 6400/*** IWMPCore2 methods ***/
 6401static inline HRESULT IWMPPlayer4_get_dvd(IWMPPlayer4* This,IWMPDVD **ppDVD) {
 6402    return This->lpVtbl->get_dvd(This,ppDVD);
 6403}
 6404/*** IWMPCore3 methods ***/
 6405static inline HRESULT IWMPPlayer4_newPlaylist(IWMPPlayer4* This,BSTR bstrName,BSTR bstrURL,IWMPPlaylist **ppPlaylist) {
 6406    return This->lpVtbl->newPlaylist(This,bstrName,bstrURL,ppPlaylist);
 6407}
 6408static inline HRESULT IWMPPlayer4_newMedia(IWMPPlayer4* This,BSTR bstrURL,IWMPMedia **ppMedia) {
 6409    return This->lpVtbl->newMedia(This,bstrURL,ppMedia);
 6410}
 6411/*** IWMPPlayer4 methods ***/
 6412static inline HRESULT IWMPPlayer4_get_enabled(IWMPPlayer4* This,VARIANT_BOOL *pbEnabled) {
 6413    return This->lpVtbl->get_enabled(This,pbEnabled);
 6414}
 6415static inline HRESULT IWMPPlayer4_put_enabled(IWMPPlayer4* This,VARIANT_BOOL pbEnabled) {
 6416    return This->lpVtbl->put_enabled(This,pbEnabled);
 6417}
 6418static inline HRESULT IWMPPlayer4_get_fullScreen(IWMPPlayer4* This,VARIANT_BOOL *pbFullScreen) {
 6419    return This->lpVtbl->get_fullScreen(This,pbFullScreen);
 6420}
 6421static inline HRESULT IWMPPlayer4_put_fullScreen(IWMPPlayer4* This,VARIANT_BOOL pbFullScreen) {
 6422    return This->lpVtbl->put_fullScreen(This,pbFullScreen);
 6423}
 6424static inline HRESULT IWMPPlayer4_get_enableContextMenu(IWMPPlayer4* This,VARIANT_BOOL *pbEnableContextMenu) {
 6425    return This->lpVtbl->get_enableContextMenu(This,pbEnableContextMenu);
 6426}
 6427static inline HRESULT IWMPPlayer4_put_enableContextMenu(IWMPPlayer4* This,VARIANT_BOOL pbEnableContextMenu) {
 6428    return This->lpVtbl->put_enableContextMenu(This,pbEnableContextMenu);
 6429}
 6430static inline HRESULT IWMPPlayer4_put_uiMode(IWMPPlayer4* This,BSTR pbstrMode) {
 6431    return This->lpVtbl->put_uiMode(This,pbstrMode);
 6432}
 6433static inline HRESULT IWMPPlayer4_get_uiMode(IWMPPlayer4* This,BSTR *pbstrMode) {
 6434    return This->lpVtbl->get_uiMode(This,pbstrMode);
 6435}
 6436static inline HRESULT IWMPPlayer4_get_stretchToFit(IWMPPlayer4* This,VARIANT_BOOL *pbEnabled) {
 6437    return This->lpVtbl->get_stretchToFit(This,pbEnabled);
 6438}
 6439static inline HRESULT IWMPPlayer4_put_stretchToFit(IWMPPlayer4* This,VARIANT_BOOL pbEnabled) {
 6440    return This->lpVtbl->put_stretchToFit(This,pbEnabled);
 6441}
 6442static inline HRESULT IWMPPlayer4_get_windowlessVideo(IWMPPlayer4* This,VARIANT_BOOL *pbEnabled) {
 6443    return This->lpVtbl->get_windowlessVideo(This,pbEnabled);
 6444}
 6445static inline HRESULT IWMPPlayer4_put_windowlessVideo(IWMPPlayer4* This,VARIANT_BOOL pbEnabled) {
 6446    return This->lpVtbl->put_windowlessVideo(This,pbEnabled);
 6447}
 6448static inline HRESULT IWMPPlayer4_get_isRemote(IWMPPlayer4* This,VARIANT_BOOL *pvarfIsRemote) {
 6449    return This->lpVtbl->get_isRemote(This,pvarfIsRemote);
 6450}
 6451static inline HRESULT IWMPPlayer4_get_playerApplication(IWMPPlayer4* This,IWMPPlayerApplication **ppIWMPPlayerApplication) {
 6452    return This->lpVtbl->get_playerApplication(This,ppIWMPPlayerApplication);
 6453}
 6454static inline HRESULT IWMPPlayer4_openPlayer(IWMPPlayer4* This,BSTR bstrURL) {
 6455    return This->lpVtbl->openPlayer(This,bstrURL);
 6456}
 6457#endif
 6458#endif
 6459
 6460#endif
 6461
 6462
 6463#endif  /* __IWMPPlayer4_INTERFACE_DEFINED__ */
 6464
 6465/*****************************************************************************
 6466 * IWMPPlayer interface
 6467 */
 6468#ifndef __IWMPPlayer_INTERFACE_DEFINED__
 6469#define __IWMPPlayer_INTERFACE_DEFINED__
 6470
 6471DEFINE_GUID(IID_IWMPPlayer, 0x6bf52a4f, 0x394a, 0x11d3, 0xb1,0x53, 0x00,0xc0,0x4f,0x79,0xfa,0xa6);
 6472#if defined(__cplusplus) && !defined(CINTERFACE)
 6473MIDL_INTERFACE("6bf52a4f-394a-11d3-b153-00c04f79faa6")
 6474IWMPPlayer : public IWMPCore
 6475{
 6476    virtual HRESULT STDMETHODCALLTYPE get_enabled(
 6477        VARIANT_BOOL *pbEnabled) = 0;
 6478
 6479    virtual HRESULT STDMETHODCALLTYPE put_enabled(
 6480        VARIANT_BOOL pbEnabled) = 0;
 6481
 6482    virtual HRESULT STDMETHODCALLTYPE get_fullScreen(
 6483        VARIANT_BOOL *pbFullScreen) = 0;
 6484
 6485    virtual HRESULT STDMETHODCALLTYPE put_fullScreen(
 6486        VARIANT_BOOL pbFullScreen) = 0;
 6487
 6488    virtual HRESULT STDMETHODCALLTYPE get_enableContextMenu(
 6489        VARIANT_BOOL *pbEnableContextMenu) = 0;
 6490
 6491    virtual HRESULT STDMETHODCALLTYPE put_enableContextMenu(
 6492        VARIANT_BOOL pbEnableContextMenu) = 0;
 6493
 6494    virtual HRESULT STDMETHODCALLTYPE put_uiMode(
 6495        BSTR pbstrMode) = 0;
 6496
 6497    virtual HRESULT STDMETHODCALLTYPE get_uiMode(
 6498        BSTR *pbstrMode) = 0;
 6499
 6500};
 6501#ifdef __CRT_UUID_DECL
 6502__CRT_UUID_DECL(IWMPPlayer, 0x6bf52a4f, 0x394a, 0x11d3, 0xb1,0x53, 0x00,0xc0,0x4f,0x79,0xfa,0xa6)
 6503#endif
 6504#else
 6505typedef struct IWMPPlayerVtbl {
 6506    BEGIN_INTERFACE
 6507
 6508    /*** IUnknown methods ***/
 6509    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 6510        IWMPPlayer *This,
 6511        REFIID riid,
 6512        void **ppvObject);
 6513
 6514    ULONG (STDMETHODCALLTYPE *AddRef)(
 6515        IWMPPlayer *This);
 6516
 6517    ULONG (STDMETHODCALLTYPE *Release)(
 6518        IWMPPlayer *This);
 6519
 6520    /*** IDispatch methods ***/
 6521    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
 6522        IWMPPlayer *This,
 6523        UINT *pctinfo);
 6524
 6525    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
 6526        IWMPPlayer *This,
 6527        UINT iTInfo,
 6528        LCID lcid,
 6529        ITypeInfo **ppTInfo);
 6530
 6531    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
 6532        IWMPPlayer *This,
 6533        REFIID riid,
 6534        LPOLESTR *rgszNames,
 6535        UINT cNames,
 6536        LCID lcid,
 6537        DISPID *rgDispId);
 6538
 6539    HRESULT (STDMETHODCALLTYPE *Invoke)(
 6540        IWMPPlayer *This,
 6541        DISPID dispIdMember,
 6542        REFIID riid,
 6543        LCID lcid,
 6544        WORD wFlags,
 6545        DISPPARAMS *pDispParams,
 6546        VARIANT *pVarResult,
 6547        EXCEPINFO *pExcepInfo,
 6548        UINT *puArgErr);
 6549
 6550    /*** IWMPCore methods ***/
 6551    HRESULT (STDMETHODCALLTYPE *close)(
 6552        IWMPPlayer *This);
 6553
 6554    HRESULT (STDMETHODCALLTYPE *get_URL)(
 6555        IWMPPlayer *This,
 6556        BSTR *pbstrURL);
 6557
 6558    HRESULT (STDMETHODCALLTYPE *put_URL)(
 6559        IWMPPlayer *This,
 6560        BSTR pbstrURL);
 6561
 6562    HRESULT (STDMETHODCALLTYPE *get_openState)(
 6563        IWMPPlayer *This,
 6564        WMPOpenState *pwmpos);
 6565
 6566    HRESULT (STDMETHODCALLTYPE *get_playState)(
 6567        IWMPPlayer *This,
 6568        WMPPlayState *pwmpps);
 6569
 6570    HRESULT (STDMETHODCALLTYPE *get_controls)(
 6571        IWMPPlayer *This,
 6572        IWMPControls **ppControl);
 6573
 6574    HRESULT (STDMETHODCALLTYPE *get_settings)(
 6575        IWMPPlayer *This,
 6576        IWMPSettings **ppSettings);
 6577
 6578    HRESULT (STDMETHODCALLTYPE *get_currentMedia)(
 6579        IWMPPlayer *This,
 6580        IWMPMedia **ppMedia);
 6581
 6582    HRESULT (STDMETHODCALLTYPE *put_currentMedia)(
 6583        IWMPPlayer *This,
 6584        IWMPMedia *ppMedia);
 6585
 6586    HRESULT (STDMETHODCALLTYPE *get_mediaCollection)(
 6587        IWMPPlayer *This,
 6588        IWMPMediaCollection **ppMediaCollection);
 6589
 6590    HRESULT (STDMETHODCALLTYPE *get_playlistCollection)(
 6591        IWMPPlayer *This,
 6592        IWMPPlaylistCollection **ppPlaylistCollection);
 6593
 6594    HRESULT (STDMETHODCALLTYPE *get_versionInfo)(
 6595        IWMPPlayer *This,
 6596        BSTR *pbstrVersionInfo);
 6597
 6598    HRESULT (STDMETHODCALLTYPE *launchURL)(
 6599        IWMPPlayer *This,
 6600        BSTR bstrURL);
 6601
 6602    HRESULT (STDMETHODCALLTYPE *get_network)(
 6603        IWMPPlayer *This,
 6604        IWMPNetwork **ppQNI);
 6605
 6606    HRESULT (STDMETHODCALLTYPE *get_currentPlaylist)(
 6607        IWMPPlayer *This,
 6608        IWMPPlaylist **ppPL);
 6609
 6610    HRESULT (STDMETHODCALLTYPE *put_currentPlaylist)(
 6611        IWMPPlayer *This,
 6612        IWMPPlaylist *ppPL);
 6613
 6614    HRESULT (STDMETHODCALLTYPE *get_cdromCollection)(
 6615        IWMPPlayer *This,
 6616        IWMPCdromCollection **ppCdromCollection);
 6617
 6618    HRESULT (STDMETHODCALLTYPE *get_closedCaption)(
 6619        IWMPPlayer *This,
 6620        IWMPClosedCaption **ppClosedCaption);
 6621
 6622    HRESULT (STDMETHODCALLTYPE *get_isOnline)(
 6623        IWMPPlayer *This,
 6624        VARIANT_BOOL *pfOnline);
 6625
 6626    HRESULT (STDMETHODCALLTYPE *get_Error)(
 6627        IWMPPlayer *This,
 6628        IWMPError **ppError);
 6629
 6630    HRESULT (STDMETHODCALLTYPE *get_status)(
 6631        IWMPPlayer *This,
 6632        BSTR *pbstrStatus);
 6633
 6634    /*** IWMPPlayer methods ***/
 6635    HRESULT (STDMETHODCALLTYPE *get_enabled)(
 6636        IWMPPlayer *This,
 6637        VARIANT_BOOL *pbEnabled);
 6638
 6639    HRESULT (STDMETHODCALLTYPE *put_enabled)(
 6640        IWMPPlayer *This,
 6641        VARIANT_BOOL pbEnabled);
 6642
 6643    HRESULT (STDMETHODCALLTYPE *get_fullScreen)(
 6644        IWMPPlayer *This,
 6645        VARIANT_BOOL *pbFullScreen);
 6646
 6647    HRESULT (STDMETHODCALLTYPE *put_fullScreen)(
 6648        IWMPPlayer *This,
 6649        VARIANT_BOOL pbFullScreen);
 6650
 6651    HRESULT (STDMETHODCALLTYPE *get_enableContextMenu)(
 6652        IWMPPlayer *This,
 6653        VARIANT_BOOL *pbEnableContextMenu);
 6654
 6655    HRESULT (STDMETHODCALLTYPE *put_enableContextMenu)(
 6656        IWMPPlayer *This,
 6657        VARIANT_BOOL pbEnableContextMenu);
 6658
 6659    HRESULT (STDMETHODCALLTYPE *put_uiMode)(
 6660        IWMPPlayer *This,
 6661        BSTR pbstrMode);
 6662
 6663    HRESULT (STDMETHODCALLTYPE *get_uiMode)(
 6664        IWMPPlayer *This,
 6665        BSTR *pbstrMode);
 6666
 6667    END_INTERFACE
 6668} IWMPPlayerVtbl;
 6669
 6670interface IWMPPlayer {
 6671    CONST_VTBL IWMPPlayerVtbl* lpVtbl;
 6672};
 6673
 6674#ifdef COBJMACROS
 6675#ifndef WIDL_C_INLINE_WRAPPERS
 6676/*** IUnknown methods ***/
 6677#define IWMPPlayer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 6678#define IWMPPlayer_AddRef(This) (This)->lpVtbl->AddRef(This)
 6679#define IWMPPlayer_Release(This) (This)->lpVtbl->Release(This)
 6680/*** IDispatch methods ***/
 6681#define IWMPPlayer_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
 6682#define IWMPPlayer_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
 6683#define IWMPPlayer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
 6684#define IWMPPlayer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
 6685/*** IWMPCore methods ***/
 6686#define IWMPPlayer_close(This) (This)->lpVtbl->close(This)
 6687#define IWMPPlayer_get_URL(This,pbstrURL) (This)->lpVtbl->get_URL(This,pbstrURL)
 6688#define IWMPPlayer_put_URL(This,pbstrURL) (This)->lpVtbl->put_URL(This,pbstrURL)
 6689#define IWMPPlayer_get_openState(This,pwmpos) (This)->lpVtbl->get_openState(This,pwmpos)
 6690#define IWMPPlayer_get_playState(This,pwmpps) (This)->lpVtbl->get_playState(This,pwmpps)
 6691#define IWMPPlayer_get_controls(This,ppControl) (This)->lpVtbl->get_controls(This,ppControl)
 6692#define IWMPPlayer_get_settings(This,ppSettings) (This)->lpVtbl->get_settings(This,ppSettings)
 6693#define IWMPPlayer_get_currentMedia(This,ppMedia) (This)->lpVtbl->get_currentMedia(This,ppMedia)
 6694#define IWMPPlayer_put_currentMedia(This,ppMedia) (This)->lpVtbl->put_currentMedia(This,ppMedia)
 6695#define IWMPPlayer_get_mediaCollection(This,ppMediaCollection) (This)->lpVtbl->get_mediaCollection(This,ppMediaCollection)
 6696#define IWMPPlayer_get_playlistCollection(This,ppPlaylistCollection) (This)->lpVtbl->get_playlistCollection(This,ppPlaylistCollection)
 6697#define IWMPPlayer_get_versionInfo(This,pbstrVersionInfo) (This)->lpVtbl->get_versionInfo(This,pbstrVersionInfo)
 6698#define IWMPPlayer_launchURL(This,bstrURL) (This)->lpVtbl->launchURL(This,bstrURL)
 6699#define IWMPPlayer_get_network(This,ppQNI) (This)->lpVtbl->get_network(This,ppQNI)
 6700#define IWMPPlayer_get_currentPlaylist(This,ppPL) (This)->lpVtbl->get_currentPlaylist(This,ppPL)
 6701#define IWMPPlayer_put_currentPlaylist(This,ppPL) (This)->lpVtbl->put_currentPlaylist(This,ppPL)
 6702#define IWMPPlayer_get_cdromCollection(This,ppCdromCollection) (This)->lpVtbl->get_cdromCollection(This,ppCdromCollection)
 6703#define IWMPPlayer_get_closedCaption(This,ppClosedCaption) (This)->lpVtbl->get_closedCaption(This,ppClosedCaption)
 6704#define IWMPPlayer_get_isOnline(This,pfOnline) (This)->lpVtbl->get_isOnline(This,pfOnline)
 6705#define IWMPPlayer_get_Error(This,ppError) (This)->lpVtbl->get_Error(This,ppError)
 6706#define IWMPPlayer_get_status(This,pbstrStatus) (This)->lpVtbl->get_status(This,pbstrStatus)
 6707/*** IWMPPlayer methods ***/
 6708#define IWMPPlayer_get_enabled(This,pbEnabled) (This)->lpVtbl->get_enabled(This,pbEnabled)
 6709#define IWMPPlayer_put_enabled(This,pbEnabled) (This)->lpVtbl->put_enabled(This,pbEnabled)
 6710#define IWMPPlayer_get_fullScreen(This,pbFullScreen) (This)->lpVtbl->get_fullScreen(This,pbFullScreen)
 6711#define IWMPPlayer_put_fullScreen(This,pbFullScreen) (This)->lpVtbl->put_fullScreen(This,pbFullScreen)
 6712#define IWMPPlayer_get_enableContextMenu(This,pbEnableContextMenu) (This)->lpVtbl->get_enableContextMenu(This,pbEnableContextMenu)
 6713#define IWMPPlayer_put_enableContextMenu(This,pbEnableContextMenu) (This)->lpVtbl->put_enableContextMenu(This,pbEnableContextMenu)
 6714#define IWMPPlayer_put_uiMode(This,pbstrMode) (This)->lpVtbl->put_uiMode(This,pbstrMode)
 6715#define IWMPPlayer_get_uiMode(This,pbstrMode) (This)->lpVtbl->get_uiMode(This,pbstrMode)
 6716#else
 6717/*** IUnknown methods ***/
 6718static inline HRESULT IWMPPlayer_QueryInterface(IWMPPlayer* This,REFIID riid,void **ppvObject) {
 6719    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 6720}
 6721static inline ULONG IWMPPlayer_AddRef(IWMPPlayer* This) {
 6722    return This->lpVtbl->AddRef(This);
 6723}
 6724static inline ULONG IWMPPlayer_Release(IWMPPlayer* This) {
 6725    return This->lpVtbl->Release(This);
 6726}
 6727/*** IDispatch methods ***/
 6728static inline HRESULT IWMPPlayer_GetTypeInfoCount(IWMPPlayer* This,UINT *pctinfo) {
 6729    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
 6730}
 6731static inline HRESULT IWMPPlayer_GetTypeInfo(IWMPPlayer* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
 6732    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
 6733}
 6734static inline HRESULT IWMPPlayer_GetIDsOfNames(IWMPPlayer* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
 6735    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
 6736}
 6737static inline HRESULT IWMPPlayer_Invoke(IWMPPlayer* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
 6738    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
 6739}
 6740/*** IWMPCore methods ***/
 6741static inline HRESULT IWMPPlayer_close(IWMPPlayer* This) {
 6742    return This->lpVtbl->close(This);
 6743}
 6744static inline HRESULT IWMPPlayer_get_URL(IWMPPlayer* This,BSTR *pbstrURL) {
 6745    return This->lpVtbl->get_URL(This,pbstrURL);
 6746}
 6747static inline HRESULT IWMPPlayer_put_URL(IWMPPlayer* This,BSTR pbstrURL) {
 6748    return This->lpVtbl->put_URL(This,pbstrURL);
 6749}
 6750static inline HRESULT IWMPPlayer_get_openState(IWMPPlayer* This,WMPOpenState *pwmpos) {
 6751    return This->lpVtbl->get_openState(This,pwmpos);
 6752}
 6753static inline HRESULT IWMPPlayer_get_playState(IWMPPlayer* This,WMPPlayState *pwmpps) {
 6754    return This->lpVtbl->get_playState(This,pwmpps);
 6755}
 6756static inline HRESULT IWMPPlayer_get_controls(IWMPPlayer* This,IWMPControls **ppControl) {
 6757    return This->lpVtbl->get_controls(This,ppControl);
 6758}
 6759static inline HRESULT IWMPPlayer_get_settings(IWMPPlayer* This,IWMPSettings **ppSettings) {
 6760    return This->lpVtbl->get_settings(This,ppSettings);
 6761}
 6762static inline HRESULT IWMPPlayer_get_currentMedia(IWMPPlayer* This,IWMPMedia **ppMedia) {
 6763    return This->lpVtbl->get_currentMedia(This,ppMedia);
 6764}
 6765static inline HRESULT IWMPPlayer_put_currentMedia(IWMPPlayer* This,IWMPMedia *ppMedia) {
 6766    return This->lpVtbl->put_currentMedia(This,ppMedia);
 6767}
 6768static inline HRESULT IWMPPlayer_get_mediaCollection(IWMPPlayer* This,IWMPMediaCollection **ppMediaCollection) {
 6769    return This->lpVtbl->get_mediaCollection(This,ppMediaCollection);
 6770}
 6771static inline HRESULT IWMPPlayer_get_playlistCollection(IWMPPlayer* This,IWMPPlaylistCollection **ppPlaylistCollection) {
 6772    return This->lpVtbl->get_playlistCollection(This,ppPlaylistCollection);
 6773}
 6774static inline HRESULT IWMPPlayer_get_versionInfo(IWMPPlayer* This,BSTR *pbstrVersionInfo) {
 6775    return This->lpVtbl->get_versionInfo(This,pbstrVersionInfo);
 6776}
 6777static inline HRESULT IWMPPlayer_launchURL(IWMPPlayer* This,BSTR bstrURL) {
 6778    return This->lpVtbl->launchURL(This,bstrURL);
 6779}
 6780static inline HRESULT IWMPPlayer_get_network(IWMPPlayer* This,IWMPNetwork **ppQNI) {
 6781    return This->lpVtbl->get_network(This,ppQNI);
 6782}
 6783static inline HRESULT IWMPPlayer_get_currentPlaylist(IWMPPlayer* This,IWMPPlaylist **ppPL) {
 6784    return This->lpVtbl->get_currentPlaylist(This,ppPL);
 6785}
 6786static inline HRESULT IWMPPlayer_put_currentPlaylist(IWMPPlayer* This,IWMPPlaylist *ppPL) {
 6787    return This->lpVtbl->put_currentPlaylist(This,ppPL);
 6788}
 6789static inline HRESULT IWMPPlayer_get_cdromCollection(IWMPPlayer* This,IWMPCdromCollection **ppCdromCollection) {
 6790    return This->lpVtbl->get_cdromCollection(This,ppCdromCollection);
 6791}
 6792static inline HRESULT IWMPPlayer_get_closedCaption(IWMPPlayer* This,IWMPClosedCaption **ppClosedCaption) {
 6793    return This->lpVtbl->get_closedCaption(This,ppClosedCaption);
 6794}
 6795static inline HRESULT IWMPPlayer_get_isOnline(IWMPPlayer* This,VARIANT_BOOL *pfOnline) {
 6796    return This->lpVtbl->get_isOnline(This,pfOnline);
 6797}
 6798static inline HRESULT IWMPPlayer_get_Error(IWMPPlayer* This,IWMPError **ppError) {
 6799    return This->lpVtbl->get_Error(This,ppError);
 6800}
 6801static inline HRESULT IWMPPlayer_get_status(IWMPPlayer* This,BSTR *pbstrStatus) {
 6802    return This->lpVtbl->get_status(This,pbstrStatus);
 6803}
 6804/*** IWMPPlayer methods ***/
 6805static inline HRESULT IWMPPlayer_get_enabled(IWMPPlayer* This,VARIANT_BOOL *pbEnabled) {
 6806    return This->lpVtbl->get_enabled(This,pbEnabled);
 6807}
 6808static inline HRESULT IWMPPlayer_put_enabled(IWMPPlayer* This,VARIANT_BOOL pbEnabled) {
 6809    return This->lpVtbl->put_enabled(This,pbEnabled);
 6810}
 6811static inline HRESULT IWMPPlayer_get_fullScreen(IWMPPlayer* This,VARIANT_BOOL *pbFullScreen) {
 6812    return This->lpVtbl->get_fullScreen(This,pbFullScreen);
 6813}
 6814static inline HRESULT IWMPPlayer_put_fullScreen(IWMPPlayer* This,VARIANT_BOOL pbFullScreen) {
 6815    return This->lpVtbl->put_fullScreen(This,pbFullScreen);
 6816}
 6817static inline HRESULT IWMPPlayer_get_enableContextMenu(IWMPPlayer* This,VARIANT_BOOL *pbEnableContextMenu) {
 6818    return This->lpVtbl->get_enableContextMenu(This,pbEnableContextMenu);
 6819}
 6820static inline HRESULT IWMPPlayer_put_enableContextMenu(IWMPPlayer* This,VARIANT_BOOL pbEnableContextMenu) {
 6821    return This->lpVtbl->put_enableContextMenu(This,pbEnableContextMenu);
 6822}
 6823static inline HRESULT IWMPPlayer_put_uiMode(IWMPPlayer* This,BSTR pbstrMode) {
 6824    return This->lpVtbl->put_uiMode(This,pbstrMode);
 6825}
 6826static inline HRESULT IWMPPlayer_get_uiMode(IWMPPlayer* This,BSTR *pbstrMode) {
 6827    return This->lpVtbl->get_uiMode(This,pbstrMode);
 6828}
 6829#endif
 6830#endif
 6831
 6832#endif
 6833
 6834
 6835#endif  /* __IWMPPlayer_INTERFACE_DEFINED__ */
 6836
 6837/*****************************************************************************
 6838 * IWMPSyncDevice interface
 6839 */
 6840#ifndef __IWMPSyncDevice_INTERFACE_DEFINED__
 6841#define __IWMPSyncDevice_INTERFACE_DEFINED__
 6842
 6843DEFINE_GUID(IID_IWMPSyncDevice, 0x82a2986c, 0x0293, 0x4fd0, 0xb2,0x79, 0xb2,0x1b,0x86,0xc0,0x58,0xbe);
 6844#if defined(__cplusplus) && !defined(CINTERFACE)
 6845MIDL_INTERFACE("82a2986c-0293-4fd0-b279-b21b86c058be")
 6846IWMPSyncDevice : public IUnknown
 6847{
 6848    virtual HRESULT STDMETHODCALLTYPE get_friendlyName(
 6849        BSTR *name) = 0;
 6850
 6851    virtual HRESULT STDMETHODCALLTYPE put_friendlyName(
 6852        BSTR name) = 0;
 6853
 6854    virtual HRESULT STDMETHODCALLTYPE get_deviceName(
 6855        BSTR *name) = 0;
 6856
 6857    virtual HRESULT STDMETHODCALLTYPE get_deviceId(
 6858        BSTR *device) = 0;
 6859
 6860    virtual HRESULT STDMETHODCALLTYPE get_partnershipIndex(
 6861        LONG *index) = 0;
 6862
 6863    virtual HRESULT STDMETHODCALLTYPE get_connected(
 6864        VARIANT_BOOL *connected) = 0;
 6865
 6866    virtual HRESULT STDMETHODCALLTYPE get_status(
 6867        WMPDeviceStatus *status) = 0;
 6868
 6869    virtual HRESULT STDMETHODCALLTYPE get_syncState(
 6870        WMPSyncState *state) = 0;
 6871
 6872    virtual HRESULT STDMETHODCALLTYPE get_progress(
 6873        LONG *progress) = 0;
 6874
 6875    virtual HRESULT STDMETHODCALLTYPE getItemInfo(
 6876        BSTR name,
 6877        BSTR *val) = 0;
 6878
 6879    virtual HRESULT STDMETHODCALLTYPE createPartnership(
 6880        VARIANT_BOOL showui) = 0;
 6881
 6882    virtual HRESULT STDMETHODCALLTYPE deletePartnership(
 6883        ) = 0;
 6884
 6885    virtual HRESULT STDMETHODCALLTYPE start(
 6886        ) = 0;
 6887
 6888    virtual HRESULT STDMETHODCALLTYPE stop(
 6889        ) = 0;
 6890
 6891    virtual HRESULT STDMETHODCALLTYPE showSettings(
 6892        ) = 0;
 6893
 6894    virtual HRESULT STDMETHODCALLTYPE isIdentical(
 6895        IWMPSyncDevice *device,
 6896        VARIANT_BOOL *ret) = 0;
 6897
 6898};
 6899#ifdef __CRT_UUID_DECL
 6900__CRT_UUID_DECL(IWMPSyncDevice, 0x82a2986c, 0x0293, 0x4fd0, 0xb2,0x79, 0xb2,0x1b,0x86,0xc0,0x58,0xbe)
 6901#endif
 6902#else
 6903typedef struct IWMPSyncDeviceVtbl {
 6904    BEGIN_INTERFACE
 6905
 6906    /*** IUnknown methods ***/
 6907    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 6908        IWMPSyncDevice *This,
 6909        REFIID riid,
 6910        void **ppvObject);
 6911
 6912    ULONG (STDMETHODCALLTYPE *AddRef)(
 6913        IWMPSyncDevice *This);
 6914
 6915    ULONG (STDMETHODCALLTYPE *Release)(
 6916        IWMPSyncDevice *This);
 6917
 6918    /*** IWMPSyncDevice methods ***/
 6919    HRESULT (STDMETHODCALLTYPE *get_friendlyName)(
 6920        IWMPSyncDevice *This,
 6921        BSTR *name);
 6922
 6923    HRESULT (STDMETHODCALLTYPE *put_friendlyName)(
 6924        IWMPSyncDevice *This,
 6925        BSTR name);
 6926
 6927    HRESULT (STDMETHODCALLTYPE *get_deviceName)(
 6928        IWMPSyncDevice *This,
 6929        BSTR *name);
 6930
 6931    HRESULT (STDMETHODCALLTYPE *get_deviceId)(
 6932        IWMPSyncDevice *This,
 6933        BSTR *device);
 6934
 6935    HRESULT (STDMETHODCALLTYPE *get_partnershipIndex)(
 6936        IWMPSyncDevice *This,
 6937        LONG *index);
 6938
 6939    HRESULT (STDMETHODCALLTYPE *get_connected)(
 6940        IWMPSyncDevice *This,
 6941        VARIANT_BOOL *connected);
 6942
 6943    HRESULT (STDMETHODCALLTYPE *get_status)(
 6944        IWMPSyncDevice *This,
 6945        WMPDeviceStatus *status);
 6946
 6947    HRESULT (STDMETHODCALLTYPE *get_syncState)(
 6948        IWMPSyncDevice *This,
 6949        WMPSyncState *state);
 6950
 6951    HRESULT (STDMETHODCALLTYPE *get_progress)(
 6952        IWMPSyncDevice *This,
 6953        LONG *progress);
 6954
 6955    HRESULT (STDMETHODCALLTYPE *getItemInfo)(
 6956        IWMPSyncDevice *This,
 6957        BSTR name,
 6958        BSTR *val);
 6959
 6960    HRESULT (STDMETHODCALLTYPE *createPartnership)(
 6961        IWMPSyncDevice *This,
 6962        VARIANT_BOOL showui);
 6963
 6964    HRESULT (STDMETHODCALLTYPE *deletePartnership)(
 6965        IWMPSyncDevice *This);
 6966
 6967    HRESULT (STDMETHODCALLTYPE *start)(
 6968        IWMPSyncDevice *This);
 6969
 6970    HRESULT (STDMETHODCALLTYPE *stop)(
 6971        IWMPSyncDevice *This);
 6972
 6973    HRESULT (STDMETHODCALLTYPE *showSettings)(
 6974        IWMPSyncDevice *This);
 6975
 6976    HRESULT (STDMETHODCALLTYPE *isIdentical)(
 6977        IWMPSyncDevice *This,
 6978        IWMPSyncDevice *device,
 6979        VARIANT_BOOL *ret);
 6980
 6981    END_INTERFACE
 6982} IWMPSyncDeviceVtbl;
 6983
 6984interface IWMPSyncDevice {
 6985    CONST_VTBL IWMPSyncDeviceVtbl* lpVtbl;
 6986};
 6987
 6988#ifdef COBJMACROS
 6989#ifndef WIDL_C_INLINE_WRAPPERS
 6990/*** IUnknown methods ***/
 6991#define IWMPSyncDevice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 6992#define IWMPSyncDevice_AddRef(This) (This)->lpVtbl->AddRef(This)
 6993#define IWMPSyncDevice_Release(This) (This)->lpVtbl->Release(This)
 6994/*** IWMPSyncDevice methods ***/
 6995#define IWMPSyncDevice_get_friendlyName(This,name) (This)->lpVtbl->get_friendlyName(This,name)
 6996#define IWMPSyncDevice_put_friendlyName(This,name) (This)->lpVtbl->put_friendlyName(This,name)
 6997#define IWMPSyncDevice_get_deviceName(This,name) (This)->lpVtbl->get_deviceName(This,name)
 6998#define IWMPSyncDevice_get_deviceId(This,device) (This)->lpVtbl->get_deviceId(This,device)
 6999#define IWMPSyncDevice_get_partnershipIndex(This,index) (This)->lpVtbl->get_partnershipIndex(This,index)
 7000#define IWMPSyncDevice_get_connected(This,connected) (This)->lpVtbl->get_connected(This,connected)
 7001#define IWMPSyncDevice_get_status(This,status) (This)->lpVtbl->get_status(This,status)
 7002#define IWMPSyncDevice_get_syncState(This,state) (This)->lpVtbl->get_syncState(This,state)
 7003#define IWMPSyncDevice_get_progress(This,progress) (This)->lpVtbl->get_progress(This,progress)
 7004#define IWMPSyncDevice_getItemInfo(This,name,val) (This)->lpVtbl->getItemInfo(This,name,val)
 7005#define IWMPSyncDevice_createPartnership(This,showui) (This)->lpVtbl->createPartnership(This,showui)
 7006#define IWMPSyncDevice_deletePartnership(This) (This)->lpVtbl->deletePartnership(This)
 7007#define IWMPSyncDevice_start(This) (This)->lpVtbl->start(This)
 7008#define IWMPSyncDevice_stop(This) (This)->lpVtbl->stop(This)
 7009#define IWMPSyncDevice_showSettings(This) (This)->lpVtbl->showSettings(This)
 7010#define IWMPSyncDevice_isIdentical(This,device,ret) (This)->lpVtbl->isIdentical(This,device,ret)
 7011#else
 7012/*** IUnknown methods ***/
 7013static inline HRESULT IWMPSyncDevice_QueryInterface(IWMPSyncDevice* This,REFIID riid,void **ppvObject) {
 7014    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7015}
 7016static inline ULONG IWMPSyncDevice_AddRef(IWMPSyncDevice* This) {
 7017    return This->lpVtbl->AddRef(This);
 7018}
 7019static inline ULONG IWMPSyncDevice_Release(IWMPSyncDevice* This) {
 7020    return This->lpVtbl->Release(This);
 7021}
 7022/*** IWMPSyncDevice methods ***/
 7023static inline HRESULT IWMPSyncDevice_get_friendlyName(IWMPSyncDevice* This,BSTR *name) {
 7024    return This->lpVtbl->get_friendlyName(This,name);
 7025}
 7026static inline HRESULT IWMPSyncDevice_put_friendlyName(IWMPSyncDevice* This,BSTR name) {
 7027    return This->lpVtbl->put_friendlyName(This,name);
 7028}
 7029static inline HRESULT IWMPSyncDevice_get_deviceName(IWMPSyncDevice* This,BSTR *name) {
 7030    return This->lpVtbl->get_deviceName(This,name);
 7031}
 7032static inline HRESULT IWMPSyncDevice_get_deviceId(IWMPSyncDevice* This,BSTR *device) {
 7033    return This->lpVtbl->get_deviceId(This,device);
 7034}
 7035static inline HRESULT IWMPSyncDevice_get_partnershipIndex(IWMPSyncDevice* This,LONG *index) {
 7036    return This->lpVtbl->get_partnershipIndex(This,index);
 7037}
 7038static inline HRESULT IWMPSyncDevice_get_connected(IWMPSyncDevice* This,VARIANT_BOOL *connected) {
 7039    return This->lpVtbl->get_connected(This,connected);
 7040}
 7041static inline HRESULT IWMPSyncDevice_get_status(IWMPSyncDevice* This,WMPDeviceStatus *status) {
 7042    return This->lpVtbl->get_status(This,status);
 7043}
 7044static inline HRESULT IWMPSyncDevice_get_syncState(IWMPSyncDevice* This,WMPSyncState *state) {
 7045    return This->lpVtbl->get_syncState(This,state);
 7046}
 7047static inline HRESULT IWMPSyncDevice_get_progress(IWMPSyncDevice* This,LONG *progress) {
 7048    return This->lpVtbl->get_progress(This,progress);
 7049}
 7050static inline HRESULT IWMPSyncDevice_getItemInfo(IWMPSyncDevice* This,BSTR name,BSTR *val) {
 7051    return This->lpVtbl->getItemInfo(This,name,val);
 7052}
 7053static inline HRESULT IWMPSyncDevice_createPartnership(IWMPSyncDevice* This,VARIANT_BOOL showui) {
 7054    return This->lpVtbl->createPartnership(This,showui);
 7055}
 7056static inline HRESULT IWMPSyncDevice_deletePartnership(IWMPSyncDevice* This) {
 7057    return This->lpVtbl->deletePartnership(This);
 7058}
 7059static inline HRESULT IWMPSyncDevice_start(IWMPSyncDevice* This) {
 7060    return This->lpVtbl->start(This);
 7061}
 7062static inline HRESULT IWMPSyncDevice_stop(IWMPSyncDevice* This) {
 7063    return This->lpVtbl->stop(This);
 7064}
 7065static inline HRESULT IWMPSyncDevice_showSettings(IWMPSyncDevice* This) {
 7066    return This->lpVtbl->showSettings(This);
 7067}
 7068static inline HRESULT IWMPSyncDevice_isIdentical(IWMPSyncDevice* This,IWMPSyncDevice *device,VARIANT_BOOL *ret) {
 7069    return This->lpVtbl->isIdentical(This,device,ret);
 7070}
 7071#endif
 7072#endif
 7073
 7074#endif
 7075
 7076
 7077#endif  /* __IWMPSyncDevice_INTERFACE_DEFINED__ */
 7078
 7079/*****************************************************************************
 7080 * IWMPSyncDevice2 interface
 7081 */
 7082#ifndef __IWMPSyncDevice2_INTERFACE_DEFINED__
 7083#define __IWMPSyncDevice2_INTERFACE_DEFINED__
 7084
 7085DEFINE_GUID(IID_IWMPSyncDevice2, 0x88afb4b2, 0x140a, 0x44d2, 0x91,0xe6, 0x45,0x43,0xda,0x46,0x7c,0xd1);
 7086#if defined(__cplusplus) && !defined(CINTERFACE)
 7087MIDL_INTERFACE("88afb4b2-140a-44d2-91e6-4543da467cd1")
 7088IWMPSyncDevice2 : public IWMPSyncDevice
 7089{
 7090    virtual HRESULT STDMETHODCALLTYPE setItemInfo(
 7091        BSTR name,
 7092        BSTR val) = 0;
 7093
 7094};
 7095#ifdef __CRT_UUID_DECL
 7096__CRT_UUID_DECL(IWMPSyncDevice2, 0x88afb4b2, 0x140a, 0x44d2, 0x91,0xe6, 0x45,0x43,0xda,0x46,0x7c,0xd1)
 7097#endif
 7098#else
 7099typedef struct IWMPSyncDevice2Vtbl {
 7100    BEGIN_INTERFACE
 7101
 7102    /*** IUnknown methods ***/
 7103    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7104        IWMPSyncDevice2 *This,
 7105        REFIID riid,
 7106        void **ppvObject);
 7107
 7108    ULONG (STDMETHODCALLTYPE *AddRef)(
 7109        IWMPSyncDevice2 *This);
 7110
 7111    ULONG (STDMETHODCALLTYPE *Release)(
 7112        IWMPSyncDevice2 *This);
 7113
 7114    /*** IWMPSyncDevice methods ***/
 7115    HRESULT (STDMETHODCALLTYPE *get_friendlyName)(
 7116        IWMPSyncDevice2 *This,
 7117        BSTR *name);
 7118
 7119    HRESULT (STDMETHODCALLTYPE *put_friendlyName)(
 7120        IWMPSyncDevice2 *This,
 7121        BSTR name);
 7122
 7123    HRESULT (STDMETHODCALLTYPE *get_deviceName)(
 7124        IWMPSyncDevice2 *This,
 7125        BSTR *name);
 7126
 7127    HRESULT (STDMETHODCALLTYPE *get_deviceId)(
 7128        IWMPSyncDevice2 *This,
 7129        BSTR *device);
 7130
 7131    HRESULT (STDMETHODCALLTYPE *get_partnershipIndex)(
 7132        IWMPSyncDevice2 *This,
 7133        LONG *index);
 7134
 7135    HRESULT (STDMETHODCALLTYPE *get_connected)(
 7136        IWMPSyncDevice2 *This,
 7137        VARIANT_BOOL *connected);
 7138
 7139    HRESULT (STDMETHODCALLTYPE *get_status)(
 7140        IWMPSyncDevice2 *This,
 7141        WMPDeviceStatus *status);
 7142
 7143    HRESULT (STDMETHODCALLTYPE *get_syncState)(
 7144        IWMPSyncDevice2 *This,
 7145        WMPSyncState *state);
 7146
 7147    HRESULT (STDMETHODCALLTYPE *get_progress)(
 7148        IWMPSyncDevice2 *This,
 7149        LONG *progress);
 7150
 7151    HRESULT (STDMETHODCALLTYPE *getItemInfo)(
 7152        IWMPSyncDevice2 *This,
 7153        BSTR name,
 7154        BSTR *val);
 7155
 7156    HRESULT (STDMETHODCALLTYPE *createPartnership)(
 7157        IWMPSyncDevice2 *This,
 7158        VARIANT_BOOL showui);
 7159
 7160    HRESULT (STDMETHODCALLTYPE *deletePartnership)(
 7161        IWMPSyncDevice2 *This);
 7162
 7163    HRESULT (STDMETHODCALLTYPE *start)(
 7164        IWMPSyncDevice2 *This);
 7165
 7166    HRESULT (STDMETHODCALLTYPE *stop)(
 7167        IWMPSyncDevice2 *This);
 7168
 7169    HRESULT (STDMETHODCALLTYPE *showSettings)(
 7170        IWMPSyncDevice2 *This);
 7171
 7172    HRESULT (STDMETHODCALLTYPE *isIdentical)(
 7173        IWMPSyncDevice2 *This,
 7174        IWMPSyncDevice *device,
 7175        VARIANT_BOOL *ret);
 7176
 7177    /*** IWMPSyncDevice2 methods ***/
 7178    HRESULT (STDMETHODCALLTYPE *setItemInfo)(
 7179        IWMPSyncDevice2 *This,
 7180        BSTR name,
 7181        BSTR val);
 7182
 7183    END_INTERFACE
 7184} IWMPSyncDevice2Vtbl;
 7185
 7186interface IWMPSyncDevice2 {
 7187    CONST_VTBL IWMPSyncDevice2Vtbl* lpVtbl;
 7188};
 7189
 7190#ifdef COBJMACROS
 7191#ifndef WIDL_C_INLINE_WRAPPERS
 7192/*** IUnknown methods ***/
 7193#define IWMPSyncDevice2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7194#define IWMPSyncDevice2_AddRef(This) (This)->lpVtbl->AddRef(This)
 7195#define IWMPSyncDevice2_Release(This) (This)->lpVtbl->Release(This)
 7196/*** IWMPSyncDevice methods ***/
 7197#define IWMPSyncDevice2_get_friendlyName(This,name) (This)->lpVtbl->get_friendlyName(This,name)
 7198#define IWMPSyncDevice2_put_friendlyName(This,name) (This)->lpVtbl->put_friendlyName(This,name)
 7199#define IWMPSyncDevice2_get_deviceName(This,name) (This)->lpVtbl->get_deviceName(This,name)
 7200#define IWMPSyncDevice2_get_deviceId(This,device) (This)->lpVtbl->get_deviceId(This,device)
 7201#define IWMPSyncDevice2_get_partnershipIndex(This,index) (This)->lpVtbl->get_partnershipIndex(This,index)
 7202#define IWMPSyncDevice2_get_connected(This,connected) (This)->lpVtbl->get_connected(This,connected)
 7203#define IWMPSyncDevice2_get_status(This,status) (This)->lpVtbl->get_status(This,status)
 7204#define IWMPSyncDevice2_get_syncState(This,state) (This)->lpVtbl->get_syncState(This,state)
 7205#define IWMPSyncDevice2_get_progress(This,progress) (This)->lpVtbl->get_progress(This,progress)
 7206#define IWMPSyncDevice2_getItemInfo(This,name,val) (This)->lpVtbl->getItemInfo(This,name,val)
 7207#define IWMPSyncDevice2_createPartnership(This,showui) (This)->lpVtbl->createPartnership(This,showui)
 7208#define IWMPSyncDevice2_deletePartnership(This) (This)->lpVtbl->deletePartnership(This)
 7209#define IWMPSyncDevice2_start(This) (This)->lpVtbl->start(This)
 7210#define IWMPSyncDevice2_stop(This) (This)->lpVtbl->stop(This)
 7211#define IWMPSyncDevice2_showSettings(This) (This)->lpVtbl->showSettings(This)
 7212#define IWMPSyncDevice2_isIdentical(This,device,ret) (This)->lpVtbl->isIdentical(This,device,ret)
 7213/*** IWMPSyncDevice2 methods ***/
 7214#define IWMPSyncDevice2_setItemInfo(This,name,val) (This)->lpVtbl->setItemInfo(This,name,val)
 7215#else
 7216/*** IUnknown methods ***/
 7217static inline HRESULT IWMPSyncDevice2_QueryInterface(IWMPSyncDevice2* This,REFIID riid,void **ppvObject) {
 7218    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7219}
 7220static inline ULONG IWMPSyncDevice2_AddRef(IWMPSyncDevice2* This) {
 7221    return This->lpVtbl->AddRef(This);
 7222}
 7223static inline ULONG IWMPSyncDevice2_Release(IWMPSyncDevice2* This) {
 7224    return This->lpVtbl->Release(This);
 7225}
 7226/*** IWMPSyncDevice methods ***/
 7227static inline HRESULT IWMPSyncDevice2_get_friendlyName(IWMPSyncDevice2* This,BSTR *name) {
 7228    return This->lpVtbl->get_friendlyName(This,name);
 7229}
 7230static inline HRESULT IWMPSyncDevice2_put_friendlyName(IWMPSyncDevice2* This,BSTR name) {
 7231    return This->lpVtbl->put_friendlyName(This,name);
 7232}
 7233static inline HRESULT IWMPSyncDevice2_get_deviceName(IWMPSyncDevice2* This,BSTR *name) {
 7234    return This->lpVtbl->get_deviceName(This,name);
 7235}
 7236static inline HRESULT IWMPSyncDevice2_get_deviceId(IWMPSyncDevice2* This,BSTR *device) {
 7237    return This->lpVtbl->get_deviceId(This,device);
 7238}
 7239static inline HRESULT IWMPSyncDevice2_get_partnershipIndex(IWMPSyncDevice2* This,LONG *index) {
 7240    return This->lpVtbl->get_partnershipIndex(This,index);
 7241}
 7242static inline HRESULT IWMPSyncDevice2_get_connected(IWMPSyncDevice2* This,VARIANT_BOOL *connected) {
 7243    return This->lpVtbl->get_connected(This,connected);
 7244}
 7245static inline HRESULT IWMPSyncDevice2_get_status(IWMPSyncDevice2* This,WMPDeviceStatus *status) {
 7246    return This->lpVtbl->get_status(This,status);
 7247}
 7248static inline HRESULT IWMPSyncDevice2_get_syncState(IWMPSyncDevice2* This,WMPSyncState *state) {
 7249    return This->lpVtbl->get_syncState(This,state);
 7250}
 7251static inline HRESULT IWMPSyncDevice2_get_progress(IWMPSyncDevice2* This,LONG *progress) {
 7252    return This->lpVtbl->get_progress(This,progress);
 7253}
 7254static inline HRESULT IWMPSyncDevice2_getItemInfo(IWMPSyncDevice2* This,BSTR name,BSTR *val) {
 7255    return This->lpVtbl->getItemInfo(This,name,val);
 7256}
 7257static inline HRESULT IWMPSyncDevice2_createPartnership(IWMPSyncDevice2* This,VARIANT_BOOL showui) {
 7258    return This->lpVtbl->createPartnership(This,showui);
 7259}
 7260static inline HRESULT IWMPSyncDevice2_deletePartnership(IWMPSyncDevice2* This) {
 7261    return This->lpVtbl->deletePartnership(This);
 7262}
 7263static inline HRESULT IWMPSyncDevice2_start(IWMPSyncDevice2* This) {
 7264    return This->lpVtbl->start(This);
 7265}
 7266static inline HRESULT IWMPSyncDevice2_stop(IWMPSyncDevice2* This) {
 7267    return This->lpVtbl->stop(This);
 7268}
 7269static inline HRESULT IWMPSyncDevice2_showSettings(IWMPSyncDevice2* This) {
 7270    return This->lpVtbl->showSettings(This);
 7271}
 7272static inline HRESULT IWMPSyncDevice2_isIdentical(IWMPSyncDevice2* This,IWMPSyncDevice *device,VARIANT_BOOL *ret) {
 7273    return This->lpVtbl->isIdentical(This,device,ret);
 7274}
 7275/*** IWMPSyncDevice2 methods ***/
 7276static inline HRESULT IWMPSyncDevice2_setItemInfo(IWMPSyncDevice2* This,BSTR name,BSTR val) {
 7277    return This->lpVtbl->setItemInfo(This,name,val);
 7278}
 7279#endif
 7280#endif
 7281
 7282#endif
 7283
 7284
 7285#endif  /* __IWMPSyncDevice2_INTERFACE_DEFINED__ */
 7286
 7287/*****************************************************************************
 7288 * IWMPCdromRip interface
 7289 */
 7290#ifndef __IWMPCdromRip_INTERFACE_DEFINED__
 7291#define __IWMPCdromRip_INTERFACE_DEFINED__
 7292
 7293DEFINE_GUID(IID_IWMPCdromRip, 0x56e2294f, 0x69ed, 0x4629, 0xa8,0x69, 0xae,0xa7,0x2c,0x0d,0xcc,0x2c);
 7294#if defined(__cplusplus) && !defined(CINTERFACE)
 7295MIDL_INTERFACE("56e2294f-69ed-4629-a869-aea72c0dcc2c")
 7296IWMPCdromRip : public IUnknown
 7297{
 7298    virtual HRESULT STDMETHODCALLTYPE get_ripState(
 7299        WMPRipState *state) = 0;
 7300
 7301    virtual HRESULT STDMETHODCALLTYPE get_ripProgress(
 7302        LONG *progress) = 0;
 7303
 7304    virtual HRESULT STDMETHODCALLTYPE startRip(
 7305        ) = 0;
 7306
 7307    virtual HRESULT STDMETHODCALLTYPE stopRip(
 7308        ) = 0;
 7309
 7310};
 7311#ifdef __CRT_UUID_DECL
 7312__CRT_UUID_DECL(IWMPCdromRip, 0x56e2294f, 0x69ed, 0x4629, 0xa8,0x69, 0xae,0xa7,0x2c,0x0d,0xcc,0x2c)
 7313#endif
 7314#else
 7315typedef struct IWMPCdromRipVtbl {
 7316    BEGIN_INTERFACE
 7317
 7318    /*** IUnknown methods ***/
 7319    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7320        IWMPCdromRip *This,
 7321        REFIID riid,
 7322        void **ppvObject);
 7323
 7324    ULONG (STDMETHODCALLTYPE *AddRef)(
 7325        IWMPCdromRip *This);
 7326
 7327    ULONG (STDMETHODCALLTYPE *Release)(
 7328        IWMPCdromRip *This);
 7329
 7330    /*** IWMPCdromRip methods ***/
 7331    HRESULT (STDMETHODCALLTYPE *get_ripState)(
 7332        IWMPCdromRip *This,
 7333        WMPRipState *state);
 7334
 7335    HRESULT (STDMETHODCALLTYPE *get_ripProgress)(
 7336        IWMPCdromRip *This,
 7337        LONG *progress);
 7338
 7339    HRESULT (STDMETHODCALLTYPE *startRip)(
 7340        IWMPCdromRip *This);
 7341
 7342    HRESULT (STDMETHODCALLTYPE *stopRip)(
 7343        IWMPCdromRip *This);
 7344
 7345    END_INTERFACE
 7346} IWMPCdromRipVtbl;
 7347
 7348interface IWMPCdromRip {
 7349    CONST_VTBL IWMPCdromRipVtbl* lpVtbl;
 7350};
 7351
 7352#ifdef COBJMACROS
 7353#ifndef WIDL_C_INLINE_WRAPPERS
 7354/*** IUnknown methods ***/
 7355#define IWMPCdromRip_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7356#define IWMPCdromRip_AddRef(This) (This)->lpVtbl->AddRef(This)
 7357#define IWMPCdromRip_Release(This) (This)->lpVtbl->Release(This)
 7358/*** IWMPCdromRip methods ***/
 7359#define IWMPCdromRip_get_ripState(This,state) (This)->lpVtbl->get_ripState(This,state)
 7360#define IWMPCdromRip_get_ripProgress(This,progress) (This)->lpVtbl->get_ripProgress(This,progress)
 7361#define IWMPCdromRip_startRip(This) (This)->lpVtbl->startRip(This)
 7362#define IWMPCdromRip_stopRip(This) (This)->lpVtbl->stopRip(This)
 7363#else
 7364/*** IUnknown methods ***/
 7365static inline HRESULT IWMPCdromRip_QueryInterface(IWMPCdromRip* This,REFIID riid,void **ppvObject) {
 7366    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7367}
 7368static inline ULONG IWMPCdromRip_AddRef(IWMPCdromRip* This) {
 7369    return This->lpVtbl->AddRef(This);
 7370}
 7371static inline ULONG IWMPCdromRip_Release(IWMPCdromRip* This) {
 7372    return This->lpVtbl->Release(This);
 7373}
 7374/*** IWMPCdromRip methods ***/
 7375static inline HRESULT IWMPCdromRip_get_ripState(IWMPCdromRip* This,WMPRipState *state) {
 7376    return This->lpVtbl->get_ripState(This,state);
 7377}
 7378static inline HRESULT IWMPCdromRip_get_ripProgress(IWMPCdromRip* This,LONG *progress) {
 7379    return This->lpVtbl->get_ripProgress(This,progress);
 7380}
 7381static inline HRESULT IWMPCdromRip_startRip(IWMPCdromRip* This) {
 7382    return This->lpVtbl->startRip(This);
 7383}
 7384static inline HRESULT IWMPCdromRip_stopRip(IWMPCdromRip* This) {
 7385    return This->lpVtbl->stopRip(This);
 7386}
 7387#endif
 7388#endif
 7389
 7390#endif
 7391
 7392
 7393#endif  /* __IWMPCdromRip_INTERFACE_DEFINED__ */
 7394
 7395/*****************************************************************************
 7396 * IWMPCdromBurn interface
 7397 */
 7398#ifndef __IWMPCdromBurn_INTERFACE_DEFINED__
 7399#define __IWMPCdromBurn_INTERFACE_DEFINED__
 7400
 7401DEFINE_GUID(IID_IWMPCdromBurn, 0xbd94dbeb, 0x417f, 0x4928, 0xaa,0x06, 0x08,0x7d,0x56,0xed,0x9b,0x59);
 7402#if defined(__cplusplus) && !defined(CINTERFACE)
 7403MIDL_INTERFACE("bd94dbeb-417f-4928-aa06-087d56ed9b59")
 7404IWMPCdromBurn : public IUnknown
 7405{
 7406    virtual HRESULT STDMETHODCALLTYPE isAvailable(
 7407        BSTR item,
 7408        VARIANT_BOOL *available) = 0;
 7409
 7410    virtual HRESULT STDMETHODCALLTYPE getItemInfo(
 7411        BSTR item,
 7412        BSTR *val) = 0;
 7413
 7414    virtual HRESULT STDMETHODCALLTYPE get_label(
 7415        BSTR *label) = 0;
 7416
 7417    virtual HRESULT STDMETHODCALLTYPE put_label(
 7418        BSTR label) = 0;
 7419
 7420    virtual HRESULT STDMETHODCALLTYPE get_burnFormat(
 7421        WMPBurnFormat *format) = 0;
 7422
 7423    virtual HRESULT STDMETHODCALLTYPE put_burnFormat(
 7424        WMPBurnFormat format) = 0;
 7425
 7426    virtual HRESULT STDMETHODCALLTYPE get_burnPlaylist(
 7427        IWMPPlaylist **playlist) = 0;
 7428
 7429    virtual HRESULT STDMETHODCALLTYPE put_burnPlaylist(
 7430        IWMPPlaylist *playlist) = 0;
 7431
 7432    virtual HRESULT STDMETHODCALLTYPE refreshStatus(
 7433        ) = 0;
 7434
 7435    virtual HRESULT STDMETHODCALLTYPE get_burnState(
 7436        WMPBurnState *state) = 0;
 7437
 7438    virtual HRESULT STDMETHODCALLTYPE get_burnProgress(
 7439        LONG *progress) = 0;
 7440
 7441    virtual HRESULT STDMETHODCALLTYPE startBurn(
 7442        ) = 0;
 7443
 7444    virtual HRESULT STDMETHODCALLTYPE stopBurn(
 7445        ) = 0;
 7446
 7447    virtual HRESULT STDMETHODCALLTYPE erase(
 7448        ) = 0;
 7449
 7450};
 7451#ifdef __CRT_UUID_DECL
 7452__CRT_UUID_DECL(IWMPCdromBurn, 0xbd94dbeb, 0x417f, 0x4928, 0xaa,0x06, 0x08,0x7d,0x56,0xed,0x9b,0x59)
 7453#endif
 7454#else
 7455typedef struct IWMPCdromBurnVtbl {
 7456    BEGIN_INTERFACE
 7457
 7458    /*** IUnknown methods ***/
 7459    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7460        IWMPCdromBurn *This,
 7461        REFIID riid,
 7462        void **ppvObject);
 7463
 7464    ULONG (STDMETHODCALLTYPE *AddRef)(
 7465        IWMPCdromBurn *This);
 7466
 7467    ULONG (STDMETHODCALLTYPE *Release)(
 7468        IWMPCdromBurn *This);
 7469
 7470    /*** IWMPCdromBurn methods ***/
 7471    HRESULT (STDMETHODCALLTYPE *isAvailable)(
 7472        IWMPCdromBurn *This,
 7473        BSTR item,
 7474        VARIANT_BOOL *available);
 7475
 7476    HRESULT (STDMETHODCALLTYPE *getItemInfo)(
 7477        IWMPCdromBurn *This,
 7478        BSTR item,
 7479        BSTR *val);
 7480
 7481    HRESULT (STDMETHODCALLTYPE *get_label)(
 7482        IWMPCdromBurn *This,
 7483        BSTR *label);
 7484
 7485    HRESULT (STDMETHODCALLTYPE *put_label)(
 7486        IWMPCdromBurn *This,
 7487        BSTR label);
 7488
 7489    HRESULT (STDMETHODCALLTYPE *get_burnFormat)(
 7490        IWMPCdromBurn *This,
 7491        WMPBurnFormat *format);
 7492
 7493    HRESULT (STDMETHODCALLTYPE *put_burnFormat)(
 7494        IWMPCdromBurn *This,
 7495        WMPBurnFormat format);
 7496
 7497    HRESULT (STDMETHODCALLTYPE *get_burnPlaylist)(
 7498        IWMPCdromBurn *This,
 7499        IWMPPlaylist **playlist);
 7500
 7501    HRESULT (STDMETHODCALLTYPE *put_burnPlaylist)(
 7502        IWMPCdromBurn *This,
 7503        IWMPPlaylist *playlist);
 7504
 7505    HRESULT (STDMETHODCALLTYPE *refreshStatus)(
 7506        IWMPCdromBurn *This);
 7507
 7508    HRESULT (STDMETHODCALLTYPE *get_burnState)(
 7509        IWMPCdromBurn *This,
 7510        WMPBurnState *state);
 7511
 7512    HRESULT (STDMETHODCALLTYPE *get_burnProgress)(
 7513        IWMPCdromBurn *This,
 7514        LONG *progress);
 7515
 7516    HRESULT (STDMETHODCALLTYPE *startBurn)(
 7517        IWMPCdromBurn *This);
 7518
 7519    HRESULT (STDMETHODCALLTYPE *stopBurn)(
 7520        IWMPCdromBurn *This);
 7521
 7522    HRESULT (STDMETHODCALLTYPE *erase)(
 7523        IWMPCdromBurn *This);
 7524
 7525    END_INTERFACE
 7526} IWMPCdromBurnVtbl;
 7527
 7528interface IWMPCdromBurn {
 7529    CONST_VTBL IWMPCdromBurnVtbl* lpVtbl;
 7530};
 7531
 7532#ifdef COBJMACROS
 7533#ifndef WIDL_C_INLINE_WRAPPERS
 7534/*** IUnknown methods ***/
 7535#define IWMPCdromBurn_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7536#define IWMPCdromBurn_AddRef(This) (This)->lpVtbl->AddRef(This)
 7537#define IWMPCdromBurn_Release(This) (This)->lpVtbl->Release(This)
 7538/*** IWMPCdromBurn methods ***/
 7539#define IWMPCdromBurn_isAvailable(This,item,available) (This)->lpVtbl->isAvailable(This,item,available)
 7540#define IWMPCdromBurn_getItemInfo(This,item,val) (This)->lpVtbl->getItemInfo(This,item,val)
 7541#define IWMPCdromBurn_get_label(This,label) (This)->lpVtbl->get_label(This,label)
 7542#define IWMPCdromBurn_put_label(This,label) (This)->lpVtbl->put_label(This,label)
 7543#define IWMPCdromBurn_get_burnFormat(This,format) (This)->lpVtbl->get_burnFormat(This,format)
 7544#define IWMPCdromBurn_put_burnFormat(This,format) (This)->lpVtbl->put_burnFormat(This,format)
 7545#define IWMPCdromBurn_get_burnPlaylist(This,playlist) (This)->lpVtbl->get_burnPlaylist(This,playlist)
 7546#define IWMPCdromBurn_put_burnPlaylist(This,playlist) (This)->lpVtbl->put_burnPlaylist(This,playlist)
 7547#define IWMPCdromBurn_refreshStatus(This) (This)->lpVtbl->refreshStatus(This)
 7548#define IWMPCdromBurn_get_burnState(This,state) (This)->lpVtbl->get_burnState(This,state)
 7549#define IWMPCdromBurn_get_burnProgress(This,progress) (This)->lpVtbl->get_burnProgress(This,progress)
 7550#define IWMPCdromBurn_startBurn(This) (This)->lpVtbl->startBurn(This)
 7551#define IWMPCdromBurn_stopBurn(This) (This)->lpVtbl->stopBurn(This)
 7552#define IWMPCdromBurn_erase(This) (This)->lpVtbl->erase(This)
 7553#else
 7554/*** IUnknown methods ***/
 7555static inline HRESULT IWMPCdromBurn_QueryInterface(IWMPCdromBurn* This,REFIID riid,void **ppvObject) {
 7556    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7557}
 7558static inline ULONG IWMPCdromBurn_AddRef(IWMPCdromBurn* This) {
 7559    return This->lpVtbl->AddRef(This);
 7560}
 7561static inline ULONG IWMPCdromBurn_Release(IWMPCdromBurn* This) {
 7562    return This->lpVtbl->Release(This);
 7563}
 7564/*** IWMPCdromBurn methods ***/
 7565static inline HRESULT IWMPCdromBurn_isAvailable(IWMPCdromBurn* This,BSTR item,VARIANT_BOOL *available) {
 7566    return This->lpVtbl->isAvailable(This,item,available);
 7567}
 7568static inline HRESULT IWMPCdromBurn_getItemInfo(IWMPCdromBurn* This,BSTR item,BSTR *val) {
 7569    return This->lpVtbl->getItemInfo(This,item,val);
 7570}
 7571static inline HRESULT IWMPCdromBurn_get_label(IWMPCdromBurn* This,BSTR *label) {
 7572    return This->lpVtbl->get_label(This,label);
 7573}
 7574static inline HRESULT IWMPCdromBurn_put_label(IWMPCdromBurn* This,BSTR label) {
 7575    return This->lpVtbl->put_label(This,label);
 7576}
 7577static inline HRESULT IWMPCdromBurn_get_burnFormat(IWMPCdromBurn* This,WMPBurnFormat *format) {
 7578    return This->lpVtbl->get_burnFormat(This,format);
 7579}
 7580static inline HRESULT IWMPCdromBurn_put_burnFormat(IWMPCdromBurn* This,WMPBurnFormat format) {
 7581    return This->lpVtbl->put_burnFormat(This,format);
 7582}
 7583static inline HRESULT IWMPCdromBurn_get_burnPlaylist(IWMPCdromBurn* This,IWMPPlaylist **playlist) {
 7584    return This->lpVtbl->get_burnPlaylist(This,playlist);
 7585}
 7586static inline HRESULT IWMPCdromBurn_put_burnPlaylist(IWMPCdromBurn* This,IWMPPlaylist *playlist) {
 7587    return This->lpVtbl->put_burnPlaylist(This,playlist);
 7588}
 7589static inline HRESULT IWMPCdromBurn_refreshStatus(IWMPCdromBurn* This) {
 7590    return This->lpVtbl->refreshStatus(This);
 7591}
 7592static inline HRESULT IWMPCdromBurn_get_burnState(IWMPCdromBurn* This,WMPBurnState *state) {
 7593    return This->lpVtbl->get_burnState(This,state);
 7594}
 7595static inline HRESULT IWMPCdromBurn_get_burnProgress(IWMPCdromBurn* This,LONG *progress) {
 7596    return This->lpVtbl->get_burnProgress(This,progress);
 7597}
 7598static inline HRESULT IWMPCdromBurn_startBurn(IWMPCdromBurn* This) {
 7599    return This->lpVtbl->startBurn(This);
 7600}
 7601static inline HRESULT IWMPCdromBurn_stopBurn(IWMPCdromBurn* This) {
 7602    return This->lpVtbl->stopBurn(This);
 7603}
 7604static inline HRESULT IWMPCdromBurn_erase(IWMPCdromBurn* This) {
 7605    return This->lpVtbl->erase(This);
 7606}
 7607#endif
 7608#endif
 7609
 7610#endif
 7611
 7612
 7613#endif  /* __IWMPCdromBurn_INTERFACE_DEFINED__ */
 7614
 7615/*****************************************************************************
 7616 * IWMPLibrary interface
 7617 */
 7618#ifndef __IWMPLibrary_INTERFACE_DEFINED__
 7619#define __IWMPLibrary_INTERFACE_DEFINED__
 7620
 7621DEFINE_GUID(IID_IWMPLibrary, 0x3df47861, 0x7df1, 0x4c1f, 0xa8,0x1b, 0x4c,0x26,0xf0,0xf7,0xa7,0xc6);
 7622#if defined(__cplusplus) && !defined(CINTERFACE)
 7623MIDL_INTERFACE("3df47861-7df1-4c1f-a81b-4c26f0f7a7c6")
 7624IWMPLibrary : public IUnknown
 7625{
 7626    virtual HRESULT STDMETHODCALLTYPE get_name(
 7627        BSTR *name) = 0;
 7628
 7629    virtual HRESULT STDMETHODCALLTYPE get_type(
 7630        WMPLibraryType *type) = 0;
 7631
 7632    virtual HRESULT STDMETHODCALLTYPE get_mediaCollection(
 7633        IWMPMediaCollection **collection) = 0;
 7634
 7635    virtual HRESULT STDMETHODCALLTYPE isIdentical(
 7636        IWMPLibrary *wmplibrary,
 7637        VARIANT_BOOL *ret) = 0;
 7638
 7639};
 7640#ifdef __CRT_UUID_DECL
 7641__CRT_UUID_DECL(IWMPLibrary, 0x3df47861, 0x7df1, 0x4c1f, 0xa8,0x1b, 0x4c,0x26,0xf0,0xf7,0xa7,0xc6)
 7642#endif
 7643#else
 7644typedef struct IWMPLibraryVtbl {
 7645    BEGIN_INTERFACE
 7646
 7647    /*** IUnknown methods ***/
 7648    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7649        IWMPLibrary *This,
 7650        REFIID riid,
 7651        void **ppvObject);
 7652
 7653    ULONG (STDMETHODCALLTYPE *AddRef)(
 7654        IWMPLibrary *This);
 7655
 7656    ULONG (STDMETHODCALLTYPE *Release)(
 7657        IWMPLibrary *This);
 7658
 7659    /*** IWMPLibrary methods ***/
 7660    HRESULT (STDMETHODCALLTYPE *get_name)(
 7661        IWMPLibrary *This,
 7662        BSTR *name);
 7663
 7664    HRESULT (STDMETHODCALLTYPE *get_type)(
 7665        IWMPLibrary *This,
 7666        WMPLibraryType *type);
 7667
 7668    HRESULT (STDMETHODCALLTYPE *get_mediaCollection)(
 7669        IWMPLibrary *This,
 7670        IWMPMediaCollection **collection);
 7671
 7672    HRESULT (STDMETHODCALLTYPE *isIdentical)(
 7673        IWMPLibrary *This,
 7674        IWMPLibrary *wmplibrary,
 7675        VARIANT_BOOL *ret);
 7676
 7677    END_INTERFACE
 7678} IWMPLibraryVtbl;
 7679
 7680interface IWMPLibrary {
 7681    CONST_VTBL IWMPLibraryVtbl* lpVtbl;
 7682};
 7683
 7684#ifdef COBJMACROS
 7685#ifndef WIDL_C_INLINE_WRAPPERS
 7686/*** IUnknown methods ***/
 7687#define IWMPLibrary_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 7688#define IWMPLibrary_AddRef(This) (This)->lpVtbl->AddRef(This)
 7689#define IWMPLibrary_Release(This) (This)->lpVtbl->Release(This)
 7690/*** IWMPLibrary methods ***/
 7691#define IWMPLibrary_get_name(This,name) (This)->lpVtbl->get_name(This,name)
 7692#define IWMPLibrary_get_type(This,type) (This)->lpVtbl->get_type(This,type)
 7693#define IWMPLibrary_get_mediaCollection(This,collection) (This)->lpVtbl->get_mediaCollection(This,collection)
 7694#define IWMPLibrary_isIdentical(This,wmplibrary,ret) (This)->lpVtbl->isIdentical(This,wmplibrary,ret)
 7695#else
 7696/*** IUnknown methods ***/
 7697static inline HRESULT IWMPLibrary_QueryInterface(IWMPLibrary* This,REFIID riid,void **ppvObject) {
 7698    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 7699}
 7700static inline ULONG IWMPLibrary_AddRef(IWMPLibrary* This) {
 7701    return This->lpVtbl->AddRef(This);
 7702}
 7703static inline ULONG IWMPLibrary_Release(IWMPLibrary* This) {
 7704    return This->lpVtbl->Release(This);
 7705}
 7706/*** IWMPLibrary methods ***/
 7707static inline HRESULT IWMPLibrary_get_name(IWMPLibrary* This,BSTR *name) {
 7708    return This->lpVtbl->get_name(This,name);
 7709}
 7710static inline HRESULT IWMPLibrary_get_type(IWMPLibrary* This,WMPLibraryType *type) {
 7711    return This->lpVtbl->get_type(This,type);
 7712}
 7713static inline HRESULT IWMPLibrary_get_mediaCollection(IWMPLibrary* This,IWMPMediaCollection **collection) {
 7714    return This->lpVtbl->get_mediaCollection(This,collection);
 7715}
 7716static inline HRESULT IWMPLibrary_isIdentical(IWMPLibrary* This,IWMPLibrary *wmplibrary,VARIANT_BOOL *ret) {
 7717    return This->lpVtbl->isIdentical(This,wmplibrary,ret);
 7718}
 7719#endif
 7720#endif
 7721
 7722#endif
 7723
 7724
 7725#endif  /* __IWMPLibrary_INTERFACE_DEFINED__ */
 7726
 7727/*****************************************************************************
 7728 * IWMPEvents interface
 7729 */
 7730#ifndef __IWMPEvents_INTERFACE_DEFINED__
 7731#define __IWMPEvents_INTERFACE_DEFINED__
 7732
 7733DEFINE_GUID(IID_IWMPEvents, 0x19a6627b, 0xda9e, 0x47c1, 0xbb,0x23, 0x00,0xb5,0xe6,0x68,0x23,0x6a);
 7734#if defined(__cplusplus) && !defined(CINTERFACE)
 7735MIDL_INTERFACE("19a6627b-da9e-47c1-bb23-00b5e668236a")
 7736IWMPEvents : public IUnknown
 7737{
 7738    virtual void STDMETHODCALLTYPE OpenStateChange(
 7739        LONG state) = 0;
 7740
 7741    virtual void STDMETHODCALLTYPE PlayStateChange(
 7742        LONG state) = 0;
 7743
 7744    virtual void STDMETHODCALLTYPE AudioLanguageChange(
 7745        LONG lang) = 0;
 7746
 7747    virtual void STDMETHODCALLTYPE StatusChange(
 7748        ) = 0;
 7749
 7750    virtual void STDMETHODCALLTYPE ScriptCommand(
 7751        BSTR type,
 7752        BSTR param) = 0;
 7753
 7754    virtual void STDMETHODCALLTYPE NewStream(
 7755        ) = 0;
 7756
 7757    virtual void STDMETHODCALLTYPE Disconnect(
 7758        LONG result) = 0;
 7759
 7760    virtual void STDMETHODCALLTYPE Buffering(
 7761        VARIANT_BOOL start) = 0;
 7762
 7763    virtual void STDMETHODCALLTYPE Error(
 7764        ) = 0;
 7765
 7766    virtual void STDMETHODCALLTYPE Warning(
 7767        LONG warning,
 7768        LONG param,
 7769        BSTR description) = 0;
 7770
 7771    virtual void STDMETHODCALLTYPE EndOfStream(
 7772        LONG result) = 0;
 7773
 7774    virtual void STDMETHODCALLTYPE PositionChange(
 7775        double old_position,
 7776        double new_position) = 0;
 7777
 7778    virtual void STDMETHODCALLTYPE MarkerHit(
 7779        LONG marker) = 0;
 7780
 7781    virtual void STDMETHODCALLTYPE DurationUnitChange(
 7782        LONG duration) = 0;
 7783
 7784    virtual void STDMETHODCALLTYPE CdromMediaChange(
 7785        LONG num) = 0;
 7786
 7787    virtual void STDMETHODCALLTYPE PlaylistChange(
 7788        IDispatch *playlist,
 7789        WMPPlaylistChangeEventType change) = 0;
 7790
 7791    virtual void STDMETHODCALLTYPE CurrentPlaylistChange(
 7792        WMPPlaylistChangeEventType change) = 0;
 7793
 7794    virtual void STDMETHODCALLTYPE CurrentPlaylistItemAvailable(
 7795        BSTR item) = 0;
 7796
 7797    virtual void STDMETHODCALLTYPE MediaChange(
 7798        IDispatch *item) = 0;
 7799
 7800    virtual void STDMETHODCALLTYPE CurrentMediaItemAvailable(
 7801        BSTR name) = 0;
 7802
 7803    virtual void STDMETHODCALLTYPE CurrentItemChange(
 7804        IDispatch *media) = 0;
 7805
 7806    virtual void STDMETHODCALLTYPE MediaCollectionChange(
 7807        ) = 0;
 7808
 7809    virtual void STDMETHODCALLTYPE MediaCollectionAttributeStringAdded(
 7810        BSTR name,
 7811        BSTR val) = 0;
 7812
 7813    virtual void STDMETHODCALLTYPE MediaCollectionAttributeStringRemoved(
 7814        BSTR name,
 7815        BSTR val) = 0;
 7816
 7817    virtual void STDMETHODCALLTYPE MediaCollectionAttributeStringChanged(
 7818        BSTR name,
 7819        BSTR old_val,
 7820        BSTR new_val) = 0;
 7821
 7822    virtual void STDMETHODCALLTYPE PlaylistCollectionChange(
 7823        ) = 0;
 7824
 7825    virtual void STDMETHODCALLTYPE PlaylistCollectionPlaylistAdded(
 7826        BSTR name) = 0;
 7827
 7828    virtual void STDMETHODCALLTYPE PlaylistCollectionPlaylistRemoved(
 7829        BSTR name) = 0;
 7830
 7831    virtual void STDMETHODCALLTYPE PlaylistCollectionPlaylistSetAsDeleted(
 7832        BSTR name,
 7833        VARIANT_BOOL deleted) = 0;
 7834
 7835    virtual void STDMETHODCALLTYPE ModeChange(
 7836        BSTR ModeName,
 7837        VARIANT_BOOL value) = 0;
 7838
 7839    virtual void STDMETHODCALLTYPE MediaError(
 7840        IDispatch *media) = 0;
 7841
 7842    virtual void STDMETHODCALLTYPE OpenPlaylistSwitch(
 7843        IDispatch *item) = 0;
 7844
 7845    virtual void STDMETHODCALLTYPE DomainChange(
 7846        BSTR domain) = 0;
 7847
 7848    virtual void STDMETHODCALLTYPE SwitchedToPlayerApplication(
 7849        ) = 0;
 7850
 7851    virtual void STDMETHODCALLTYPE SwitchedToControl(
 7852        ) = 0;
 7853
 7854    virtual void STDMETHODCALLTYPE PlayerDockedStateChange(
 7855        ) = 0;
 7856
 7857    virtual void STDMETHODCALLTYPE PlayerReconnect(
 7858        ) = 0;
 7859
 7860    virtual void STDMETHODCALLTYPE Click(
 7861        short button,
 7862        short shift_state,
 7863        LONG x,
 7864        LONG y) = 0;
 7865
 7866    virtual void STDMETHODCALLTYPE DoubleClick(
 7867        short button,
 7868        short shift_state,
 7869        LONG fX,
 7870        LONG fY) = 0;
 7871
 7872    virtual void STDMETHODCALLTYPE KeyDown(
 7873        short keycode,
 7874        short shift_state) = 0;
 7875
 7876    virtual void STDMETHODCALLTYPE KeyPress(
 7877        short ascii) = 0;
 7878
 7879    virtual void STDMETHODCALLTYPE KeyUp(
 7880        short keycode,
 7881        short shift_state) = 0;
 7882
 7883    virtual void STDMETHODCALLTYPE MouseDown(
 7884        short button,
 7885        short nShiftState,
 7886        LONG x,
 7887        LONG y) = 0;
 7888
 7889    virtual void STDMETHODCALLTYPE MouseMove(
 7890        short button,
 7891        short shift_state,
 7892        LONG x,
 7893        LONG y) = 0;
 7894
 7895    virtual void STDMETHODCALLTYPE MouseUp(
 7896        short button,
 7897        short shift_state,
 7898        LONG x,
 7899        LONG y) = 0;
 7900
 7901};
 7902#ifdef __CRT_UUID_DECL
 7903__CRT_UUID_DECL(IWMPEvents, 0x19a6627b, 0xda9e, 0x47c1, 0xbb,0x23, 0x00,0xb5,0xe6,0x68,0x23,0x6a)
 7904#endif
 7905#else
 7906typedef struct IWMPEventsVtbl {
 7907    BEGIN_INTERFACE
 7908
 7909    /*** IUnknown methods ***/
 7910    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 7911        IWMPEvents *This,
 7912        REFIID riid,
 7913        void **ppvObject);
 7914
 7915    ULONG (STDMETHODCALLTYPE *AddRef)(
 7916        IWMPEvents *This);
 7917
 7918    ULONG (STDMETHODCALLTYPE *Release)(
 7919        IWMPEvents *This);
 7920
 7921    /*** IWMPEvents methods ***/
 7922    void (STDMETHODCALLTYPE *OpenStateChange)(
 7923        IWMPEvents *This,
 7924        LONG state);
 7925
 7926    void (STDMETHODCALLTYPE *PlayStateChange)(
 7927        IWMPEvents *This,
 7928        LONG state);
 7929
 7930    void (STDMETHODCALLTYPE *AudioLanguageChange)(
 7931        IWMPEvents *This,
 7932        LONG lang);
 7933
 7934    void (STDMETHODCALLTYPE *StatusChange)(
 7935        IWMPEvents *This);
 7936
 7937    void (STDMETHODCALLTYPE *ScriptCommand)(
 7938        IWMPEvents *This,
 7939        BSTR type,
 7940        BSTR param);
 7941
 7942    void (STDMETHODCALLTYPE *NewStream)(
 7943        IWMPEvents *This);
 7944
 7945    void (STDMETHODCALLTYPE *Disconnect)(
 7946        IWMPEvents *This,
 7947        LONG result);
 7948
 7949    void (STDMETHODCALLTYPE *Buffering)(
 7950        IWMPEvents *This,
 7951        VARIANT_BOOL start);
 7952
 7953    void (STDMETHODCALLTYPE *Error)(
 7954        IWMPEvents *This);
 7955
 7956    void (STDMETHODCALLTYPE *Warning)(
 7957        IWMPEvents *This,
 7958        LONG warning,
 7959        LONG param,
 7960        BSTR description);
 7961
 7962    void (STDMETHODCALLTYPE *EndOfStream)(
 7963        IWMPEvents *This,
 7964        LONG result);
 7965
 7966    void (STDMETHODCALLTYPE *PositionChange)(
 7967        IWMPEvents *This,
 7968        double old_position,
 7969        double new_position);
 7970
 7971    void (STDMETHODCALLTYPE *MarkerHit)(
 7972        IWMPEvents *This,
 7973        LONG marker);
 7974
 7975    void (STDMETHODCALLTYPE *DurationUnitChange)(
 7976        IWMPEvents *This,
 7977        LONG duration);
 7978
 7979    void (STDMETHODCALLTYPE *CdromMediaChange)(
 7980        IWMPEvents *This,
 7981        LONG num);
 7982
 7983    void (STDMETHODCALLTYPE *PlaylistChange)(
 7984        IWMPEvents *This,
 7985        IDispatch *playlist,
 7986        WMPPlaylistChangeEventType change);
 7987
 7988    void (STDMETHODCALLTYPE *CurrentPlaylistChange)(
 7989        IWMPEvents *This,
 7990        WMPPlaylistChangeEventType change);
 7991
 7992    void (STDMETHODCALLTYPE *CurrentPlaylistItemAvailable)(
 7993        IWMPEvents *This,
 7994        BSTR item);
 7995
 7996    void (STDMETHODCALLTYPE *MediaChange)(
 7997        IWMPEvents *This,
 7998        IDispatch *item);
 7999
 8000    void (STDMETHODCALLTYPE *CurrentMediaItemAvailable)(
 8001        IWMPEvents *This,
 8002        BSTR name);
 8003
 8004    void (STDMETHODCALLTYPE *CurrentItemChange)(
 8005        IWMPEvents *This,
 8006        IDispatch *media);
 8007
 8008    void (STDMETHODCALLTYPE *MediaCollectionChange)(
 8009        IWMPEvents *This);
 8010
 8011    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringAdded)(
 8012        IWMPEvents *This,
 8013        BSTR name,
 8014        BSTR val);
 8015
 8016    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringRemoved)(
 8017        IWMPEvents *This,
 8018        BSTR name,
 8019        BSTR val);
 8020
 8021    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringChanged)(
 8022        IWMPEvents *This,
 8023        BSTR name,
 8024        BSTR old_val,
 8025        BSTR new_val);
 8026
 8027    void (STDMETHODCALLTYPE *PlaylistCollectionChange)(
 8028        IWMPEvents *This);
 8029
 8030    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistAdded)(
 8031        IWMPEvents *This,
 8032        BSTR name);
 8033
 8034    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistRemoved)(
 8035        IWMPEvents *This,
 8036        BSTR name);
 8037
 8038    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistSetAsDeleted)(
 8039        IWMPEvents *This,
 8040        BSTR name,
 8041        VARIANT_BOOL deleted);
 8042
 8043    void (STDMETHODCALLTYPE *ModeChange)(
 8044        IWMPEvents *This,
 8045        BSTR ModeName,
 8046        VARIANT_BOOL value);
 8047
 8048    void (STDMETHODCALLTYPE *MediaError)(
 8049        IWMPEvents *This,
 8050        IDispatch *media);
 8051
 8052    void (STDMETHODCALLTYPE *OpenPlaylistSwitch)(
 8053        IWMPEvents *This,
 8054        IDispatch *item);
 8055
 8056    void (STDMETHODCALLTYPE *DomainChange)(
 8057        IWMPEvents *This,
 8058        BSTR domain);
 8059
 8060    void (STDMETHODCALLTYPE *SwitchedToPlayerApplication)(
 8061        IWMPEvents *This);
 8062
 8063    void (STDMETHODCALLTYPE *SwitchedToControl)(
 8064        IWMPEvents *This);
 8065
 8066    void (STDMETHODCALLTYPE *PlayerDockedStateChange)(
 8067        IWMPEvents *This);
 8068
 8069    void (STDMETHODCALLTYPE *PlayerReconnect)(
 8070        IWMPEvents *This);
 8071
 8072    void (STDMETHODCALLTYPE *Click)(
 8073        IWMPEvents *This,
 8074        short button,
 8075        short shift_state,
 8076        LONG x,
 8077        LONG y);
 8078
 8079    void (STDMETHODCALLTYPE *DoubleClick)(
 8080        IWMPEvents *This,
 8081        short button,
 8082        short shift_state,
 8083        LONG fX,
 8084        LONG fY);
 8085
 8086    void (STDMETHODCALLTYPE *KeyDown)(
 8087        IWMPEvents *This,
 8088        short keycode,
 8089        short shift_state);
 8090
 8091    void (STDMETHODCALLTYPE *KeyPress)(
 8092        IWMPEvents *This,
 8093        short ascii);
 8094
 8095    void (STDMETHODCALLTYPE *KeyUp)(
 8096        IWMPEvents *This,
 8097        short keycode,
 8098        short shift_state);
 8099
 8100    void (STDMETHODCALLTYPE *MouseDown)(
 8101        IWMPEvents *This,
 8102        short button,
 8103        short nShiftState,
 8104        LONG x,
 8105        LONG y);
 8106
 8107    void (STDMETHODCALLTYPE *MouseMove)(
 8108        IWMPEvents *This,
 8109        short button,
 8110        short shift_state,
 8111        LONG x,
 8112        LONG y);
 8113
 8114    void (STDMETHODCALLTYPE *MouseUp)(
 8115        IWMPEvents *This,
 8116        short button,
 8117        short shift_state,
 8118        LONG x,
 8119        LONG y);
 8120
 8121    END_INTERFACE
 8122} IWMPEventsVtbl;
 8123
 8124interface IWMPEvents {
 8125    CONST_VTBL IWMPEventsVtbl* lpVtbl;
 8126};
 8127
 8128#ifdef COBJMACROS
 8129#ifndef WIDL_C_INLINE_WRAPPERS
 8130/*** IUnknown methods ***/
 8131#define IWMPEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8132#define IWMPEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
 8133#define IWMPEvents_Release(This) (This)->lpVtbl->Release(This)
 8134/*** IWMPEvents methods ***/
 8135#define IWMPEvents_OpenStateChange(This,state) (This)->lpVtbl->OpenStateChange(This,state)
 8136#define IWMPEvents_PlayStateChange(This,state) (This)->lpVtbl->PlayStateChange(This,state)
 8137#define IWMPEvents_AudioLanguageChange(This,lang) (This)->lpVtbl->AudioLanguageChange(This,lang)
 8138#define IWMPEvents_StatusChange(This) (This)->lpVtbl->StatusChange(This)
 8139#define IWMPEvents_ScriptCommand(This,type,param) (This)->lpVtbl->ScriptCommand(This,type,param)
 8140#define IWMPEvents_NewStream(This) (This)->lpVtbl->NewStream(This)
 8141#define IWMPEvents_Disconnect(This,result) (This)->lpVtbl->Disconnect(This,result)
 8142#define IWMPEvents_Buffering(This,start) (This)->lpVtbl->Buffering(This,start)
 8143#define IWMPEvents_Error(This) (This)->lpVtbl->Error(This)
 8144#define IWMPEvents_Warning(This,warning,param,description) (This)->lpVtbl->Warning(This,warning,param,description)
 8145#define IWMPEvents_EndOfStream(This,result) (This)->lpVtbl->EndOfStream(This,result)
 8146#define IWMPEvents_PositionChange(This,old_position,new_position) (This)->lpVtbl->PositionChange(This,old_position,new_position)
 8147#define IWMPEvents_MarkerHit(This,marker) (This)->lpVtbl->MarkerHit(This,marker)
 8148#define IWMPEvents_DurationUnitChange(This,duration) (This)->lpVtbl->DurationUnitChange(This,duration)
 8149#define IWMPEvents_CdromMediaChange(This,num) (This)->lpVtbl->CdromMediaChange(This,num)
 8150#define IWMPEvents_PlaylistChange(This,playlist,change) (This)->lpVtbl->PlaylistChange(This,playlist,change)
 8151#define IWMPEvents_CurrentPlaylistChange(This,change) (This)->lpVtbl->CurrentPlaylistChange(This,change)
 8152#define IWMPEvents_CurrentPlaylistItemAvailable(This,item) (This)->lpVtbl->CurrentPlaylistItemAvailable(This,item)
 8153#define IWMPEvents_MediaChange(This,item) (This)->lpVtbl->MediaChange(This,item)
 8154#define IWMPEvents_CurrentMediaItemAvailable(This,name) (This)->lpVtbl->CurrentMediaItemAvailable(This,name)
 8155#define IWMPEvents_CurrentItemChange(This,media) (This)->lpVtbl->CurrentItemChange(This,media)
 8156#define IWMPEvents_MediaCollectionChange(This) (This)->lpVtbl->MediaCollectionChange(This)
 8157#define IWMPEvents_MediaCollectionAttributeStringAdded(This,name,val) (This)->lpVtbl->MediaCollectionAttributeStringAdded(This,name,val)
 8158#define IWMPEvents_MediaCollectionAttributeStringRemoved(This,name,val) (This)->lpVtbl->MediaCollectionAttributeStringRemoved(This,name,val)
 8159#define IWMPEvents_MediaCollectionAttributeStringChanged(This,name,old_val,new_val) (This)->lpVtbl->MediaCollectionAttributeStringChanged(This,name,old_val,new_val)
 8160#define IWMPEvents_PlaylistCollectionChange(This) (This)->lpVtbl->PlaylistCollectionChange(This)
 8161#define IWMPEvents_PlaylistCollectionPlaylistAdded(This,name) (This)->lpVtbl->PlaylistCollectionPlaylistAdded(This,name)
 8162#define IWMPEvents_PlaylistCollectionPlaylistRemoved(This,name) (This)->lpVtbl->PlaylistCollectionPlaylistRemoved(This,name)
 8163#define IWMPEvents_PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted) (This)->lpVtbl->PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted)
 8164#define IWMPEvents_ModeChange(This,ModeName,value) (This)->lpVtbl->ModeChange(This,ModeName,value)
 8165#define IWMPEvents_MediaError(This,media) (This)->lpVtbl->MediaError(This,media)
 8166#define IWMPEvents_OpenPlaylistSwitch(This,item) (This)->lpVtbl->OpenPlaylistSwitch(This,item)
 8167#define IWMPEvents_DomainChange(This,domain) (This)->lpVtbl->DomainChange(This,domain)
 8168#define IWMPEvents_SwitchedToPlayerApplication(This) (This)->lpVtbl->SwitchedToPlayerApplication(This)
 8169#define IWMPEvents_SwitchedToControl(This) (This)->lpVtbl->SwitchedToControl(This)
 8170#define IWMPEvents_PlayerDockedStateChange(This) (This)->lpVtbl->PlayerDockedStateChange(This)
 8171#define IWMPEvents_PlayerReconnect(This) (This)->lpVtbl->PlayerReconnect(This)
 8172#define IWMPEvents_Click(This,button,shift_state,x,y) (This)->lpVtbl->Click(This,button,shift_state,x,y)
 8173#define IWMPEvents_DoubleClick(This,button,shift_state,fX,fY) (This)->lpVtbl->DoubleClick(This,button,shift_state,fX,fY)
 8174#define IWMPEvents_KeyDown(This,keycode,shift_state) (This)->lpVtbl->KeyDown(This,keycode,shift_state)
 8175#define IWMPEvents_KeyPress(This,ascii) (This)->lpVtbl->KeyPress(This,ascii)
 8176#define IWMPEvents_KeyUp(This,keycode,shift_state) (This)->lpVtbl->KeyUp(This,keycode,shift_state)
 8177#define IWMPEvents_MouseDown(This,button,nShiftState,x,y) (This)->lpVtbl->MouseDown(This,button,nShiftState,x,y)
 8178#define IWMPEvents_MouseMove(This,button,shift_state,x,y) (This)->lpVtbl->MouseMove(This,button,shift_state,x,y)
 8179#define IWMPEvents_MouseUp(This,button,shift_state,x,y) (This)->lpVtbl->MouseUp(This,button,shift_state,x,y)
 8180#else
 8181/*** IUnknown methods ***/
 8182static inline HRESULT IWMPEvents_QueryInterface(IWMPEvents* This,REFIID riid,void **ppvObject) {
 8183    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8184}
 8185static inline ULONG IWMPEvents_AddRef(IWMPEvents* This) {
 8186    return This->lpVtbl->AddRef(This);
 8187}
 8188static inline ULONG IWMPEvents_Release(IWMPEvents* This) {
 8189    return This->lpVtbl->Release(This);
 8190}
 8191/*** IWMPEvents methods ***/
 8192static inline void IWMPEvents_OpenStateChange(IWMPEvents* This,LONG state) {
 8193    This->lpVtbl->OpenStateChange(This,state);
 8194}
 8195static inline void IWMPEvents_PlayStateChange(IWMPEvents* This,LONG state) {
 8196    This->lpVtbl->PlayStateChange(This,state);
 8197}
 8198static inline void IWMPEvents_AudioLanguageChange(IWMPEvents* This,LONG lang) {
 8199    This->lpVtbl->AudioLanguageChange(This,lang);
 8200}
 8201static inline void IWMPEvents_StatusChange(IWMPEvents* This) {
 8202    This->lpVtbl->StatusChange(This);
 8203}
 8204static inline void IWMPEvents_ScriptCommand(IWMPEvents* This,BSTR type,BSTR param) {
 8205    This->lpVtbl->ScriptCommand(This,type,param);
 8206}
 8207static inline void IWMPEvents_NewStream(IWMPEvents* This) {
 8208    This->lpVtbl->NewStream(This);
 8209}
 8210static inline void IWMPEvents_Disconnect(IWMPEvents* This,LONG result) {
 8211    This->lpVtbl->Disconnect(This,result);
 8212}
 8213static inline void IWMPEvents_Buffering(IWMPEvents* This,VARIANT_BOOL start) {
 8214    This->lpVtbl->Buffering(This,start);
 8215}
 8216static inline void IWMPEvents_Error(IWMPEvents* This) {
 8217    This->lpVtbl->Error(This);
 8218}
 8219static inline void IWMPEvents_Warning(IWMPEvents* This,LONG warning,LONG param,BSTR description) {
 8220    This->lpVtbl->Warning(This,warning,param,description);
 8221}
 8222static inline void IWMPEvents_EndOfStream(IWMPEvents* This,LONG result) {
 8223    This->lpVtbl->EndOfStream(This,result);
 8224}
 8225static inline void IWMPEvents_PositionChange(IWMPEvents* This,double old_position,double new_position) {
 8226    This->lpVtbl->PositionChange(This,old_position,new_position);
 8227}
 8228static inline void IWMPEvents_MarkerHit(IWMPEvents* This,LONG marker) {
 8229    This->lpVtbl->MarkerHit(This,marker);
 8230}
 8231static inline void IWMPEvents_DurationUnitChange(IWMPEvents* This,LONG duration) {
 8232    This->lpVtbl->DurationUnitChange(This,duration);
 8233}
 8234static inline void IWMPEvents_CdromMediaChange(IWMPEvents* This,LONG num) {
 8235    This->lpVtbl->CdromMediaChange(This,num);
 8236}
 8237static inline void IWMPEvents_PlaylistChange(IWMPEvents* This,IDispatch *playlist,WMPPlaylistChangeEventType change) {
 8238    This->lpVtbl->PlaylistChange(This,playlist,change);
 8239}
 8240static inline void IWMPEvents_CurrentPlaylistChange(IWMPEvents* This,WMPPlaylistChangeEventType change) {
 8241    This->lpVtbl->CurrentPlaylistChange(This,change);
 8242}
 8243static inline void IWMPEvents_CurrentPlaylistItemAvailable(IWMPEvents* This,BSTR item) {
 8244    This->lpVtbl->CurrentPlaylistItemAvailable(This,item);
 8245}
 8246static inline void IWMPEvents_MediaChange(IWMPEvents* This,IDispatch *item) {
 8247    This->lpVtbl->MediaChange(This,item);
 8248}
 8249static inline void IWMPEvents_CurrentMediaItemAvailable(IWMPEvents* This,BSTR name) {
 8250    This->lpVtbl->CurrentMediaItemAvailable(This,name);
 8251}
 8252static inline void IWMPEvents_CurrentItemChange(IWMPEvents* This,IDispatch *media) {
 8253    This->lpVtbl->CurrentItemChange(This,media);
 8254}
 8255static inline void IWMPEvents_MediaCollectionChange(IWMPEvents* This) {
 8256    This->lpVtbl->MediaCollectionChange(This);
 8257}
 8258static inline void IWMPEvents_MediaCollectionAttributeStringAdded(IWMPEvents* This,BSTR name,BSTR val) {
 8259    This->lpVtbl->MediaCollectionAttributeStringAdded(This,name,val);
 8260}
 8261static inline void IWMPEvents_MediaCollectionAttributeStringRemoved(IWMPEvents* This,BSTR name,BSTR val) {
 8262    This->lpVtbl->MediaCollectionAttributeStringRemoved(This,name,val);
 8263}
 8264static inline void IWMPEvents_MediaCollectionAttributeStringChanged(IWMPEvents* This,BSTR name,BSTR old_val,BSTR new_val) {
 8265    This->lpVtbl->MediaCollectionAttributeStringChanged(This,name,old_val,new_val);
 8266}
 8267static inline void IWMPEvents_PlaylistCollectionChange(IWMPEvents* This) {
 8268    This->lpVtbl->PlaylistCollectionChange(This);
 8269}
 8270static inline void IWMPEvents_PlaylistCollectionPlaylistAdded(IWMPEvents* This,BSTR name) {
 8271    This->lpVtbl->PlaylistCollectionPlaylistAdded(This,name);
 8272}
 8273static inline void IWMPEvents_PlaylistCollectionPlaylistRemoved(IWMPEvents* This,BSTR name) {
 8274    This->lpVtbl->PlaylistCollectionPlaylistRemoved(This,name);
 8275}
 8276static inline void IWMPEvents_PlaylistCollectionPlaylistSetAsDeleted(IWMPEvents* This,BSTR name,VARIANT_BOOL deleted) {
 8277    This->lpVtbl->PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted);
 8278}
 8279static inline void IWMPEvents_ModeChange(IWMPEvents* This,BSTR ModeName,VARIANT_BOOL value) {
 8280    This->lpVtbl->ModeChange(This,ModeName,value);
 8281}
 8282static inline void IWMPEvents_MediaError(IWMPEvents* This,IDispatch *media) {
 8283    This->lpVtbl->MediaError(This,media);
 8284}
 8285static inline void IWMPEvents_OpenPlaylistSwitch(IWMPEvents* This,IDispatch *item) {
 8286    This->lpVtbl->OpenPlaylistSwitch(This,item);
 8287}
 8288static inline void IWMPEvents_DomainChange(IWMPEvents* This,BSTR domain) {
 8289    This->lpVtbl->DomainChange(This,domain);
 8290}
 8291static inline void IWMPEvents_SwitchedToPlayerApplication(IWMPEvents* This) {
 8292    This->lpVtbl->SwitchedToPlayerApplication(This);
 8293}
 8294static inline void IWMPEvents_SwitchedToControl(IWMPEvents* This) {
 8295    This->lpVtbl->SwitchedToControl(This);
 8296}
 8297static inline void IWMPEvents_PlayerDockedStateChange(IWMPEvents* This) {
 8298    This->lpVtbl->PlayerDockedStateChange(This);
 8299}
 8300static inline void IWMPEvents_PlayerReconnect(IWMPEvents* This) {
 8301    This->lpVtbl->PlayerReconnect(This);
 8302}
 8303static inline void IWMPEvents_Click(IWMPEvents* This,short button,short shift_state,LONG x,LONG y) {
 8304    This->lpVtbl->Click(This,button,shift_state,x,y);
 8305}
 8306static inline void IWMPEvents_DoubleClick(IWMPEvents* This,short button,short shift_state,LONG fX,LONG fY) {
 8307    This->lpVtbl->DoubleClick(This,button,shift_state,fX,fY);
 8308}
 8309static inline void IWMPEvents_KeyDown(IWMPEvents* This,short keycode,short shift_state) {
 8310    This->lpVtbl->KeyDown(This,keycode,shift_state);
 8311}
 8312static inline void IWMPEvents_KeyPress(IWMPEvents* This,short ascii) {
 8313    This->lpVtbl->KeyPress(This,ascii);
 8314}
 8315static inline void IWMPEvents_KeyUp(IWMPEvents* This,short keycode,short shift_state) {
 8316    This->lpVtbl->KeyUp(This,keycode,shift_state);
 8317}
 8318static inline void IWMPEvents_MouseDown(IWMPEvents* This,short button,short nShiftState,LONG x,LONG y) {
 8319    This->lpVtbl->MouseDown(This,button,nShiftState,x,y);
 8320}
 8321static inline void IWMPEvents_MouseMove(IWMPEvents* This,short button,short shift_state,LONG x,LONG y) {
 8322    This->lpVtbl->MouseMove(This,button,shift_state,x,y);
 8323}
 8324static inline void IWMPEvents_MouseUp(IWMPEvents* This,short button,short shift_state,LONG x,LONG y) {
 8325    This->lpVtbl->MouseUp(This,button,shift_state,x,y);
 8326}
 8327#endif
 8328#endif
 8329
 8330#endif
 8331
 8332
 8333#endif  /* __IWMPEvents_INTERFACE_DEFINED__ */
 8334
 8335/*****************************************************************************
 8336 * IWMPEvents2 interface
 8337 */
 8338#ifndef __IWMPEvents2_INTERFACE_DEFINED__
 8339#define __IWMPEvents2_INTERFACE_DEFINED__
 8340
 8341DEFINE_GUID(IID_IWMPEvents2, 0x1e7601fa, 0x47ea, 0x4107, 0x9e,0xa9, 0x90,0x04,0xed,0x96,0x84,0xff);
 8342#if defined(__cplusplus) && !defined(CINTERFACE)
 8343MIDL_INTERFACE("1e7601fa-47ea-4107-9ea9-9004ed9684ff")
 8344IWMPEvents2 : public IWMPEvents
 8345{
 8346    virtual void STDMETHODCALLTYPE DeviceConnect(
 8347        IWMPSyncDevice *device) = 0;
 8348
 8349    virtual void STDMETHODCALLTYPE DeviceDisconnect(
 8350        IWMPSyncDevice *device) = 0;
 8351
 8352    virtual void STDMETHODCALLTYPE DeviceStatusChange(
 8353        IWMPSyncDevice *device,
 8354        WMPDeviceStatus status) = 0;
 8355
 8356    virtual void STDMETHODCALLTYPE DeviceSyncStateChange(
 8357        IWMPSyncDevice *device,
 8358        WMPSyncState state) = 0;
 8359
 8360    virtual void STDMETHODCALLTYPE DeviceSyncError(
 8361        IWMPSyncDevice *device,
 8362        IDispatch *media) = 0;
 8363
 8364    virtual void STDMETHODCALLTYPE CreatePartnershipComplete(
 8365        IWMPSyncDevice *device,
 8366        HRESULT result) = 0;
 8367
 8368};
 8369#ifdef __CRT_UUID_DECL
 8370__CRT_UUID_DECL(IWMPEvents2, 0x1e7601fa, 0x47ea, 0x4107, 0x9e,0xa9, 0x90,0x04,0xed,0x96,0x84,0xff)
 8371#endif
 8372#else
 8373typedef struct IWMPEvents2Vtbl {
 8374    BEGIN_INTERFACE
 8375
 8376    /*** IUnknown methods ***/
 8377    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8378        IWMPEvents2 *This,
 8379        REFIID riid,
 8380        void **ppvObject);
 8381
 8382    ULONG (STDMETHODCALLTYPE *AddRef)(
 8383        IWMPEvents2 *This);
 8384
 8385    ULONG (STDMETHODCALLTYPE *Release)(
 8386        IWMPEvents2 *This);
 8387
 8388    /*** IWMPEvents methods ***/
 8389    void (STDMETHODCALLTYPE *OpenStateChange)(
 8390        IWMPEvents2 *This,
 8391        LONG state);
 8392
 8393    void (STDMETHODCALLTYPE *PlayStateChange)(
 8394        IWMPEvents2 *This,
 8395        LONG state);
 8396
 8397    void (STDMETHODCALLTYPE *AudioLanguageChange)(
 8398        IWMPEvents2 *This,
 8399        LONG lang);
 8400
 8401    void (STDMETHODCALLTYPE *StatusChange)(
 8402        IWMPEvents2 *This);
 8403
 8404    void (STDMETHODCALLTYPE *ScriptCommand)(
 8405        IWMPEvents2 *This,
 8406        BSTR type,
 8407        BSTR param);
 8408
 8409    void (STDMETHODCALLTYPE *NewStream)(
 8410        IWMPEvents2 *This);
 8411
 8412    void (STDMETHODCALLTYPE *Disconnect)(
 8413        IWMPEvents2 *This,
 8414        LONG result);
 8415
 8416    void (STDMETHODCALLTYPE *Buffering)(
 8417        IWMPEvents2 *This,
 8418        VARIANT_BOOL start);
 8419
 8420    void (STDMETHODCALLTYPE *Error)(
 8421        IWMPEvents2 *This);
 8422
 8423    void (STDMETHODCALLTYPE *Warning)(
 8424        IWMPEvents2 *This,
 8425        LONG warning,
 8426        LONG param,
 8427        BSTR description);
 8428
 8429    void (STDMETHODCALLTYPE *EndOfStream)(
 8430        IWMPEvents2 *This,
 8431        LONG result);
 8432
 8433    void (STDMETHODCALLTYPE *PositionChange)(
 8434        IWMPEvents2 *This,
 8435        double old_position,
 8436        double new_position);
 8437
 8438    void (STDMETHODCALLTYPE *MarkerHit)(
 8439        IWMPEvents2 *This,
 8440        LONG marker);
 8441
 8442    void (STDMETHODCALLTYPE *DurationUnitChange)(
 8443        IWMPEvents2 *This,
 8444        LONG duration);
 8445
 8446    void (STDMETHODCALLTYPE *CdromMediaChange)(
 8447        IWMPEvents2 *This,
 8448        LONG num);
 8449
 8450    void (STDMETHODCALLTYPE *PlaylistChange)(
 8451        IWMPEvents2 *This,
 8452        IDispatch *playlist,
 8453        WMPPlaylistChangeEventType change);
 8454
 8455    void (STDMETHODCALLTYPE *CurrentPlaylistChange)(
 8456        IWMPEvents2 *This,
 8457        WMPPlaylistChangeEventType change);
 8458
 8459    void (STDMETHODCALLTYPE *CurrentPlaylistItemAvailable)(
 8460        IWMPEvents2 *This,
 8461        BSTR item);
 8462
 8463    void (STDMETHODCALLTYPE *MediaChange)(
 8464        IWMPEvents2 *This,
 8465        IDispatch *item);
 8466
 8467    void (STDMETHODCALLTYPE *CurrentMediaItemAvailable)(
 8468        IWMPEvents2 *This,
 8469        BSTR name);
 8470
 8471    void (STDMETHODCALLTYPE *CurrentItemChange)(
 8472        IWMPEvents2 *This,
 8473        IDispatch *media);
 8474
 8475    void (STDMETHODCALLTYPE *MediaCollectionChange)(
 8476        IWMPEvents2 *This);
 8477
 8478    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringAdded)(
 8479        IWMPEvents2 *This,
 8480        BSTR name,
 8481        BSTR val);
 8482
 8483    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringRemoved)(
 8484        IWMPEvents2 *This,
 8485        BSTR name,
 8486        BSTR val);
 8487
 8488    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringChanged)(
 8489        IWMPEvents2 *This,
 8490        BSTR name,
 8491        BSTR old_val,
 8492        BSTR new_val);
 8493
 8494    void (STDMETHODCALLTYPE *PlaylistCollectionChange)(
 8495        IWMPEvents2 *This);
 8496
 8497    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistAdded)(
 8498        IWMPEvents2 *This,
 8499        BSTR name);
 8500
 8501    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistRemoved)(
 8502        IWMPEvents2 *This,
 8503        BSTR name);
 8504
 8505    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistSetAsDeleted)(
 8506        IWMPEvents2 *This,
 8507        BSTR name,
 8508        VARIANT_BOOL deleted);
 8509
 8510    void (STDMETHODCALLTYPE *ModeChange)(
 8511        IWMPEvents2 *This,
 8512        BSTR ModeName,
 8513        VARIANT_BOOL value);
 8514
 8515    void (STDMETHODCALLTYPE *MediaError)(
 8516        IWMPEvents2 *This,
 8517        IDispatch *media);
 8518
 8519    void (STDMETHODCALLTYPE *OpenPlaylistSwitch)(
 8520        IWMPEvents2 *This,
 8521        IDispatch *item);
 8522
 8523    void (STDMETHODCALLTYPE *DomainChange)(
 8524        IWMPEvents2 *This,
 8525        BSTR domain);
 8526
 8527    void (STDMETHODCALLTYPE *SwitchedToPlayerApplication)(
 8528        IWMPEvents2 *This);
 8529
 8530    void (STDMETHODCALLTYPE *SwitchedToControl)(
 8531        IWMPEvents2 *This);
 8532
 8533    void (STDMETHODCALLTYPE *PlayerDockedStateChange)(
 8534        IWMPEvents2 *This);
 8535
 8536    void (STDMETHODCALLTYPE *PlayerReconnect)(
 8537        IWMPEvents2 *This);
 8538
 8539    void (STDMETHODCALLTYPE *Click)(
 8540        IWMPEvents2 *This,
 8541        short button,
 8542        short shift_state,
 8543        LONG x,
 8544        LONG y);
 8545
 8546    void (STDMETHODCALLTYPE *DoubleClick)(
 8547        IWMPEvents2 *This,
 8548        short button,
 8549        short shift_state,
 8550        LONG fX,
 8551        LONG fY);
 8552
 8553    void (STDMETHODCALLTYPE *KeyDown)(
 8554        IWMPEvents2 *This,
 8555        short keycode,
 8556        short shift_state);
 8557
 8558    void (STDMETHODCALLTYPE *KeyPress)(
 8559        IWMPEvents2 *This,
 8560        short ascii);
 8561
 8562    void (STDMETHODCALLTYPE *KeyUp)(
 8563        IWMPEvents2 *This,
 8564        short keycode,
 8565        short shift_state);
 8566
 8567    void (STDMETHODCALLTYPE *MouseDown)(
 8568        IWMPEvents2 *This,
 8569        short button,
 8570        short nShiftState,
 8571        LONG x,
 8572        LONG y);
 8573
 8574    void (STDMETHODCALLTYPE *MouseMove)(
 8575        IWMPEvents2 *This,
 8576        short button,
 8577        short shift_state,
 8578        LONG x,
 8579        LONG y);
 8580
 8581    void (STDMETHODCALLTYPE *MouseUp)(
 8582        IWMPEvents2 *This,
 8583        short button,
 8584        short shift_state,
 8585        LONG x,
 8586        LONG y);
 8587
 8588    /*** IWMPEvents2 methods ***/
 8589    void (STDMETHODCALLTYPE *DeviceConnect)(
 8590        IWMPEvents2 *This,
 8591        IWMPSyncDevice *device);
 8592
 8593    void (STDMETHODCALLTYPE *DeviceDisconnect)(
 8594        IWMPEvents2 *This,
 8595        IWMPSyncDevice *device);
 8596
 8597    void (STDMETHODCALLTYPE *DeviceStatusChange)(
 8598        IWMPEvents2 *This,
 8599        IWMPSyncDevice *device,
 8600        WMPDeviceStatus status);
 8601
 8602    void (STDMETHODCALLTYPE *DeviceSyncStateChange)(
 8603        IWMPEvents2 *This,
 8604        IWMPSyncDevice *device,
 8605        WMPSyncState state);
 8606
 8607    void (STDMETHODCALLTYPE *DeviceSyncError)(
 8608        IWMPEvents2 *This,
 8609        IWMPSyncDevice *device,
 8610        IDispatch *media);
 8611
 8612    void (STDMETHODCALLTYPE *CreatePartnershipComplete)(
 8613        IWMPEvents2 *This,
 8614        IWMPSyncDevice *device,
 8615        HRESULT result);
 8616
 8617    END_INTERFACE
 8618} IWMPEvents2Vtbl;
 8619
 8620interface IWMPEvents2 {
 8621    CONST_VTBL IWMPEvents2Vtbl* lpVtbl;
 8622};
 8623
 8624#ifdef COBJMACROS
 8625#ifndef WIDL_C_INLINE_WRAPPERS
 8626/*** IUnknown methods ***/
 8627#define IWMPEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 8628#define IWMPEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
 8629#define IWMPEvents2_Release(This) (This)->lpVtbl->Release(This)
 8630/*** IWMPEvents methods ***/
 8631#define IWMPEvents2_OpenStateChange(This,state) (This)->lpVtbl->OpenStateChange(This,state)
 8632#define IWMPEvents2_PlayStateChange(This,state) (This)->lpVtbl->PlayStateChange(This,state)
 8633#define IWMPEvents2_AudioLanguageChange(This,lang) (This)->lpVtbl->AudioLanguageChange(This,lang)
 8634#define IWMPEvents2_StatusChange(This) (This)->lpVtbl->StatusChange(This)
 8635#define IWMPEvents2_ScriptCommand(This,type,param) (This)->lpVtbl->ScriptCommand(This,type,param)
 8636#define IWMPEvents2_NewStream(This) (This)->lpVtbl->NewStream(This)
 8637#define IWMPEvents2_Disconnect(This,result) (This)->lpVtbl->Disconnect(This,result)
 8638#define IWMPEvents2_Buffering(This,start) (This)->lpVtbl->Buffering(This,start)
 8639#define IWMPEvents2_Error(This) (This)->lpVtbl->Error(This)
 8640#define IWMPEvents2_Warning(This,warning,param,description) (This)->lpVtbl->Warning(This,warning,param,description)
 8641#define IWMPEvents2_EndOfStream(This,result) (This)->lpVtbl->EndOfStream(This,result)
 8642#define IWMPEvents2_PositionChange(This,old_position,new_position) (This)->lpVtbl->PositionChange(This,old_position,new_position)
 8643#define IWMPEvents2_MarkerHit(This,marker) (This)->lpVtbl->MarkerHit(This,marker)
 8644#define IWMPEvents2_DurationUnitChange(This,duration) (This)->lpVtbl->DurationUnitChange(This,duration)
 8645#define IWMPEvents2_CdromMediaChange(This,num) (This)->lpVtbl->CdromMediaChange(This,num)
 8646#define IWMPEvents2_PlaylistChange(This,playlist,change) (This)->lpVtbl->PlaylistChange(This,playlist,change)
 8647#define IWMPEvents2_CurrentPlaylistChange(This,change) (This)->lpVtbl->CurrentPlaylistChange(This,change)
 8648#define IWMPEvents2_CurrentPlaylistItemAvailable(This,item) (This)->lpVtbl->CurrentPlaylistItemAvailable(This,item)
 8649#define IWMPEvents2_MediaChange(This,item) (This)->lpVtbl->MediaChange(This,item)
 8650#define IWMPEvents2_CurrentMediaItemAvailable(This,name) (This)->lpVtbl->CurrentMediaItemAvailable(This,name)
 8651#define IWMPEvents2_CurrentItemChange(This,media) (This)->lpVtbl->CurrentItemChange(This,media)
 8652#define IWMPEvents2_MediaCollectionChange(This) (This)->lpVtbl->MediaCollectionChange(This)
 8653#define IWMPEvents2_MediaCollectionAttributeStringAdded(This,name,val) (This)->lpVtbl->MediaCollectionAttributeStringAdded(This,name,val)
 8654#define IWMPEvents2_MediaCollectionAttributeStringRemoved(This,name,val) (This)->lpVtbl->MediaCollectionAttributeStringRemoved(This,name,val)
 8655#define IWMPEvents2_MediaCollectionAttributeStringChanged(This,name,old_val,new_val) (This)->lpVtbl->MediaCollectionAttributeStringChanged(This,name,old_val,new_val)
 8656#define IWMPEvents2_PlaylistCollectionChange(This) (This)->lpVtbl->PlaylistCollectionChange(This)
 8657#define IWMPEvents2_PlaylistCollectionPlaylistAdded(This,name) (This)->lpVtbl->PlaylistCollectionPlaylistAdded(This,name)
 8658#define IWMPEvents2_PlaylistCollectionPlaylistRemoved(This,name) (This)->lpVtbl->PlaylistCollectionPlaylistRemoved(This,name)
 8659#define IWMPEvents2_PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted) (This)->lpVtbl->PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted)
 8660#define IWMPEvents2_ModeChange(This,ModeName,value) (This)->lpVtbl->ModeChange(This,ModeName,value)
 8661#define IWMPEvents2_MediaError(This,media) (This)->lpVtbl->MediaError(This,media)
 8662#define IWMPEvents2_OpenPlaylistSwitch(This,item) (This)->lpVtbl->OpenPlaylistSwitch(This,item)
 8663#define IWMPEvents2_DomainChange(This,domain) (This)->lpVtbl->DomainChange(This,domain)
 8664#define IWMPEvents2_SwitchedToPlayerApplication(This) (This)->lpVtbl->SwitchedToPlayerApplication(This)
 8665#define IWMPEvents2_SwitchedToControl(This) (This)->lpVtbl->SwitchedToControl(This)
 8666#define IWMPEvents2_PlayerDockedStateChange(This) (This)->lpVtbl->PlayerDockedStateChange(This)
 8667#define IWMPEvents2_PlayerReconnect(This) (This)->lpVtbl->PlayerReconnect(This)
 8668#define IWMPEvents2_Click(This,button,shift_state,x,y) (This)->lpVtbl->Click(This,button,shift_state,x,y)
 8669#define IWMPEvents2_DoubleClick(This,button,shift_state,fX,fY) (This)->lpVtbl->DoubleClick(This,button,shift_state,fX,fY)
 8670#define IWMPEvents2_KeyDown(This,keycode,shift_state) (This)->lpVtbl->KeyDown(This,keycode,shift_state)
 8671#define IWMPEvents2_KeyPress(This,ascii) (This)->lpVtbl->KeyPress(This,ascii)
 8672#define IWMPEvents2_KeyUp(This,keycode,shift_state) (This)->lpVtbl->KeyUp(This,keycode,shift_state)
 8673#define IWMPEvents2_MouseDown(This,button,nShiftState,x,y) (This)->lpVtbl->MouseDown(This,button,nShiftState,x,y)
 8674#define IWMPEvents2_MouseMove(This,button,shift_state,x,y) (This)->lpVtbl->MouseMove(This,button,shift_state,x,y)
 8675#define IWMPEvents2_MouseUp(This,button,shift_state,x,y) (This)->lpVtbl->MouseUp(This,button,shift_state,x,y)
 8676/*** IWMPEvents2 methods ***/
 8677#define IWMPEvents2_DeviceConnect(This,device) (This)->lpVtbl->DeviceConnect(This,device)
 8678#define IWMPEvents2_DeviceDisconnect(This,device) (This)->lpVtbl->DeviceDisconnect(This,device)
 8679#define IWMPEvents2_DeviceStatusChange(This,device,status) (This)->lpVtbl->DeviceStatusChange(This,device,status)
 8680#define IWMPEvents2_DeviceSyncStateChange(This,device,state) (This)->lpVtbl->DeviceSyncStateChange(This,device,state)
 8681#define IWMPEvents2_DeviceSyncError(This,device,media) (This)->lpVtbl->DeviceSyncError(This,device,media)
 8682#define IWMPEvents2_CreatePartnershipComplete(This,device,result) (This)->lpVtbl->CreatePartnershipComplete(This,device,result)
 8683#else
 8684/*** IUnknown methods ***/
 8685static inline HRESULT IWMPEvents2_QueryInterface(IWMPEvents2* This,REFIID riid,void **ppvObject) {
 8686    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 8687}
 8688static inline ULONG IWMPEvents2_AddRef(IWMPEvents2* This) {
 8689    return This->lpVtbl->AddRef(This);
 8690}
 8691static inline ULONG IWMPEvents2_Release(IWMPEvents2* This) {
 8692    return This->lpVtbl->Release(This);
 8693}
 8694/*** IWMPEvents methods ***/
 8695static inline void IWMPEvents2_OpenStateChange(IWMPEvents2* This,LONG state) {
 8696    This->lpVtbl->OpenStateChange(This,state);
 8697}
 8698static inline void IWMPEvents2_PlayStateChange(IWMPEvents2* This,LONG state) {
 8699    This->lpVtbl->PlayStateChange(This,state);
 8700}
 8701static inline void IWMPEvents2_AudioLanguageChange(IWMPEvents2* This,LONG lang) {
 8702    This->lpVtbl->AudioLanguageChange(This,lang);
 8703}
 8704static inline void IWMPEvents2_StatusChange(IWMPEvents2* This) {
 8705    This->lpVtbl->StatusChange(This);
 8706}
 8707static inline void IWMPEvents2_ScriptCommand(IWMPEvents2* This,BSTR type,BSTR param) {
 8708    This->lpVtbl->ScriptCommand(This,type,param);
 8709}
 8710static inline void IWMPEvents2_NewStream(IWMPEvents2* This) {
 8711    This->lpVtbl->NewStream(This);
 8712}
 8713static inline void IWMPEvents2_Disconnect(IWMPEvents2* This,LONG result) {
 8714    This->lpVtbl->Disconnect(This,result);
 8715}
 8716static inline void IWMPEvents2_Buffering(IWMPEvents2* This,VARIANT_BOOL start) {
 8717    This->lpVtbl->Buffering(This,start);
 8718}
 8719static inline void IWMPEvents2_Error(IWMPEvents2* This) {
 8720    This->lpVtbl->Error(This);
 8721}
 8722static inline void IWMPEvents2_Warning(IWMPEvents2* This,LONG warning,LONG param,BSTR description) {
 8723    This->lpVtbl->Warning(This,warning,param,description);
 8724}
 8725static inline void IWMPEvents2_EndOfStream(IWMPEvents2* This,LONG result) {
 8726    This->lpVtbl->EndOfStream(This,result);
 8727}
 8728static inline void IWMPEvents2_PositionChange(IWMPEvents2* This,double old_position,double new_position) {
 8729    This->lpVtbl->PositionChange(This,old_position,new_position);
 8730}
 8731static inline void IWMPEvents2_MarkerHit(IWMPEvents2* This,LONG marker) {
 8732    This->lpVtbl->MarkerHit(This,marker);
 8733}
 8734static inline void IWMPEvents2_DurationUnitChange(IWMPEvents2* This,LONG duration) {
 8735    This->lpVtbl->DurationUnitChange(This,duration);
 8736}
 8737static inline void IWMPEvents2_CdromMediaChange(IWMPEvents2* This,LONG num) {
 8738    This->lpVtbl->CdromMediaChange(This,num);
 8739}
 8740static inline void IWMPEvents2_PlaylistChange(IWMPEvents2* This,IDispatch *playlist,WMPPlaylistChangeEventType change) {
 8741    This->lpVtbl->PlaylistChange(This,playlist,change);
 8742}
 8743static inline void IWMPEvents2_CurrentPlaylistChange(IWMPEvents2* This,WMPPlaylistChangeEventType change) {
 8744    This->lpVtbl->CurrentPlaylistChange(This,change);
 8745}
 8746static inline void IWMPEvents2_CurrentPlaylistItemAvailable(IWMPEvents2* This,BSTR item) {
 8747    This->lpVtbl->CurrentPlaylistItemAvailable(This,item);
 8748}
 8749static inline void IWMPEvents2_MediaChange(IWMPEvents2* This,IDispatch *item) {
 8750    This->lpVtbl->MediaChange(This,item);
 8751}
 8752static inline void IWMPEvents2_CurrentMediaItemAvailable(IWMPEvents2* This,BSTR name) {
 8753    This->lpVtbl->CurrentMediaItemAvailable(This,name);
 8754}
 8755static inline void IWMPEvents2_CurrentItemChange(IWMPEvents2* This,IDispatch *media) {
 8756    This->lpVtbl->CurrentItemChange(This,media);
 8757}
 8758static inline void IWMPEvents2_MediaCollectionChange(IWMPEvents2* This) {
 8759    This->lpVtbl->MediaCollectionChange(This);
 8760}
 8761static inline void IWMPEvents2_MediaCollectionAttributeStringAdded(IWMPEvents2* This,BSTR name,BSTR val) {
 8762    This->lpVtbl->MediaCollectionAttributeStringAdded(This,name,val);
 8763}
 8764static inline void IWMPEvents2_MediaCollectionAttributeStringRemoved(IWMPEvents2* This,BSTR name,BSTR val) {
 8765    This->lpVtbl->MediaCollectionAttributeStringRemoved(This,name,val);
 8766}
 8767static inline void IWMPEvents2_MediaCollectionAttributeStringChanged(IWMPEvents2* This,BSTR name,BSTR old_val,BSTR new_val) {
 8768    This->lpVtbl->MediaCollectionAttributeStringChanged(This,name,old_val,new_val);
 8769}
 8770static inline void IWMPEvents2_PlaylistCollectionChange(IWMPEvents2* This) {
 8771    This->lpVtbl->PlaylistCollectionChange(This);
 8772}
 8773static inline void IWMPEvents2_PlaylistCollectionPlaylistAdded(IWMPEvents2* This,BSTR name) {
 8774    This->lpVtbl->PlaylistCollectionPlaylistAdded(This,name);
 8775}
 8776static inline void IWMPEvents2_PlaylistCollectionPlaylistRemoved(IWMPEvents2* This,BSTR name) {
 8777    This->lpVtbl->PlaylistCollectionPlaylistRemoved(This,name);
 8778}
 8779static inline void IWMPEvents2_PlaylistCollectionPlaylistSetAsDeleted(IWMPEvents2* This,BSTR name,VARIANT_BOOL deleted) {
 8780    This->lpVtbl->PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted);
 8781}
 8782static inline void IWMPEvents2_ModeChange(IWMPEvents2* This,BSTR ModeName,VARIANT_BOOL value) {
 8783    This->lpVtbl->ModeChange(This,ModeName,value);
 8784}
 8785static inline void IWMPEvents2_MediaError(IWMPEvents2* This,IDispatch *media) {
 8786    This->lpVtbl->MediaError(This,media);
 8787}
 8788static inline void IWMPEvents2_OpenPlaylistSwitch(IWMPEvents2* This,IDispatch *item) {
 8789    This->lpVtbl->OpenPlaylistSwitch(This,item);
 8790}
 8791static inline void IWMPEvents2_DomainChange(IWMPEvents2* This,BSTR domain) {
 8792    This->lpVtbl->DomainChange(This,domain);
 8793}
 8794static inline void IWMPEvents2_SwitchedToPlayerApplication(IWMPEvents2* This) {
 8795    This->lpVtbl->SwitchedToPlayerApplication(This);
 8796}
 8797static inline void IWMPEvents2_SwitchedToControl(IWMPEvents2* This) {
 8798    This->lpVtbl->SwitchedToControl(This);
 8799}
 8800static inline void IWMPEvents2_PlayerDockedStateChange(IWMPEvents2* This) {
 8801    This->lpVtbl->PlayerDockedStateChange(This);
 8802}
 8803static inline void IWMPEvents2_PlayerReconnect(IWMPEvents2* This) {
 8804    This->lpVtbl->PlayerReconnect(This);
 8805}
 8806static inline void IWMPEvents2_Click(IWMPEvents2* This,short button,short shift_state,LONG x,LONG y) {
 8807    This->lpVtbl->Click(This,button,shift_state,x,y);
 8808}
 8809static inline void IWMPEvents2_DoubleClick(IWMPEvents2* This,short button,short shift_state,LONG fX,LONG fY) {
 8810    This->lpVtbl->DoubleClick(This,button,shift_state,fX,fY);
 8811}
 8812static inline void IWMPEvents2_KeyDown(IWMPEvents2* This,short keycode,short shift_state) {
 8813    This->lpVtbl->KeyDown(This,keycode,shift_state);
 8814}
 8815static inline void IWMPEvents2_KeyPress(IWMPEvents2* This,short ascii) {
 8816    This->lpVtbl->KeyPress(This,ascii);
 8817}
 8818static inline void IWMPEvents2_KeyUp(IWMPEvents2* This,short keycode,short shift_state) {
 8819    This->lpVtbl->KeyUp(This,keycode,shift_state);
 8820}
 8821static inline void IWMPEvents2_MouseDown(IWMPEvents2* This,short button,short nShiftState,LONG x,LONG y) {
 8822    This->lpVtbl->MouseDown(This,button,nShiftState,x,y);
 8823}
 8824static inline void IWMPEvents2_MouseMove(IWMPEvents2* This,short button,short shift_state,LONG x,LONG y) {
 8825    This->lpVtbl->MouseMove(This,button,shift_state,x,y);
 8826}
 8827static inline void IWMPEvents2_MouseUp(IWMPEvents2* This,short button,short shift_state,LONG x,LONG y) {
 8828    This->lpVtbl->MouseUp(This,button,shift_state,x,y);
 8829}
 8830/*** IWMPEvents2 methods ***/
 8831static inline void IWMPEvents2_DeviceConnect(IWMPEvents2* This,IWMPSyncDevice *device) {
 8832    This->lpVtbl->DeviceConnect(This,device);
 8833}
 8834static inline void IWMPEvents2_DeviceDisconnect(IWMPEvents2* This,IWMPSyncDevice *device) {
 8835    This->lpVtbl->DeviceDisconnect(This,device);
 8836}
 8837static inline void IWMPEvents2_DeviceStatusChange(IWMPEvents2* This,IWMPSyncDevice *device,WMPDeviceStatus status) {
 8838    This->lpVtbl->DeviceStatusChange(This,device,status);
 8839}
 8840static inline void IWMPEvents2_DeviceSyncStateChange(IWMPEvents2* This,IWMPSyncDevice *device,WMPSyncState state) {
 8841    This->lpVtbl->DeviceSyncStateChange(This,device,state);
 8842}
 8843static inline void IWMPEvents2_DeviceSyncError(IWMPEvents2* This,IWMPSyncDevice *device,IDispatch *media) {
 8844    This->lpVtbl->DeviceSyncError(This,device,media);
 8845}
 8846static inline void IWMPEvents2_CreatePartnershipComplete(IWMPEvents2* This,IWMPSyncDevice *device,HRESULT result) {
 8847    This->lpVtbl->CreatePartnershipComplete(This,device,result);
 8848}
 8849#endif
 8850#endif
 8851
 8852#endif
 8853
 8854
 8855#endif  /* __IWMPEvents2_INTERFACE_DEFINED__ */
 8856
 8857/*****************************************************************************
 8858 * IWMPEvents3 interface
 8859 */
 8860#ifndef __IWMPEvents3_INTERFACE_DEFINED__
 8861#define __IWMPEvents3_INTERFACE_DEFINED__
 8862
 8863DEFINE_GUID(IID_IWMPEvents3, 0x1f504270, 0xa66b, 0x4223, 0x8e,0x96, 0x26,0xa0,0x6c,0x63,0xd6,0x9f);
 8864#if defined(__cplusplus) && !defined(CINTERFACE)
 8865MIDL_INTERFACE("1f504270-a66b-4223-8e96-26a06c63d69f")
 8866IWMPEvents3 : public IWMPEvents2
 8867{
 8868    virtual void STDMETHODCALLTYPE CdromRipStateChange(
 8869        IWMPCdromRip *rip,
 8870        WMPRipState state) = 0;
 8871
 8872    virtual void STDMETHODCALLTYPE CdromRipMediaError(
 8873        IWMPCdromRip *rip,
 8874        IDispatch *media) = 0;
 8875
 8876    virtual void STDMETHODCALLTYPE CdromBurnStateChange(
 8877        IWMPCdromBurn *burn,
 8878        WMPBurnState state) = 0;
 8879
 8880    virtual void STDMETHODCALLTYPE CdromBurnMediaError(
 8881        IWMPCdromBurn *burn,
 8882        IDispatch *media) = 0;
 8883
 8884    virtual void STDMETHODCALLTYPE CdromBurnError(
 8885        IWMPCdromBurn *burn,
 8886        HRESULT error) = 0;
 8887
 8888    virtual void STDMETHODCALLTYPE LibraryConnect(
 8889        IWMPLibrary *wmplibrary) = 0;
 8890
 8891    virtual void STDMETHODCALLTYPE LibraryDisconnect(
 8892        IWMPLibrary *wmplibrary) = 0;
 8893
 8894    virtual void STDMETHODCALLTYPE FolderScanStateChange(
 8895        WMPFolderScanState state) = 0;
 8896
 8897    virtual void STDMETHODCALLTYPE StringCollectionChange(
 8898        IDispatch *collection,
 8899        WMPStringCollectionChangeEventType change,
 8900        LONG index) = 0;
 8901
 8902    virtual void STDMETHODCALLTYPE MediaCollectionMediaAdded(
 8903        IDispatch *media) = 0;
 8904
 8905    virtual void STDMETHODCALLTYPE MediaCollectionMediaRemoved(
 8906        IDispatch *media) = 0;
 8907
 8908};
 8909#ifdef __CRT_UUID_DECL
 8910__CRT_UUID_DECL(IWMPEvents3, 0x1f504270, 0xa66b, 0x4223, 0x8e,0x96, 0x26,0xa0,0x6c,0x63,0xd6,0x9f)
 8911#endif
 8912#else
 8913typedef struct IWMPEvents3Vtbl {
 8914    BEGIN_INTERFACE
 8915
 8916    /*** IUnknown methods ***/
 8917    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 8918        IWMPEvents3 *This,
 8919        REFIID riid,
 8920        void **ppvObject);
 8921
 8922    ULONG (STDMETHODCALLTYPE *AddRef)(
 8923        IWMPEvents3 *This);
 8924
 8925    ULONG (STDMETHODCALLTYPE *Release)(
 8926        IWMPEvents3 *This);
 8927
 8928    /*** IWMPEvents methods ***/
 8929    void (STDMETHODCALLTYPE *OpenStateChange)(
 8930        IWMPEvents3 *This,
 8931        LONG state);
 8932
 8933    void (STDMETHODCALLTYPE *PlayStateChange)(
 8934        IWMPEvents3 *This,
 8935        LONG state);
 8936
 8937    void (STDMETHODCALLTYPE *AudioLanguageChange)(
 8938        IWMPEvents3 *This,
 8939        LONG lang);
 8940
 8941    void (STDMETHODCALLTYPE *StatusChange)(
 8942        IWMPEvents3 *This);
 8943
 8944    void (STDMETHODCALLTYPE *ScriptCommand)(
 8945        IWMPEvents3 *This,
 8946        BSTR type,
 8947        BSTR param);
 8948
 8949    void (STDMETHODCALLTYPE *NewStream)(
 8950        IWMPEvents3 *This);
 8951
 8952    void (STDMETHODCALLTYPE *Disconnect)(
 8953        IWMPEvents3 *This,
 8954        LONG result);
 8955
 8956    void (STDMETHODCALLTYPE *Buffering)(
 8957        IWMPEvents3 *This,
 8958        VARIANT_BOOL start);
 8959
 8960    void (STDMETHODCALLTYPE *Error)(
 8961        IWMPEvents3 *This);
 8962
 8963    void (STDMETHODCALLTYPE *Warning)(
 8964        IWMPEvents3 *This,
 8965        LONG warning,
 8966        LONG param,
 8967        BSTR description);
 8968
 8969    void (STDMETHODCALLTYPE *EndOfStream)(
 8970        IWMPEvents3 *This,
 8971        LONG result);
 8972
 8973    void (STDMETHODCALLTYPE *PositionChange)(
 8974        IWMPEvents3 *This,
 8975        double old_position,
 8976        double new_position);
 8977
 8978    void (STDMETHODCALLTYPE *MarkerHit)(
 8979        IWMPEvents3 *This,
 8980        LONG marker);
 8981
 8982    void (STDMETHODCALLTYPE *DurationUnitChange)(
 8983        IWMPEvents3 *This,
 8984        LONG duration);
 8985
 8986    void (STDMETHODCALLTYPE *CdromMediaChange)(
 8987        IWMPEvents3 *This,
 8988        LONG num);
 8989
 8990    void (STDMETHODCALLTYPE *PlaylistChange)(
 8991        IWMPEvents3 *This,
 8992        IDispatch *playlist,
 8993        WMPPlaylistChangeEventType change);
 8994
 8995    void (STDMETHODCALLTYPE *CurrentPlaylistChange)(
 8996        IWMPEvents3 *This,
 8997        WMPPlaylistChangeEventType change);
 8998
 8999    void (STDMETHODCALLTYPE *CurrentPlaylistItemAvailable)(
 9000        IWMPEvents3 *This,
 9001        BSTR item);
 9002
 9003    void (STDMETHODCALLTYPE *MediaChange)(
 9004        IWMPEvents3 *This,
 9005        IDispatch *item);
 9006
 9007    void (STDMETHODCALLTYPE *CurrentMediaItemAvailable)(
 9008        IWMPEvents3 *This,
 9009        BSTR name);
 9010
 9011    void (STDMETHODCALLTYPE *CurrentItemChange)(
 9012        IWMPEvents3 *This,
 9013        IDispatch *media);
 9014
 9015    void (STDMETHODCALLTYPE *MediaCollectionChange)(
 9016        IWMPEvents3 *This);
 9017
 9018    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringAdded)(
 9019        IWMPEvents3 *This,
 9020        BSTR name,
 9021        BSTR val);
 9022
 9023    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringRemoved)(
 9024        IWMPEvents3 *This,
 9025        BSTR name,
 9026        BSTR val);
 9027
 9028    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringChanged)(
 9029        IWMPEvents3 *This,
 9030        BSTR name,
 9031        BSTR old_val,
 9032        BSTR new_val);
 9033
 9034    void (STDMETHODCALLTYPE *PlaylistCollectionChange)(
 9035        IWMPEvents3 *This);
 9036
 9037    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistAdded)(
 9038        IWMPEvents3 *This,
 9039        BSTR name);
 9040
 9041    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistRemoved)(
 9042        IWMPEvents3 *This,
 9043        BSTR name);
 9044
 9045    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistSetAsDeleted)(
 9046        IWMPEvents3 *This,
 9047        BSTR name,
 9048        VARIANT_BOOL deleted);
 9049
 9050    void (STDMETHODCALLTYPE *ModeChange)(
 9051        IWMPEvents3 *This,
 9052        BSTR ModeName,
 9053        VARIANT_BOOL value);
 9054
 9055    void (STDMETHODCALLTYPE *MediaError)(
 9056        IWMPEvents3 *This,
 9057        IDispatch *media);
 9058
 9059    void (STDMETHODCALLTYPE *OpenPlaylistSwitch)(
 9060        IWMPEvents3 *This,
 9061        IDispatch *item);
 9062
 9063    void (STDMETHODCALLTYPE *DomainChange)(
 9064        IWMPEvents3 *This,
 9065        BSTR domain);
 9066
 9067    void (STDMETHODCALLTYPE *SwitchedToPlayerApplication)(
 9068        IWMPEvents3 *This);
 9069
 9070    void (STDMETHODCALLTYPE *SwitchedToControl)(
 9071        IWMPEvents3 *This);
 9072
 9073    void (STDMETHODCALLTYPE *PlayerDockedStateChange)(
 9074        IWMPEvents3 *This);
 9075
 9076    void (STDMETHODCALLTYPE *PlayerReconnect)(
 9077        IWMPEvents3 *This);
 9078
 9079    void (STDMETHODCALLTYPE *Click)(
 9080        IWMPEvents3 *This,
 9081        short button,
 9082        short shift_state,
 9083        LONG x,
 9084        LONG y);
 9085
 9086    void (STDMETHODCALLTYPE *DoubleClick)(
 9087        IWMPEvents3 *This,
 9088        short button,
 9089        short shift_state,
 9090        LONG fX,
 9091        LONG fY);
 9092
 9093    void (STDMETHODCALLTYPE *KeyDown)(
 9094        IWMPEvents3 *This,
 9095        short keycode,
 9096        short shift_state);
 9097
 9098    void (STDMETHODCALLTYPE *KeyPress)(
 9099        IWMPEvents3 *This,
 9100        short ascii);
 9101
 9102    void (STDMETHODCALLTYPE *KeyUp)(
 9103        IWMPEvents3 *This,
 9104        short keycode,
 9105        short shift_state);
 9106
 9107    void (STDMETHODCALLTYPE *MouseDown)(
 9108        IWMPEvents3 *This,
 9109        short button,
 9110        short nShiftState,
 9111        LONG x,
 9112        LONG y);
 9113
 9114    void (STDMETHODCALLTYPE *MouseMove)(
 9115        IWMPEvents3 *This,
 9116        short button,
 9117        short shift_state,
 9118        LONG x,
 9119        LONG y);
 9120
 9121    void (STDMETHODCALLTYPE *MouseUp)(
 9122        IWMPEvents3 *This,
 9123        short button,
 9124        short shift_state,
 9125        LONG x,
 9126        LONG y);
 9127
 9128    /*** IWMPEvents2 methods ***/
 9129    void (STDMETHODCALLTYPE *DeviceConnect)(
 9130        IWMPEvents3 *This,
 9131        IWMPSyncDevice *device);
 9132
 9133    void (STDMETHODCALLTYPE *DeviceDisconnect)(
 9134        IWMPEvents3 *This,
 9135        IWMPSyncDevice *device);
 9136
 9137    void (STDMETHODCALLTYPE *DeviceStatusChange)(
 9138        IWMPEvents3 *This,
 9139        IWMPSyncDevice *device,
 9140        WMPDeviceStatus status);
 9141
 9142    void (STDMETHODCALLTYPE *DeviceSyncStateChange)(
 9143        IWMPEvents3 *This,
 9144        IWMPSyncDevice *device,
 9145        WMPSyncState state);
 9146
 9147    void (STDMETHODCALLTYPE *DeviceSyncError)(
 9148        IWMPEvents3 *This,
 9149        IWMPSyncDevice *device,
 9150        IDispatch *media);
 9151
 9152    void (STDMETHODCALLTYPE *CreatePartnershipComplete)(
 9153        IWMPEvents3 *This,
 9154        IWMPSyncDevice *device,
 9155        HRESULT result);
 9156
 9157    /*** IWMPEvents3 methods ***/
 9158    void (STDMETHODCALLTYPE *CdromRipStateChange)(
 9159        IWMPEvents3 *This,
 9160        IWMPCdromRip *rip,
 9161        WMPRipState state);
 9162
 9163    void (STDMETHODCALLTYPE *CdromRipMediaError)(
 9164        IWMPEvents3 *This,
 9165        IWMPCdromRip *rip,
 9166        IDispatch *media);
 9167
 9168    void (STDMETHODCALLTYPE *CdromBurnStateChange)(
 9169        IWMPEvents3 *This,
 9170        IWMPCdromBurn *burn,
 9171        WMPBurnState state);
 9172
 9173    void (STDMETHODCALLTYPE *CdromBurnMediaError)(
 9174        IWMPEvents3 *This,
 9175        IWMPCdromBurn *burn,
 9176        IDispatch *media);
 9177
 9178    void (STDMETHODCALLTYPE *CdromBurnError)(
 9179        IWMPEvents3 *This,
 9180        IWMPCdromBurn *burn,
 9181        HRESULT error);
 9182
 9183    void (STDMETHODCALLTYPE *LibraryConnect)(
 9184        IWMPEvents3 *This,
 9185        IWMPLibrary *wmplibrary);
 9186
 9187    void (STDMETHODCALLTYPE *LibraryDisconnect)(
 9188        IWMPEvents3 *This,
 9189        IWMPLibrary *wmplibrary);
 9190
 9191    void (STDMETHODCALLTYPE *FolderScanStateChange)(
 9192        IWMPEvents3 *This,
 9193        WMPFolderScanState state);
 9194
 9195    void (STDMETHODCALLTYPE *StringCollectionChange)(
 9196        IWMPEvents3 *This,
 9197        IDispatch *collection,
 9198        WMPStringCollectionChangeEventType change,
 9199        LONG index);
 9200
 9201    void (STDMETHODCALLTYPE *MediaCollectionMediaAdded)(
 9202        IWMPEvents3 *This,
 9203        IDispatch *media);
 9204
 9205    void (STDMETHODCALLTYPE *MediaCollectionMediaRemoved)(
 9206        IWMPEvents3 *This,
 9207        IDispatch *media);
 9208
 9209    END_INTERFACE
 9210} IWMPEvents3Vtbl;
 9211
 9212interface IWMPEvents3 {
 9213    CONST_VTBL IWMPEvents3Vtbl* lpVtbl;
 9214};
 9215
 9216#ifdef COBJMACROS
 9217#ifndef WIDL_C_INLINE_WRAPPERS
 9218/*** IUnknown methods ***/
 9219#define IWMPEvents3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 9220#define IWMPEvents3_AddRef(This) (This)->lpVtbl->AddRef(This)
 9221#define IWMPEvents3_Release(This) (This)->lpVtbl->Release(This)
 9222/*** IWMPEvents methods ***/
 9223#define IWMPEvents3_OpenStateChange(This,state) (This)->lpVtbl->OpenStateChange(This,state)
 9224#define IWMPEvents3_PlayStateChange(This,state) (This)->lpVtbl->PlayStateChange(This,state)
 9225#define IWMPEvents3_AudioLanguageChange(This,lang) (This)->lpVtbl->AudioLanguageChange(This,lang)
 9226#define IWMPEvents3_StatusChange(This) (This)->lpVtbl->StatusChange(This)
 9227#define IWMPEvents3_ScriptCommand(This,type,param) (This)->lpVtbl->ScriptCommand(This,type,param)
 9228#define IWMPEvents3_NewStream(This) (This)->lpVtbl->NewStream(This)
 9229#define IWMPEvents3_Disconnect(This,result) (This)->lpVtbl->Disconnect(This,result)
 9230#define IWMPEvents3_Buffering(This,start) (This)->lpVtbl->Buffering(This,start)
 9231#define IWMPEvents3_Error(This) (This)->lpVtbl->Error(This)
 9232#define IWMPEvents3_Warning(This,warning,param,description) (This)->lpVtbl->Warning(This,warning,param,description)
 9233#define IWMPEvents3_EndOfStream(This,result) (This)->lpVtbl->EndOfStream(This,result)
 9234#define IWMPEvents3_PositionChange(This,old_position,new_position) (This)->lpVtbl->PositionChange(This,old_position,new_position)
 9235#define IWMPEvents3_MarkerHit(This,marker) (This)->lpVtbl->MarkerHit(This,marker)
 9236#define IWMPEvents3_DurationUnitChange(This,duration) (This)->lpVtbl->DurationUnitChange(This,duration)
 9237#define IWMPEvents3_CdromMediaChange(This,num) (This)->lpVtbl->CdromMediaChange(This,num)
 9238#define IWMPEvents3_PlaylistChange(This,playlist,change) (This)->lpVtbl->PlaylistChange(This,playlist,change)
 9239#define IWMPEvents3_CurrentPlaylistChange(This,change) (This)->lpVtbl->CurrentPlaylistChange(This,change)
 9240#define IWMPEvents3_CurrentPlaylistItemAvailable(This,item) (This)->lpVtbl->CurrentPlaylistItemAvailable(This,item)
 9241#define IWMPEvents3_MediaChange(This,item) (This)->lpVtbl->MediaChange(This,item)
 9242#define IWMPEvents3_CurrentMediaItemAvailable(This,name) (This)->lpVtbl->CurrentMediaItemAvailable(This,name)
 9243#define IWMPEvents3_CurrentItemChange(This,media) (This)->lpVtbl->CurrentItemChange(This,media)
 9244#define IWMPEvents3_MediaCollectionChange(This) (This)->lpVtbl->MediaCollectionChange(This)
 9245#define IWMPEvents3_MediaCollectionAttributeStringAdded(This,name,val) (This)->lpVtbl->MediaCollectionAttributeStringAdded(This,name,val)
 9246#define IWMPEvents3_MediaCollectionAttributeStringRemoved(This,name,val) (This)->lpVtbl->MediaCollectionAttributeStringRemoved(This,name,val)
 9247#define IWMPEvents3_MediaCollectionAttributeStringChanged(This,name,old_val,new_val) (This)->lpVtbl->MediaCollectionAttributeStringChanged(This,name,old_val,new_val)
 9248#define IWMPEvents3_PlaylistCollectionChange(This) (This)->lpVtbl->PlaylistCollectionChange(This)
 9249#define IWMPEvents3_PlaylistCollectionPlaylistAdded(This,name) (This)->lpVtbl->PlaylistCollectionPlaylistAdded(This,name)
 9250#define IWMPEvents3_PlaylistCollectionPlaylistRemoved(This,name) (This)->lpVtbl->PlaylistCollectionPlaylistRemoved(This,name)
 9251#define IWMPEvents3_PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted) (This)->lpVtbl->PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted)
 9252#define IWMPEvents3_ModeChange(This,ModeName,value) (This)->lpVtbl->ModeChange(This,ModeName,value)
 9253#define IWMPEvents3_MediaError(This,media) (This)->lpVtbl->MediaError(This,media)
 9254#define IWMPEvents3_OpenPlaylistSwitch(This,item) (This)->lpVtbl->OpenPlaylistSwitch(This,item)
 9255#define IWMPEvents3_DomainChange(This,domain) (This)->lpVtbl->DomainChange(This,domain)
 9256#define IWMPEvents3_SwitchedToPlayerApplication(This) (This)->lpVtbl->SwitchedToPlayerApplication(This)
 9257#define IWMPEvents3_SwitchedToControl(This) (This)->lpVtbl->SwitchedToControl(This)
 9258#define IWMPEvents3_PlayerDockedStateChange(This) (This)->lpVtbl->PlayerDockedStateChange(This)
 9259#define IWMPEvents3_PlayerReconnect(This) (This)->lpVtbl->PlayerReconnect(This)
 9260#define IWMPEvents3_Click(This,button,shift_state,x,y) (This)->lpVtbl->Click(This,button,shift_state,x,y)
 9261#define IWMPEvents3_DoubleClick(This,button,shift_state,fX,fY) (This)->lpVtbl->DoubleClick(This,button,shift_state,fX,fY)
 9262#define IWMPEvents3_KeyDown(This,keycode,shift_state) (This)->lpVtbl->KeyDown(This,keycode,shift_state)
 9263#define IWMPEvents3_KeyPress(This,ascii) (This)->lpVtbl->KeyPress(This,ascii)
 9264#define IWMPEvents3_KeyUp(This,keycode,shift_state) (This)->lpVtbl->KeyUp(This,keycode,shift_state)
 9265#define IWMPEvents3_MouseDown(This,button,nShiftState,x,y) (This)->lpVtbl->MouseDown(This,button,nShiftState,x,y)
 9266#define IWMPEvents3_MouseMove(This,button,shift_state,x,y) (This)->lpVtbl->MouseMove(This,button,shift_state,x,y)
 9267#define IWMPEvents3_MouseUp(This,button,shift_state,x,y) (This)->lpVtbl->MouseUp(This,button,shift_state,x,y)
 9268/*** IWMPEvents2 methods ***/
 9269#define IWMPEvents3_DeviceConnect(This,device) (This)->lpVtbl->DeviceConnect(This,device)
 9270#define IWMPEvents3_DeviceDisconnect(This,device) (This)->lpVtbl->DeviceDisconnect(This,device)
 9271#define IWMPEvents3_DeviceStatusChange(This,device,status) (This)->lpVtbl->DeviceStatusChange(This,device,status)
 9272#define IWMPEvents3_DeviceSyncStateChange(This,device,state) (This)->lpVtbl->DeviceSyncStateChange(This,device,state)
 9273#define IWMPEvents3_DeviceSyncError(This,device,media) (This)->lpVtbl->DeviceSyncError(This,device,media)
 9274#define IWMPEvents3_CreatePartnershipComplete(This,device,result) (This)->lpVtbl->CreatePartnershipComplete(This,device,result)
 9275/*** IWMPEvents3 methods ***/
 9276#define IWMPEvents3_CdromRipStateChange(This,rip,state) (This)->lpVtbl->CdromRipStateChange(This,rip,state)
 9277#define IWMPEvents3_CdromRipMediaError(This,rip,media) (This)->lpVtbl->CdromRipMediaError(This,rip,media)
 9278#define IWMPEvents3_CdromBurnStateChange(This,burn,state) (This)->lpVtbl->CdromBurnStateChange(This,burn,state)
 9279#define IWMPEvents3_CdromBurnMediaError(This,burn,media) (This)->lpVtbl->CdromBurnMediaError(This,burn,media)
 9280#define IWMPEvents3_CdromBurnError(This,burn,error) (This)->lpVtbl->CdromBurnError(This,burn,error)
 9281#define IWMPEvents3_LibraryConnect(This,wmplibrary) (This)->lpVtbl->LibraryConnect(This,wmplibrary)
 9282#define IWMPEvents3_LibraryDisconnect(This,wmplibrary) (This)->lpVtbl->LibraryDisconnect(This,wmplibrary)
 9283#define IWMPEvents3_FolderScanStateChange(This,state) (This)->lpVtbl->FolderScanStateChange(This,state)
 9284#define IWMPEvents3_StringCollectionChange(This,collection,change,index) (This)->lpVtbl->StringCollectionChange(This,collection,change,index)
 9285#define IWMPEvents3_MediaCollectionMediaAdded(This,media) (This)->lpVtbl->MediaCollectionMediaAdded(This,media)
 9286#define IWMPEvents3_MediaCollectionMediaRemoved(This,media) (This)->lpVtbl->MediaCollectionMediaRemoved(This,media)
 9287#else
 9288/*** IUnknown methods ***/
 9289static inline HRESULT IWMPEvents3_QueryInterface(IWMPEvents3* This,REFIID riid,void **ppvObject) {
 9290    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 9291}
 9292static inline ULONG IWMPEvents3_AddRef(IWMPEvents3* This) {
 9293    return This->lpVtbl->AddRef(This);
 9294}
 9295static inline ULONG IWMPEvents3_Release(IWMPEvents3* This) {
 9296    return This->lpVtbl->Release(This);
 9297}
 9298/*** IWMPEvents methods ***/
 9299static inline void IWMPEvents3_OpenStateChange(IWMPEvents3* This,LONG state) {
 9300    This->lpVtbl->OpenStateChange(This,state);
 9301}
 9302static inline void IWMPEvents3_PlayStateChange(IWMPEvents3* This,LONG state) {
 9303    This->lpVtbl->PlayStateChange(This,state);
 9304}
 9305static inline void IWMPEvents3_AudioLanguageChange(IWMPEvents3* This,LONG lang) {
 9306    This->lpVtbl->AudioLanguageChange(This,lang);
 9307}
 9308static inline void IWMPEvents3_StatusChange(IWMPEvents3* This) {
 9309    This->lpVtbl->StatusChange(This);
 9310}
 9311static inline void IWMPEvents3_ScriptCommand(IWMPEvents3* This,BSTR type,BSTR param) {
 9312    This->lpVtbl->ScriptCommand(This,type,param);
 9313}
 9314static inline void IWMPEvents3_NewStream(IWMPEvents3* This) {
 9315    This->lpVtbl->NewStream(This);
 9316}
 9317static inline void IWMPEvents3_Disconnect(IWMPEvents3* This,LONG result) {
 9318    This->lpVtbl->Disconnect(This,result);
 9319}
 9320static inline void IWMPEvents3_Buffering(IWMPEvents3* This,VARIANT_BOOL start) {
 9321    This->lpVtbl->Buffering(This,start);
 9322}
 9323static inline void IWMPEvents3_Error(IWMPEvents3* This) {
 9324    This->lpVtbl->Error(This);
 9325}
 9326static inline void IWMPEvents3_Warning(IWMPEvents3* This,LONG warning,LONG param,BSTR description) {
 9327    This->lpVtbl->Warning(This,warning,param,description);
 9328}
 9329static inline void IWMPEvents3_EndOfStream(IWMPEvents3* This,LONG result) {
 9330    This->lpVtbl->EndOfStream(This,result);
 9331}
 9332static inline void IWMPEvents3_PositionChange(IWMPEvents3* This,double old_position,double new_position) {
 9333    This->lpVtbl->PositionChange(This,old_position,new_position);
 9334}
 9335static inline void IWMPEvents3_MarkerHit(IWMPEvents3* This,LONG marker) {
 9336    This->lpVtbl->MarkerHit(This,marker);
 9337}
 9338static inline void IWMPEvents3_DurationUnitChange(IWMPEvents3* This,LONG duration) {
 9339    This->lpVtbl->DurationUnitChange(This,duration);
 9340}
 9341static inline void IWMPEvents3_CdromMediaChange(IWMPEvents3* This,LONG num) {
 9342    This->lpVtbl->CdromMediaChange(This,num);
 9343}
 9344static inline void IWMPEvents3_PlaylistChange(IWMPEvents3* This,IDispatch *playlist,WMPPlaylistChangeEventType change) {
 9345    This->lpVtbl->PlaylistChange(This,playlist,change);
 9346}
 9347static inline void IWMPEvents3_CurrentPlaylistChange(IWMPEvents3* This,WMPPlaylistChangeEventType change) {
 9348    This->lpVtbl->CurrentPlaylistChange(This,change);
 9349}
 9350static inline void IWMPEvents3_CurrentPlaylistItemAvailable(IWMPEvents3* This,BSTR item) {
 9351    This->lpVtbl->CurrentPlaylistItemAvailable(This,item);
 9352}
 9353static inline void IWMPEvents3_MediaChange(IWMPEvents3* This,IDispatch *item) {
 9354    This->lpVtbl->MediaChange(This,item);
 9355}
 9356static inline void IWMPEvents3_CurrentMediaItemAvailable(IWMPEvents3* This,BSTR name) {
 9357    This->lpVtbl->CurrentMediaItemAvailable(This,name);
 9358}
 9359static inline void IWMPEvents3_CurrentItemChange(IWMPEvents3* This,IDispatch *media) {
 9360    This->lpVtbl->CurrentItemChange(This,media);
 9361}
 9362static inline void IWMPEvents3_MediaCollectionChange(IWMPEvents3* This) {
 9363    This->lpVtbl->MediaCollectionChange(This);
 9364}
 9365static inline void IWMPEvents3_MediaCollectionAttributeStringAdded(IWMPEvents3* This,BSTR name,BSTR val) {
 9366    This->lpVtbl->MediaCollectionAttributeStringAdded(This,name,val);
 9367}
 9368static inline void IWMPEvents3_MediaCollectionAttributeStringRemoved(IWMPEvents3* This,BSTR name,BSTR val) {
 9369    This->lpVtbl->MediaCollectionAttributeStringRemoved(This,name,val);
 9370}
 9371static inline void IWMPEvents3_MediaCollectionAttributeStringChanged(IWMPEvents3* This,BSTR name,BSTR old_val,BSTR new_val) {
 9372    This->lpVtbl->MediaCollectionAttributeStringChanged(This,name,old_val,new_val);
 9373}
 9374static inline void IWMPEvents3_PlaylistCollectionChange(IWMPEvents3* This) {
 9375    This->lpVtbl->PlaylistCollectionChange(This);
 9376}
 9377static inline void IWMPEvents3_PlaylistCollectionPlaylistAdded(IWMPEvents3* This,BSTR name) {
 9378    This->lpVtbl->PlaylistCollectionPlaylistAdded(This,name);
 9379}
 9380static inline void IWMPEvents3_PlaylistCollectionPlaylistRemoved(IWMPEvents3* This,BSTR name) {
 9381    This->lpVtbl->PlaylistCollectionPlaylistRemoved(This,name);
 9382}
 9383static inline void IWMPEvents3_PlaylistCollectionPlaylistSetAsDeleted(IWMPEvents3* This,BSTR name,VARIANT_BOOL deleted) {
 9384    This->lpVtbl->PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted);
 9385}
 9386static inline void IWMPEvents3_ModeChange(IWMPEvents3* This,BSTR ModeName,VARIANT_BOOL value) {
 9387    This->lpVtbl->ModeChange(This,ModeName,value);
 9388}
 9389static inline void IWMPEvents3_MediaError(IWMPEvents3* This,IDispatch *media) {
 9390    This->lpVtbl->MediaError(This,media);
 9391}
 9392static inline void IWMPEvents3_OpenPlaylistSwitch(IWMPEvents3* This,IDispatch *item) {
 9393    This->lpVtbl->OpenPlaylistSwitch(This,item);
 9394}
 9395static inline void IWMPEvents3_DomainChange(IWMPEvents3* This,BSTR domain) {
 9396    This->lpVtbl->DomainChange(This,domain);
 9397}
 9398static inline void IWMPEvents3_SwitchedToPlayerApplication(IWMPEvents3* This) {
 9399    This->lpVtbl->SwitchedToPlayerApplication(This);
 9400}
 9401static inline void IWMPEvents3_SwitchedToControl(IWMPEvents3* This) {
 9402    This->lpVtbl->SwitchedToControl(This);
 9403}
 9404static inline void IWMPEvents3_PlayerDockedStateChange(IWMPEvents3* This) {
 9405    This->lpVtbl->PlayerDockedStateChange(This);
 9406}
 9407static inline void IWMPEvents3_PlayerReconnect(IWMPEvents3* This) {
 9408    This->lpVtbl->PlayerReconnect(This);
 9409}
 9410static inline void IWMPEvents3_Click(IWMPEvents3* This,short button,short shift_state,LONG x,LONG y) {
 9411    This->lpVtbl->Click(This,button,shift_state,x,y);
 9412}
 9413static inline void IWMPEvents3_DoubleClick(IWMPEvents3* This,short button,short shift_state,LONG fX,LONG fY) {
 9414    This->lpVtbl->DoubleClick(This,button,shift_state,fX,fY);
 9415}
 9416static inline void IWMPEvents3_KeyDown(IWMPEvents3* This,short keycode,short shift_state) {
 9417    This->lpVtbl->KeyDown(This,keycode,shift_state);
 9418}
 9419static inline void IWMPEvents3_KeyPress(IWMPEvents3* This,short ascii) {
 9420    This->lpVtbl->KeyPress(This,ascii);
 9421}
 9422static inline void IWMPEvents3_KeyUp(IWMPEvents3* This,short keycode,short shift_state) {
 9423    This->lpVtbl->KeyUp(This,keycode,shift_state);
 9424}
 9425static inline void IWMPEvents3_MouseDown(IWMPEvents3* This,short button,short nShiftState,LONG x,LONG y) {
 9426    This->lpVtbl->MouseDown(This,button,nShiftState,x,y);
 9427}
 9428static inline void IWMPEvents3_MouseMove(IWMPEvents3* This,short button,short shift_state,LONG x,LONG y) {
 9429    This->lpVtbl->MouseMove(This,button,shift_state,x,y);
 9430}
 9431static inline void IWMPEvents3_MouseUp(IWMPEvents3* This,short button,short shift_state,LONG x,LONG y) {
 9432    This->lpVtbl->MouseUp(This,button,shift_state,x,y);
 9433}
 9434/*** IWMPEvents2 methods ***/
 9435static inline void IWMPEvents3_DeviceConnect(IWMPEvents3* This,IWMPSyncDevice *device) {
 9436    This->lpVtbl->DeviceConnect(This,device);
 9437}
 9438static inline void IWMPEvents3_DeviceDisconnect(IWMPEvents3* This,IWMPSyncDevice *device) {
 9439    This->lpVtbl->DeviceDisconnect(This,device);
 9440}
 9441static inline void IWMPEvents3_DeviceStatusChange(IWMPEvents3* This,IWMPSyncDevice *device,WMPDeviceStatus status) {
 9442    This->lpVtbl->DeviceStatusChange(This,device,status);
 9443}
 9444static inline void IWMPEvents3_DeviceSyncStateChange(IWMPEvents3* This,IWMPSyncDevice *device,WMPSyncState state) {
 9445    This->lpVtbl->DeviceSyncStateChange(This,device,state);
 9446}
 9447static inline void IWMPEvents3_DeviceSyncError(IWMPEvents3* This,IWMPSyncDevice *device,IDispatch *media) {
 9448    This->lpVtbl->DeviceSyncError(This,device,media);
 9449}
 9450static inline void IWMPEvents3_CreatePartnershipComplete(IWMPEvents3* This,IWMPSyncDevice *device,HRESULT result) {
 9451    This->lpVtbl->CreatePartnershipComplete(This,device,result);
 9452}
 9453/*** IWMPEvents3 methods ***/
 9454static inline void IWMPEvents3_CdromRipStateChange(IWMPEvents3* This,IWMPCdromRip *rip,WMPRipState state) {
 9455    This->lpVtbl->CdromRipStateChange(This,rip,state);
 9456}
 9457static inline void IWMPEvents3_CdromRipMediaError(IWMPEvents3* This,IWMPCdromRip *rip,IDispatch *media) {
 9458    This->lpVtbl->CdromRipMediaError(This,rip,media);
 9459}
 9460static inline void IWMPEvents3_CdromBurnStateChange(IWMPEvents3* This,IWMPCdromBurn *burn,WMPBurnState state) {
 9461    This->lpVtbl->CdromBurnStateChange(This,burn,state);
 9462}
 9463static inline void IWMPEvents3_CdromBurnMediaError(IWMPEvents3* This,IWMPCdromBurn *burn,IDispatch *media) {
 9464    This->lpVtbl->CdromBurnMediaError(This,burn,media);
 9465}
 9466static inline void IWMPEvents3_CdromBurnError(IWMPEvents3* This,IWMPCdromBurn *burn,HRESULT error) {
 9467    This->lpVtbl->CdromBurnError(This,burn,error);
 9468}
 9469static inline void IWMPEvents3_LibraryConnect(IWMPEvents3* This,IWMPLibrary *wmplibrary) {
 9470    This->lpVtbl->LibraryConnect(This,wmplibrary);
 9471}
 9472static inline void IWMPEvents3_LibraryDisconnect(IWMPEvents3* This,IWMPLibrary *wmplibrary) {
 9473    This->lpVtbl->LibraryDisconnect(This,wmplibrary);
 9474}
 9475static inline void IWMPEvents3_FolderScanStateChange(IWMPEvents3* This,WMPFolderScanState state) {
 9476    This->lpVtbl->FolderScanStateChange(This,state);
 9477}
 9478static inline void IWMPEvents3_StringCollectionChange(IWMPEvents3* This,IDispatch *collection,WMPStringCollectionChangeEventType change,LONG index) {
 9479    This->lpVtbl->StringCollectionChange(This,collection,change,index);
 9480}
 9481static inline void IWMPEvents3_MediaCollectionMediaAdded(IWMPEvents3* This,IDispatch *media) {
 9482    This->lpVtbl->MediaCollectionMediaAdded(This,media);
 9483}
 9484static inline void IWMPEvents3_MediaCollectionMediaRemoved(IWMPEvents3* This,IDispatch *media) {
 9485    This->lpVtbl->MediaCollectionMediaRemoved(This,media);
 9486}
 9487#endif
 9488#endif
 9489
 9490#endif
 9491
 9492
 9493#endif  /* __IWMPEvents3_INTERFACE_DEFINED__ */
 9494
 9495/*****************************************************************************
 9496 * IWMPEvents4 interface
 9497 */
 9498#ifndef __IWMPEvents4_INTERFACE_DEFINED__
 9499#define __IWMPEvents4_INTERFACE_DEFINED__
 9500
 9501DEFINE_GUID(IID_IWMPEvents4, 0x26dabcfa, 0x306b, 0x404d, 0x9a,0x6f, 0x63,0x0a,0x84,0x05,0x04,0x8d);
 9502#if defined(__cplusplus) && !defined(CINTERFACE)
 9503MIDL_INTERFACE("26dabcfa-306b-404d-9a6f-630a8405048d")
 9504IWMPEvents4 : public IWMPEvents3
 9505{
 9506    virtual void STDMETHODCALLTYPE DeviceEstimation(
 9507        IWMPSyncDevice *device,
 9508        HRESULT result,
 9509        LONGLONG used_space,
 9510        LONGLONG estimated_space) = 0;
 9511
 9512};
 9513#ifdef __CRT_UUID_DECL
 9514__CRT_UUID_DECL(IWMPEvents4, 0x26dabcfa, 0x306b, 0x404d, 0x9a,0x6f, 0x63,0x0a,0x84,0x05,0x04,0x8d)
 9515#endif
 9516#else
 9517typedef struct IWMPEvents4Vtbl {
 9518    BEGIN_INTERFACE
 9519
 9520    /*** IUnknown methods ***/
 9521    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 9522        IWMPEvents4 *This,
 9523        REFIID riid,
 9524        void **ppvObject);
 9525
 9526    ULONG (STDMETHODCALLTYPE *AddRef)(
 9527        IWMPEvents4 *This);
 9528
 9529    ULONG (STDMETHODCALLTYPE *Release)(
 9530        IWMPEvents4 *This);
 9531
 9532    /*** IWMPEvents methods ***/
 9533    void (STDMETHODCALLTYPE *OpenStateChange)(
 9534        IWMPEvents4 *This,
 9535        LONG state);
 9536
 9537    void (STDMETHODCALLTYPE *PlayStateChange)(
 9538        IWMPEvents4 *This,
 9539        LONG state);
 9540
 9541    void (STDMETHODCALLTYPE *AudioLanguageChange)(
 9542        IWMPEvents4 *This,
 9543        LONG lang);
 9544
 9545    void (STDMETHODCALLTYPE *StatusChange)(
 9546        IWMPEvents4 *This);
 9547
 9548    void (STDMETHODCALLTYPE *ScriptCommand)(
 9549        IWMPEvents4 *This,
 9550        BSTR type,
 9551        BSTR param);
 9552
 9553    void (STDMETHODCALLTYPE *NewStream)(
 9554        IWMPEvents4 *This);
 9555
 9556    void (STDMETHODCALLTYPE *Disconnect)(
 9557        IWMPEvents4 *This,
 9558        LONG result);
 9559
 9560    void (STDMETHODCALLTYPE *Buffering)(
 9561        IWMPEvents4 *This,
 9562        VARIANT_BOOL start);
 9563
 9564    void (STDMETHODCALLTYPE *Error)(
 9565        IWMPEvents4 *This);
 9566
 9567    void (STDMETHODCALLTYPE *Warning)(
 9568        IWMPEvents4 *This,
 9569        LONG warning,
 9570        LONG param,
 9571        BSTR description);
 9572
 9573    void (STDMETHODCALLTYPE *EndOfStream)(
 9574        IWMPEvents4 *This,
 9575        LONG result);
 9576
 9577    void (STDMETHODCALLTYPE *PositionChange)(
 9578        IWMPEvents4 *This,
 9579        double old_position,
 9580        double new_position);
 9581
 9582    void (STDMETHODCALLTYPE *MarkerHit)(
 9583        IWMPEvents4 *This,
 9584        LONG marker);
 9585
 9586    void (STDMETHODCALLTYPE *DurationUnitChange)(
 9587        IWMPEvents4 *This,
 9588        LONG duration);
 9589
 9590    void (STDMETHODCALLTYPE *CdromMediaChange)(
 9591        IWMPEvents4 *This,
 9592        LONG num);
 9593
 9594    void (STDMETHODCALLTYPE *PlaylistChange)(
 9595        IWMPEvents4 *This,
 9596        IDispatch *playlist,
 9597        WMPPlaylistChangeEventType change);
 9598
 9599    void (STDMETHODCALLTYPE *CurrentPlaylistChange)(
 9600        IWMPEvents4 *This,
 9601        WMPPlaylistChangeEventType change);
 9602
 9603    void (STDMETHODCALLTYPE *CurrentPlaylistItemAvailable)(
 9604        IWMPEvents4 *This,
 9605        BSTR item);
 9606
 9607    void (STDMETHODCALLTYPE *MediaChange)(
 9608        IWMPEvents4 *This,
 9609        IDispatch *item);
 9610
 9611    void (STDMETHODCALLTYPE *CurrentMediaItemAvailable)(
 9612        IWMPEvents4 *This,
 9613        BSTR name);
 9614
 9615    void (STDMETHODCALLTYPE *CurrentItemChange)(
 9616        IWMPEvents4 *This,
 9617        IDispatch *media);
 9618
 9619    void (STDMETHODCALLTYPE *MediaCollectionChange)(
 9620        IWMPEvents4 *This);
 9621
 9622    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringAdded)(
 9623        IWMPEvents4 *This,
 9624        BSTR name,
 9625        BSTR val);
 9626
 9627    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringRemoved)(
 9628        IWMPEvents4 *This,
 9629        BSTR name,
 9630        BSTR val);
 9631
 9632    void (STDMETHODCALLTYPE *MediaCollectionAttributeStringChanged)(
 9633        IWMPEvents4 *This,
 9634        BSTR name,
 9635        BSTR old_val,
 9636        BSTR new_val);
 9637
 9638    void (STDMETHODCALLTYPE *PlaylistCollectionChange)(
 9639        IWMPEvents4 *This);
 9640
 9641    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistAdded)(
 9642        IWMPEvents4 *This,
 9643        BSTR name);
 9644
 9645    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistRemoved)(
 9646        IWMPEvents4 *This,
 9647        BSTR name);
 9648
 9649    void (STDMETHODCALLTYPE *PlaylistCollectionPlaylistSetAsDeleted)(
 9650        IWMPEvents4 *This,
 9651        BSTR name,
 9652        VARIANT_BOOL deleted);
 9653
 9654    void (STDMETHODCALLTYPE *ModeChange)(
 9655        IWMPEvents4 *This,
 9656        BSTR ModeName,
 9657        VARIANT_BOOL value);
 9658
 9659    void (STDMETHODCALLTYPE *MediaError)(
 9660        IWMPEvents4 *This,
 9661        IDispatch *media);
 9662
 9663    void (STDMETHODCALLTYPE *OpenPlaylistSwitch)(
 9664        IWMPEvents4 *This,
 9665        IDispatch *item);
 9666
 9667    void (STDMETHODCALLTYPE *DomainChange)(
 9668        IWMPEvents4 *This,
 9669        BSTR domain);
 9670
 9671    void (STDMETHODCALLTYPE *SwitchedToPlayerApplication)(
 9672        IWMPEvents4 *This);
 9673
 9674    void (STDMETHODCALLTYPE *SwitchedToControl)(
 9675        IWMPEvents4 *This);
 9676
 9677    void (STDMETHODCALLTYPE *PlayerDockedStateChange)(
 9678        IWMPEvents4 *This);
 9679
 9680    void (STDMETHODCALLTYPE *PlayerReconnect)(
 9681        IWMPEvents4 *This);
 9682
 9683    void (STDMETHODCALLTYPE *Click)(
 9684        IWMPEvents4 *This,
 9685        short button,
 9686        short shift_state,
 9687        LONG x,
 9688        LONG y);
 9689
 9690    void (STDMETHODCALLTYPE *DoubleClick)(
 9691        IWMPEvents4 *This,
 9692        short button,
 9693        short shift_state,
 9694        LONG fX,
 9695        LONG fY);
 9696
 9697    void (STDMETHODCALLTYPE *KeyDown)(
 9698        IWMPEvents4 *This,
 9699        short keycode,
 9700        short shift_state);
 9701
 9702    void (STDMETHODCALLTYPE *KeyPress)(
 9703        IWMPEvents4 *This,
 9704        short ascii);
 9705
 9706    void (STDMETHODCALLTYPE *KeyUp)(
 9707        IWMPEvents4 *This,
 9708        short keycode,
 9709        short shift_state);
 9710
 9711    void (STDMETHODCALLTYPE *MouseDown)(
 9712        IWMPEvents4 *This,
 9713        short button,
 9714        short nShiftState,
 9715        LONG x,
 9716        LONG y);
 9717
 9718    void (STDMETHODCALLTYPE *MouseMove)(
 9719        IWMPEvents4 *This,
 9720        short button,
 9721        short shift_state,
 9722        LONG x,
 9723        LONG y);
 9724
 9725    void (STDMETHODCALLTYPE *MouseUp)(
 9726        IWMPEvents4 *This,
 9727        short button,
 9728        short shift_state,
 9729        LONG x,
 9730        LONG y);
 9731
 9732    /*** IWMPEvents2 methods ***/
 9733    void (STDMETHODCALLTYPE *DeviceConnect)(
 9734        IWMPEvents4 *This,
 9735        IWMPSyncDevice *device);
 9736
 9737    void (STDMETHODCALLTYPE *DeviceDisconnect)(
 9738        IWMPEvents4 *This,
 9739        IWMPSyncDevice *device);
 9740
 9741    void (STDMETHODCALLTYPE *DeviceStatusChange)(
 9742        IWMPEvents4 *This,
 9743        IWMPSyncDevice *device,
 9744        WMPDeviceStatus status);
 9745
 9746    void (STDMETHODCALLTYPE *DeviceSyncStateChange)(
 9747        IWMPEvents4 *This,
 9748        IWMPSyncDevice *device,
 9749        WMPSyncState state);
 9750
 9751    void (STDMETHODCALLTYPE *DeviceSyncError)(
 9752        IWMPEvents4 *This,
 9753        IWMPSyncDevice *device,
 9754        IDispatch *media);
 9755
 9756    void (STDMETHODCALLTYPE *CreatePartnershipComplete)(
 9757        IWMPEvents4 *This,
 9758        IWMPSyncDevice *device,
 9759        HRESULT result);
 9760
 9761    /*** IWMPEvents3 methods ***/
 9762    void (STDMETHODCALLTYPE *CdromRipStateChange)(
 9763        IWMPEvents4 *This,
 9764        IWMPCdromRip *rip,
 9765        WMPRipState state);
 9766
 9767    void (STDMETHODCALLTYPE *CdromRipMediaError)(
 9768        IWMPEvents4 *This,
 9769        IWMPCdromRip *rip,
 9770        IDispatch *media);
 9771
 9772    void (STDMETHODCALLTYPE *CdromBurnStateChange)(
 9773        IWMPEvents4 *This,
 9774        IWMPCdromBurn *burn,
 9775        WMPBurnState state);
 9776
 9777    void (STDMETHODCALLTYPE *CdromBurnMediaError)(
 9778        IWMPEvents4 *This,
 9779        IWMPCdromBurn *burn,
 9780        IDispatch *media);
 9781
 9782    void (STDMETHODCALLTYPE *CdromBurnError)(
 9783        IWMPEvents4 *This,
 9784        IWMPCdromBurn *burn,
 9785        HRESULT error);
 9786
 9787    void (STDMETHODCALLTYPE *LibraryConnect)(
 9788        IWMPEvents4 *This,
 9789        IWMPLibrary *wmplibrary);
 9790
 9791    void (STDMETHODCALLTYPE *LibraryDisconnect)(
 9792        IWMPEvents4 *This,
 9793        IWMPLibrary *wmplibrary);
 9794
 9795    void (STDMETHODCALLTYPE *FolderScanStateChange)(
 9796        IWMPEvents4 *This,
 9797        WMPFolderScanState state);
 9798
 9799    void (STDMETHODCALLTYPE *StringCollectionChange)(
 9800        IWMPEvents4 *This,
 9801        IDispatch *collection,
 9802        WMPStringCollectionChangeEventType change,
 9803        LONG index);
 9804
 9805    void (STDMETHODCALLTYPE *MediaCollectionMediaAdded)(
 9806        IWMPEvents4 *This,
 9807        IDispatch *media);
 9808
 9809    void (STDMETHODCALLTYPE *MediaCollectionMediaRemoved)(
 9810        IWMPEvents4 *This,
 9811        IDispatch *media);
 9812
 9813    /*** IWMPEvents4 methods ***/
 9814    void (STDMETHODCALLTYPE *DeviceEstimation)(
 9815        IWMPEvents4 *This,
 9816        IWMPSyncDevice *device,
 9817        HRESULT result,
 9818        LONGLONG used_space,
 9819        LONGLONG estimated_space);
 9820
 9821    END_INTERFACE
 9822} IWMPEvents4Vtbl;
 9823
 9824interface IWMPEvents4 {
 9825    CONST_VTBL IWMPEvents4Vtbl* lpVtbl;
 9826};
 9827
 9828#ifdef COBJMACROS
 9829#ifndef WIDL_C_INLINE_WRAPPERS
 9830/*** IUnknown methods ***/
 9831#define IWMPEvents4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 9832#define IWMPEvents4_AddRef(This) (This)->lpVtbl->AddRef(This)
 9833#define IWMPEvents4_Release(This) (This)->lpVtbl->Release(This)
 9834/*** IWMPEvents methods ***/
 9835#define IWMPEvents4_OpenStateChange(This,state) (This)->lpVtbl->OpenStateChange(This,state)
 9836#define IWMPEvents4_PlayStateChange(This,state) (This)->lpVtbl->PlayStateChange(This,state)
 9837#define IWMPEvents4_AudioLanguageChange(This,lang) (This)->lpVtbl->AudioLanguageChange(This,lang)
 9838#define IWMPEvents4_StatusChange(This) (This)->lpVtbl->StatusChange(This)
 9839#define IWMPEvents4_ScriptCommand(This,type,param) (This)->lpVtbl->ScriptCommand(This,type,param)
 9840#define IWMPEvents4_NewStream(This) (This)->lpVtbl->NewStream(This)
 9841#define IWMPEvents4_Disconnect(This,result) (This)->lpVtbl->Disconnect(This,result)
 9842#define IWMPEvents4_Buffering(This,start) (This)->lpVtbl->Buffering(This,start)
 9843#define IWMPEvents4_Error(This) (This)->lpVtbl->Error(This)
 9844#define IWMPEvents4_Warning(This,warning,param,description) (This)->lpVtbl->Warning(This,warning,param,description)
 9845#define IWMPEvents4_EndOfStream(This,result) (This)->lpVtbl->EndOfStream(This,result)
 9846#define IWMPEvents4_PositionChange(This,old_position,new_position) (This)->lpVtbl->PositionChange(This,old_position,new_position)
 9847#define IWMPEvents4_MarkerHit(This,marker) (This)->lpVtbl->MarkerHit(This,marker)
 9848#define IWMPEvents4_DurationUnitChange(This,duration) (This)->lpVtbl->DurationUnitChange(This,duration)
 9849#define IWMPEvents4_CdromMediaChange(This,num) (This)->lpVtbl->CdromMediaChange(This,num)
 9850#define IWMPEvents4_PlaylistChange(This,playlist,change) (This)->lpVtbl->PlaylistChange(This,playlist,change)
 9851#define IWMPEvents4_CurrentPlaylistChange(This,change) (This)->lpVtbl->CurrentPlaylistChange(This,change)
 9852#define IWMPEvents4_CurrentPlaylistItemAvailable(This,item) (This)->lpVtbl->CurrentPlaylistItemAvailable(This,item)
 9853#define IWMPEvents4_MediaChange(This,item) (This)->lpVtbl->MediaChange(This,item)
 9854#define IWMPEvents4_CurrentMediaItemAvailable(This,name) (This)->lpVtbl->CurrentMediaItemAvailable(This,name)
 9855#define IWMPEvents4_CurrentItemChange(This,media) (This)->lpVtbl->CurrentItemChange(This,media)
 9856#define IWMPEvents4_MediaCollectionChange(This) (This)->lpVtbl->MediaCollectionChange(This)
 9857#define IWMPEvents4_MediaCollectionAttributeStringAdded(This,name,val) (This)->lpVtbl->MediaCollectionAttributeStringAdded(This,name,val)
 9858#define IWMPEvents4_MediaCollectionAttributeStringRemoved(This,name,val) (This)->lpVtbl->MediaCollectionAttributeStringRemoved(This,name,val)
 9859#define IWMPEvents4_MediaCollectionAttributeStringChanged(This,name,old_val,new_val) (This)->lpVtbl->MediaCollectionAttributeStringChanged(This,name,old_val,new_val)
 9860#define IWMPEvents4_PlaylistCollectionChange(This) (This)->lpVtbl->PlaylistCollectionChange(This)
 9861#define IWMPEvents4_PlaylistCollectionPlaylistAdded(This,name) (This)->lpVtbl->PlaylistCollectionPlaylistAdded(This,name)
 9862#define IWMPEvents4_PlaylistCollectionPlaylistRemoved(This,name) (This)->lpVtbl->PlaylistCollectionPlaylistRemoved(This,name)
 9863#define IWMPEvents4_PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted) (This)->lpVtbl->PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted)
 9864#define IWMPEvents4_ModeChange(This,ModeName,value) (This)->lpVtbl->ModeChange(This,ModeName,value)
 9865#define IWMPEvents4_MediaError(This,media) (This)->lpVtbl->MediaError(This,media)
 9866#define IWMPEvents4_OpenPlaylistSwitch(This,item) (This)->lpVtbl->OpenPlaylistSwitch(This,item)
 9867#define IWMPEvents4_DomainChange(This,domain) (This)->lpVtbl->DomainChange(This,domain)
 9868#define IWMPEvents4_SwitchedToPlayerApplication(This) (This)->lpVtbl->SwitchedToPlayerApplication(This)
 9869#define IWMPEvents4_SwitchedToControl(This) (This)->lpVtbl->SwitchedToControl(This)
 9870#define IWMPEvents4_PlayerDockedStateChange(This) (This)->lpVtbl->PlayerDockedStateChange(This)
 9871#define IWMPEvents4_PlayerReconnect(This) (This)->lpVtbl->PlayerReconnect(This)
 9872#define IWMPEvents4_Click(This,button,shift_state,x,y) (This)->lpVtbl->Click(This,button,shift_state,x,y)
 9873#define IWMPEvents4_DoubleClick(This,button,shift_state,fX,fY) (This)->lpVtbl->DoubleClick(This,button,shift_state,fX,fY)
 9874#define IWMPEvents4_KeyDown(This,keycode,shift_state) (This)->lpVtbl->KeyDown(This,keycode,shift_state)
 9875#define IWMPEvents4_KeyPress(This,ascii) (This)->lpVtbl->KeyPress(This,ascii)
 9876#define IWMPEvents4_KeyUp(This,keycode,shift_state) (This)->lpVtbl->KeyUp(This,keycode,shift_state)
 9877#define IWMPEvents4_MouseDown(This,button,nShiftState,x,y) (This)->lpVtbl->MouseDown(This,button,nShiftState,x,y)
 9878#define IWMPEvents4_MouseMove(This,button,shift_state,x,y) (This)->lpVtbl->MouseMove(This,button,shift_state,x,y)
 9879#define IWMPEvents4_MouseUp(This,button,shift_state,x,y) (This)->lpVtbl->MouseUp(This,button,shift_state,x,y)
 9880/*** IWMPEvents2 methods ***/
 9881#define IWMPEvents4_DeviceConnect(This,device) (This)->lpVtbl->DeviceConnect(This,device)
 9882#define IWMPEvents4_DeviceDisconnect(This,device) (This)->lpVtbl->DeviceDisconnect(This,device)
 9883#define IWMPEvents4_DeviceStatusChange(This,device,status) (This)->lpVtbl->DeviceStatusChange(This,device,status)
 9884#define IWMPEvents4_DeviceSyncStateChange(This,device,state) (This)->lpVtbl->DeviceSyncStateChange(This,device,state)
 9885#define IWMPEvents4_DeviceSyncError(This,device,media) (This)->lpVtbl->DeviceSyncError(This,device,media)
 9886#define IWMPEvents4_CreatePartnershipComplete(This,device,result) (This)->lpVtbl->CreatePartnershipComplete(This,device,result)
 9887/*** IWMPEvents3 methods ***/
 9888#define IWMPEvents4_CdromRipStateChange(This,rip,state) (This)->lpVtbl->CdromRipStateChange(This,rip,state)
 9889#define IWMPEvents4_CdromRipMediaError(This,rip,media) (This)->lpVtbl->CdromRipMediaError(This,rip,media)
 9890#define IWMPEvents4_CdromBurnStateChange(This,burn,state) (This)->lpVtbl->CdromBurnStateChange(This,burn,state)
 9891#define IWMPEvents4_CdromBurnMediaError(This,burn,media) (This)->lpVtbl->CdromBurnMediaError(This,burn,media)
 9892#define IWMPEvents4_CdromBurnError(This,burn,error) (This)->lpVtbl->CdromBurnError(This,burn,error)
 9893#define IWMPEvents4_LibraryConnect(This,wmplibrary) (This)->lpVtbl->LibraryConnect(This,wmplibrary)
 9894#define IWMPEvents4_LibraryDisconnect(This,wmplibrary) (This)->lpVtbl->LibraryDisconnect(This,wmplibrary)
 9895#define IWMPEvents4_FolderScanStateChange(This,state) (This)->lpVtbl->FolderScanStateChange(This,state)
 9896#define IWMPEvents4_StringCollectionChange(This,collection,change,index) (This)->lpVtbl->StringCollectionChange(This,collection,change,index)
 9897#define IWMPEvents4_MediaCollectionMediaAdded(This,media) (This)->lpVtbl->MediaCollectionMediaAdded(This,media)
 9898#define IWMPEvents4_MediaCollectionMediaRemoved(This,media) (This)->lpVtbl->MediaCollectionMediaRemoved(This,media)
 9899/*** IWMPEvents4 methods ***/
 9900#define IWMPEvents4_DeviceEstimation(This,device,result,used_space,estimated_space) (This)->lpVtbl->DeviceEstimation(This,device,result,used_space,estimated_space)
 9901#else
 9902/*** IUnknown methods ***/
 9903static inline HRESULT IWMPEvents4_QueryInterface(IWMPEvents4* This,REFIID riid,void **ppvObject) {
 9904    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 9905}
 9906static inline ULONG IWMPEvents4_AddRef(IWMPEvents4* This) {
 9907    return This->lpVtbl->AddRef(This);
 9908}
 9909static inline ULONG IWMPEvents4_Release(IWMPEvents4* This) {
 9910    return This->lpVtbl->Release(This);
 9911}
 9912/*** IWMPEvents methods ***/
 9913static inline void IWMPEvents4_OpenStateChange(IWMPEvents4* This,LONG state) {
 9914    This->lpVtbl->OpenStateChange(This,state);
 9915}
 9916static inline void IWMPEvents4_PlayStateChange(IWMPEvents4* This,LONG state) {
 9917    This->lpVtbl->PlayStateChange(This,state);
 9918}
 9919static inline void IWMPEvents4_AudioLanguageChange(IWMPEvents4* This,LONG lang) {
 9920    This->lpVtbl->AudioLanguageChange(This,lang);
 9921}
 9922static inline void IWMPEvents4_StatusChange(IWMPEvents4* This) {
 9923    This->lpVtbl->StatusChange(This);
 9924}
 9925static inline void IWMPEvents4_ScriptCommand(IWMPEvents4* This,BSTR type,BSTR param) {
 9926    This->lpVtbl->ScriptCommand(This,type,param);
 9927}
 9928static inline void IWMPEvents4_NewStream(IWMPEvents4* This) {
 9929    This->lpVtbl->NewStream(This);
 9930}
 9931static inline void IWMPEvents4_Disconnect(IWMPEvents4* This,LONG result) {
 9932    This->lpVtbl->Disconnect(This,result);
 9933}
 9934static inline void IWMPEvents4_Buffering(IWMPEvents4* This,VARIANT_BOOL start) {
 9935    This->lpVtbl->Buffering(This,start);
 9936}
 9937static inline void IWMPEvents4_Error(IWMPEvents4* This) {
 9938    This->lpVtbl->Error(This);
 9939}
 9940static inline void IWMPEvents4_Warning(IWMPEvents4* This,LONG warning,LONG param,BSTR description) {
 9941    This->lpVtbl->Warning(This,warning,param,description);
 9942}
 9943static inline void IWMPEvents4_EndOfStream(IWMPEvents4* This,LONG result) {
 9944    This->lpVtbl->EndOfStream(This,result);
 9945}
 9946static inline void IWMPEvents4_PositionChange(IWMPEvents4* This,double old_position,double new_position) {
 9947    This->lpVtbl->PositionChange(This,old_position,new_position);
 9948}
 9949static inline void IWMPEvents4_MarkerHit(IWMPEvents4* This,LONG marker) {
 9950    This->lpVtbl->MarkerHit(This,marker);
 9951}
 9952static inline void IWMPEvents4_DurationUnitChange(IWMPEvents4* This,LONG duration) {
 9953    This->lpVtbl->DurationUnitChange(This,duration);
 9954}
 9955static inline void IWMPEvents4_CdromMediaChange(IWMPEvents4* This,LONG num) {
 9956    This->lpVtbl->CdromMediaChange(This,num);
 9957}
 9958static inline void IWMPEvents4_PlaylistChange(IWMPEvents4* This,IDispatch *playlist,WMPPlaylistChangeEventType change) {
 9959    This->lpVtbl->PlaylistChange(This,playlist,change);
 9960}
 9961static inline void IWMPEvents4_CurrentPlaylistChange(IWMPEvents4* This,WMPPlaylistChangeEventType change) {
 9962    This->lpVtbl->CurrentPlaylistChange(This,change);
 9963}
 9964static inline void IWMPEvents4_CurrentPlaylistItemAvailable(IWMPEvents4* This,BSTR item) {
 9965    This->lpVtbl->CurrentPlaylistItemAvailable(This,item);
 9966}
 9967static inline void IWMPEvents4_MediaChange(IWMPEvents4* This,IDispatch *item) {
 9968    This->lpVtbl->MediaChange(This,item);
 9969}
 9970static inline void IWMPEvents4_CurrentMediaItemAvailable(IWMPEvents4* This,BSTR name) {
 9971    This->lpVtbl->CurrentMediaItemAvailable(This,name);
 9972}
 9973static inline void IWMPEvents4_CurrentItemChange(IWMPEvents4* This,IDispatch *media) {
 9974    This->lpVtbl->CurrentItemChange(This,media);
 9975}
 9976static inline void IWMPEvents4_MediaCollectionChange(IWMPEvents4* This) {
 9977    This->lpVtbl->MediaCollectionChange(This);
 9978}
 9979static inline void IWMPEvents4_MediaCollectionAttributeStringAdded(IWMPEvents4* This,BSTR name,BSTR val) {
 9980    This->lpVtbl->MediaCollectionAttributeStringAdded(This,name,val);
 9981}
 9982static inline void IWMPEvents4_MediaCollectionAttributeStringRemoved(IWMPEvents4* This,BSTR name,BSTR val) {
 9983    This->lpVtbl->MediaCollectionAttributeStringRemoved(This,name,val);
 9984}
 9985static inline void IWMPEvents4_MediaCollectionAttributeStringChanged(IWMPEvents4* This,BSTR name,BSTR old_val,BSTR new_val) {
 9986    This->lpVtbl->MediaCollectionAttributeStringChanged(This,name,old_val,new_val);
 9987}
 9988static inline void IWMPEvents4_PlaylistCollectionChange(IWMPEvents4* This) {
 9989    This->lpVtbl->PlaylistCollectionChange(This);
 9990}
 9991static inline void IWMPEvents4_PlaylistCollectionPlaylistAdded(IWMPEvents4* This,BSTR name) {
 9992    This->lpVtbl->PlaylistCollectionPlaylistAdded(This,name);
 9993}
 9994static inline void IWMPEvents4_PlaylistCollectionPlaylistRemoved(IWMPEvents4* This,BSTR name) {
 9995    This->lpVtbl->PlaylistCollectionPlaylistRemoved(This,name);
 9996}
 9997static inline void IWMPEvents4_PlaylistCollectionPlaylistSetAsDeleted(IWMPEvents4* This,BSTR name,VARIANT_BOOL deleted) {
 9998    This->lpVtbl->PlaylistCollectionPlaylistSetAsDeleted(This,name,deleted);
 9999}
10000static inline void IWMPEvents4_ModeChange(IWMPEvents4* This,BSTR ModeName,VARIANT_BOOL value) {
10001    This->lpVtbl->ModeChange(This,ModeName,value);
10002}
10003static inline void IWMPEvents4_MediaError(IWMPEvents4* This,IDispatch *media) {
10004    This->lpVtbl->MediaError(This,media);
10005}
10006static inline void IWMPEvents4_OpenPlaylistSwitch(IWMPEvents4* This,IDispatch *item) {
10007    This->lpVtbl->OpenPlaylistSwitch(This,item);
10008}
10009static inline void IWMPEvents4_DomainChange(IWMPEvents4* This,BSTR domain) {
10010    This->lpVtbl->DomainChange(This,domain);
10011}
10012static inline void IWMPEvents4_SwitchedToPlayerApplication(IWMPEvents4* This) {
10013    This->lpVtbl->SwitchedToPlayerApplication(This);
10014}
10015static inline void IWMPEvents4_SwitchedToControl(IWMPEvents4* This) {
10016    This->lpVtbl->SwitchedToControl(This);
10017}
10018static inline void IWMPEvents4_PlayerDockedStateChange(IWMPEvents4* This) {
10019    This->lpVtbl->PlayerDockedStateChange(This);
10020}
10021static inline void IWMPEvents4_PlayerReconnect(IWMPEvents4* This) {
10022    This->lpVtbl->PlayerReconnect(This);
10023}
10024static inline void IWMPEvents4_Click(IWMPEvents4* This,short button,short shift_state,LONG x,LONG y) {
10025    This->lpVtbl->Click(This,button,shift_state,x,y);
10026}
10027static inline void IWMPEvents4_DoubleClick(IWMPEvents4* This,short button,short shift_state,LONG fX,LONG fY) {
10028    This->lpVtbl->DoubleClick(This,button,shift_state,fX,fY);
10029}
10030static inline void IWMPEvents4_KeyDown(IWMPEvents4* This,short keycode,short shift_state) {
10031    This->lpVtbl->KeyDown(This,keycode,shift_state);
10032}
10033static inline void IWMPEvents4_KeyPress(IWMPEvents4* This,short ascii) {
10034    This->lpVtbl->KeyPress(This,ascii);
10035}
10036static inline void IWMPEvents4_KeyUp(IWMPEvents4* This,short keycode,short shift_state) {
10037    This->lpVtbl->KeyUp(This,keycode,shift_state);
10038}
10039static inline void IWMPEvents4_MouseDown(IWMPEvents4* This,short button,short nShiftState,LONG x,LONG y) {
10040    This->lpVtbl->MouseDown(This,button,nShiftState,x,y);
10041}
10042static inline void IWMPEvents4_MouseMove(IWMPEvents4* This,short button,short shift_state,LONG x,LONG y) {
10043    This->lpVtbl->MouseMove(This,button,shift_state,x,y);
10044}
10045static inline void IWMPEvents4_MouseUp(IWMPEvents4* This,short button,short shift_state,LONG x,LONG y) {
10046    This->lpVtbl->MouseUp(This,button,shift_state,x,y);
10047}
10048/*** IWMPEvents2 methods ***/
10049static inline void IWMPEvents4_DeviceConnect(IWMPEvents4* This,IWMPSyncDevice *device) {
10050    This->lpVtbl->DeviceConnect(This,device);
10051}
10052static inline void IWMPEvents4_DeviceDisconnect(IWMPEvents4* This,IWMPSyncDevice *device) {
10053    This->lpVtbl->DeviceDisconnect(This,device);
10054}
10055static inline void IWMPEvents4_DeviceStatusChange(IWMPEvents4* This,IWMPSyncDevice *device,WMPDeviceStatus status) {
10056    This->lpVtbl->DeviceStatusChange(This,device,status);
10057}
10058static inline void IWMPEvents4_DeviceSyncStateChange(IWMPEvents4* This,IWMPSyncDevice *device,WMPSyncState state) {
10059    This->lpVtbl->DeviceSyncStateChange(This,device,state);
10060}
10061static inline void IWMPEvents4_DeviceSyncError(IWMPEvents4* This,IWMPSyncDevice *device,IDispatch *media) {
10062    This->lpVtbl->DeviceSyncError(This,device,media);
10063}
10064static inline void IWMPEvents4_CreatePartnershipComplete(IWMPEvents4* This,IWMPSyncDevice *device,HRESULT result) {
10065    This->lpVtbl->CreatePartnershipComplete(This,device,result);
10066}
10067/*** IWMPEvents3 methods ***/
10068static inline void IWMPEvents4_CdromRipStateChange(IWMPEvents4* This,IWMPCdromRip *rip,WMPRipState state) {
10069    This->lpVtbl->CdromRipStateChange(This,rip,state);
10070}
10071static inline void IWMPEvents4_CdromRipMediaError(IWMPEvents4* This,IWMPCdromRip *rip,IDispatch *media) {
10072    This->lpVtbl->CdromRipMediaError(This,rip,media);
10073}
10074static inline void IWMPEvents4_CdromBurnStateChange(IWMPEvents4* This,IWMPCdromBurn *burn,WMPBurnState state) {
10075    This->lpVtbl->CdromBurnStateChange(This,burn,state);
10076}
10077static inline void IWMPEvents4_CdromBurnMediaError(IWMPEvents4* This,IWMPCdromBurn *burn,IDispatch *media) {
10078    This->lpVtbl->CdromBurnMediaError(This,burn,media);
10079}
10080static inline void IWMPEvents4_CdromBurnError(IWMPEvents4* This,IWMPCdromBurn *burn,HRESULT error) {
10081    This->lpVtbl->CdromBurnError(This,burn,error);
10082}
10083static inline void IWMPEvents4_LibraryConnect(IWMPEvents4* This,IWMPLibrary *wmplibrary) {
10084    This->lpVtbl->LibraryConnect(This,wmplibrary);
10085}
10086static inline void IWMPEvents4_LibraryDisconnect(IWMPEvents4* This,IWMPLibrary *wmplibrary) {
10087    This->lpVtbl->LibraryDisconnect(This,wmplibrary);
10088}
10089static inline void IWMPEvents4_FolderScanStateChange(IWMPEvents4* This,WMPFolderScanState state) {
10090    This->lpVtbl->FolderScanStateChange(This,state);
10091}
10092static inline void IWMPEvents4_StringCollectionChange(IWMPEvents4* This,IDispatch *collection,WMPStringCollectionChangeEventType change,LONG index) {
10093    This->lpVtbl->StringCollectionChange(This,collection,change,index);
10094}
10095static inline void IWMPEvents4_MediaCollectionMediaAdded(IWMPEvents4* This,IDispatch *media) {
10096    This->lpVtbl->MediaCollectionMediaAdded(This,media);
10097}
10098static inline void IWMPEvents4_MediaCollectionMediaRemoved(IWMPEvents4* This,IDispatch *media) {
10099    This->lpVtbl->MediaCollectionMediaRemoved(This,media);
10100}
10101/*** IWMPEvents4 methods ***/
10102static inline void IWMPEvents4_DeviceEstimation(IWMPEvents4* This,IWMPSyncDevice *device,HRESULT result,LONGLONG used_space,LONGLONG estimated_space) {
10103    This->lpVtbl->DeviceEstimation(This,device,result,used_space,estimated_space);
10104}
10105#endif
10106#endif
10107
10108#endif
10109
10110
10111#endif  /* __IWMPEvents4_INTERFACE_DEFINED__ */
10112
10113/*****************************************************************************
10114 * _WMPOCXEvents interface
10115 */
10116#ifndef ___WMPOCXEvents_INTERFACE_DEFINED__
10117#define ___WMPOCXEvents_INTERFACE_DEFINED__
10118
10119DEFINE_GUID(IID__WMPOCXEvents, 0x6bf52a51, 0x394a, 0x11d3, 0xb1,0x53, 0x00,0xc0,0x4f,0x79,0xfa,0xa6);
10120#if defined(__cplusplus) && !defined(CINTERFACE)
10121MIDL_INTERFACE("6bf52a51-394a-11d3-b153-00c04f79faa6")
10122_WMPOCXEvents : public IDispatch
10123{
10124};
10125#ifdef __CRT_UUID_DECL
10126__CRT_UUID_DECL(_WMPOCXEvents, 0x6bf52a51, 0x394a, 0x11d3, 0xb1,0x53, 0x00,0xc0,0x4f,0x79,0xfa,0xa6)
10127#endif
10128#else
10129typedef struct _WMPOCXEventsVtbl {
10130    BEGIN_INTERFACE
10131
10132    /*** IUnknown methods ***/
10133    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
10134        _WMPOCXEvents *This,
10135        REFIID riid,
10136        void **ppvObject);
10137
10138    ULONG (STDMETHODCALLTYPE *AddRef)(
10139        _WMPOCXEvents *This);
10140
10141    ULONG (STDMETHODCALLTYPE *Release)(
10142        _WMPOCXEvents *This);
10143
10144    /*** IDispatch methods ***/
10145    HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
10146        _WMPOCXEvents *This,
10147        UINT *pctinfo);
10148
10149    HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
10150        _WMPOCXEvents *This,
10151        UINT iTInfo,
10152        LCID lcid,
10153        ITypeInfo **ppTInfo);
10154
10155    HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
10156        _WMPOCXEvents *This,
10157        REFIID riid,
10158        LPOLESTR *rgszNames,
10159        UINT cNames,
10160        LCID lcid,
10161        DISPID *rgDispId);
10162
10163    HRESULT (STDMETHODCALLTYPE *Invoke)(
10164        _WMPOCXEvents *This,
10165        DISPID dispIdMember,
10166        REFIID riid,
10167        LCID lcid,
10168        WORD wFlags,
10169        DISPPARAMS *pDispParams,
10170        VARIANT *pVarResult,
10171        EXCEPINFO *pExcepInfo,
10172        UINT *puArgErr);
10173
10174    END_INTERFACE
10175} _WMPOCXEventsVtbl;
10176
10177interface _WMPOCXEvents {
10178    CONST_VTBL _WMPOCXEventsVtbl* lpVtbl;
10179};
10180
10181#ifdef COBJMACROS
10182#ifndef WIDL_C_INLINE_WRAPPERS
10183/*** IUnknown methods ***/
10184#define _WMPOCXEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
10185#define _WMPOCXEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
10186#define _WMPOCXEvents_Release(This) (This)->lpVtbl->Release(This)
10187/*** IDispatch methods ***/
10188#define _WMPOCXEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
10189#define _WMPOCXEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
10190#define _WMPOCXEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
10191#define _WMPOCXEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
10192#else
10193/*** IUnknown methods ***/
10194static inline HRESULT _WMPOCXEvents_QueryInterface(_WMPOCXEvents* This,REFIID riid,void **ppvObject) {
10195    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
10196}
10197static inline ULONG _WMPOCXEvents_AddRef(_WMPOCXEvents* This) {
10198    return This->lpVtbl->AddRef(This);
10199}
10200static inline ULONG _WMPOCXEvents_Release(_WMPOCXEvents* This) {
10201    return This->lpVtbl->Release(This);
10202}
10203/*** IDispatch methods ***/
10204static inline HRESULT _WMPOCXEvents_GetTypeInfoCount(_WMPOCXEvents* This,UINT *pctinfo) {
10205    return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
10206}
10207static inline HRESULT _WMPOCXEvents_GetTypeInfo(_WMPOCXEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
10208    return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
10209}
10210static inline HRESULT _WMPOCXEvents_GetIDsOfNames(_WMPOCXEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
10211    return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
10212}
10213static inline HRESULT _WMPOCXEvents_Invoke(_WMPOCXEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
10214    return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
10215}
10216#endif
10217#endif
10218
10219#endif
10220
10221
10222#endif  /* ___WMPOCXEvents_INTERFACE_DEFINED__ */
10223
10224/*****************************************************************************
10225 * WindowsMediaPlayer coclass
10226 */
10227
10228DEFINE_GUID(CLSID_WindowsMediaPlayer, 0x6bf52a52, 0x394a, 0x11d3, 0xb1,0x53, 0x00,0xc0,0x4f,0x79,0xfa,0xa6);
10229
10230#ifdef __cplusplus
10231class DECLSPEC_UUID("6bf52a52-394a-11d3-b153-00c04f79faa6") WindowsMediaPlayer;
10232#ifdef __CRT_UUID_DECL
10233__CRT_UUID_DECL(WindowsMediaPlayer, 0x6bf52a52, 0x394a, 0x11d3, 0xb1,0x53, 0x00,0xc0,0x4f,0x79,0xfa,0xa6)
10234#endif
10235#endif
10236
10237#endif /* __WMPLib_LIBRARY_DEFINED__ */
10238/* Begin additional prototypes for all interfaces */
10239
10240ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
10241unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
10242unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
10243void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
10244ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
10245unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
10246unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
10247void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
10248
10249/* End additional prototypes */
10250
10251#ifdef __cplusplus
10252}
10253#endif
10254
10255#endif /* __wmp_h__ */