wmsdkidl.h
上传用户:hylc_2004
上传日期:2014-01-23
资源大小:46800k
文件大小:644k
源码类别:

Delphi控件源码

开发平台:

Delphi

  1.     IWMReaderNetworkConfig * This,
  2.     /* [in] */ BOOL fEnableUDP);
  3. void __RPC_STUB IWMReaderNetworkConfig_SetEnableUDP_Stub(
  4.     IRpcStubBuffer *This,
  5.     IRpcChannelBuffer *_pRpcChannelBuffer,
  6.     PRPC_MESSAGE _pRpcMessage,
  7.     DWORD *_pdwStubPhase);
  8. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_GetEnableTCP_Proxy( 
  9.     IWMReaderNetworkConfig * This,
  10.     /* [out] */ BOOL *pfEnableTCP);
  11. void __RPC_STUB IWMReaderNetworkConfig_GetEnableTCP_Stub(
  12.     IRpcStubBuffer *This,
  13.     IRpcChannelBuffer *_pRpcChannelBuffer,
  14.     PRPC_MESSAGE _pRpcMessage,
  15.     DWORD *_pdwStubPhase);
  16. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_SetEnableTCP_Proxy( 
  17.     IWMReaderNetworkConfig * This,
  18.     /* [in] */ BOOL fEnableTCP);
  19. void __RPC_STUB IWMReaderNetworkConfig_SetEnableTCP_Stub(
  20.     IRpcStubBuffer *This,
  21.     IRpcChannelBuffer *_pRpcChannelBuffer,
  22.     PRPC_MESSAGE _pRpcMessage,
  23.     DWORD *_pdwStubPhase);
  24. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_ResetProtocolRollover_Proxy( 
  25.     IWMReaderNetworkConfig * This);
  26. void __RPC_STUB IWMReaderNetworkConfig_ResetProtocolRollover_Stub(
  27.     IRpcStubBuffer *This,
  28.     IRpcChannelBuffer *_pRpcChannelBuffer,
  29.     PRPC_MESSAGE _pRpcMessage,
  30.     DWORD *_pdwStubPhase);
  31. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_GetConnectionBandwidth_Proxy( 
  32.     IWMReaderNetworkConfig * This,
  33.     /* [out] */ DWORD *pdwConnectionBandwidth);
  34. void __RPC_STUB IWMReaderNetworkConfig_GetConnectionBandwidth_Stub(
  35.     IRpcStubBuffer *This,
  36.     IRpcChannelBuffer *_pRpcChannelBuffer,
  37.     PRPC_MESSAGE _pRpcMessage,
  38.     DWORD *_pdwStubPhase);
  39. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_SetConnectionBandwidth_Proxy( 
  40.     IWMReaderNetworkConfig * This,
  41.     /* [in] */ DWORD dwConnectionBandwidth);
  42. void __RPC_STUB IWMReaderNetworkConfig_SetConnectionBandwidth_Stub(
  43.     IRpcStubBuffer *This,
  44.     IRpcChannelBuffer *_pRpcChannelBuffer,
  45.     PRPC_MESSAGE _pRpcMessage,
  46.     DWORD *_pdwStubPhase);
  47. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_GetNumProtocolsSupported_Proxy( 
  48.     IWMReaderNetworkConfig * This,
  49.     /* [out] */ DWORD *pcProtocols);
  50. void __RPC_STUB IWMReaderNetworkConfig_GetNumProtocolsSupported_Stub(
  51.     IRpcStubBuffer *This,
  52.     IRpcChannelBuffer *_pRpcChannelBuffer,
  53.     PRPC_MESSAGE _pRpcMessage,
  54.     DWORD *_pdwStubPhase);
  55. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_GetSupportedProtocolName_Proxy( 
  56.     IWMReaderNetworkConfig * This,
  57.     /* [in] */ DWORD dwProtocolNum,
  58.     /* [size_is][out] */ WCHAR *pwszProtocolName,
  59.     /* [out][in] */ DWORD *pcchProtocolName);
  60. void __RPC_STUB IWMReaderNetworkConfig_GetSupportedProtocolName_Stub(
  61.     IRpcStubBuffer *This,
  62.     IRpcChannelBuffer *_pRpcChannelBuffer,
  63.     PRPC_MESSAGE _pRpcMessage,
  64.     DWORD *_pdwStubPhase);
  65. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_AddLoggingUrl_Proxy( 
  66.     IWMReaderNetworkConfig * This,
  67.     /* [in] */ LPCWSTR pwszUrl);
  68. void __RPC_STUB IWMReaderNetworkConfig_AddLoggingUrl_Stub(
  69.     IRpcStubBuffer *This,
  70.     IRpcChannelBuffer *_pRpcChannelBuffer,
  71.     PRPC_MESSAGE _pRpcMessage,
  72.     DWORD *_pdwStubPhase);
  73. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_GetLoggingUrl_Proxy( 
  74.     IWMReaderNetworkConfig * This,
  75.     /* [in] */ DWORD dwIndex,
  76.     /* [size_is][out] */ LPWSTR pwszUrl,
  77.     /* [out][in] */ DWORD *pcchUrl);
  78. void __RPC_STUB IWMReaderNetworkConfig_GetLoggingUrl_Stub(
  79.     IRpcStubBuffer *This,
  80.     IRpcChannelBuffer *_pRpcChannelBuffer,
  81.     PRPC_MESSAGE _pRpcMessage,
  82.     DWORD *_pdwStubPhase);
  83. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_GetLoggingUrlCount_Proxy( 
  84.     IWMReaderNetworkConfig * This,
  85.     /* [out] */ DWORD *pdwUrlCount);
  86. void __RPC_STUB IWMReaderNetworkConfig_GetLoggingUrlCount_Stub(
  87.     IRpcStubBuffer *This,
  88.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89.     PRPC_MESSAGE _pRpcMessage,
  90.     DWORD *_pdwStubPhase);
  91. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig_ResetLoggingUrlList_Proxy( 
  92.     IWMReaderNetworkConfig * This);
  93. void __RPC_STUB IWMReaderNetworkConfig_ResetLoggingUrlList_Stub(
  94.     IRpcStubBuffer *This,
  95.     IRpcChannelBuffer *_pRpcChannelBuffer,
  96.     PRPC_MESSAGE _pRpcMessage,
  97.     DWORD *_pdwStubPhase);
  98. #endif  /* __IWMReaderNetworkConfig_INTERFACE_DEFINED__ */
  99. #ifndef __IWMReaderNetworkConfig2_INTERFACE_DEFINED__
  100. #define __IWMReaderNetworkConfig2_INTERFACE_DEFINED__
  101. /* interface IWMReaderNetworkConfig2 */
  102. /* [local][unique][helpstring][uuid][object] */ 
  103. EXTERN_C const IID IID_IWMReaderNetworkConfig2;
  104. #if defined(__cplusplus) && !defined(CINTERFACE)
  105.     
  106.     MIDL_INTERFACE("d979a853-042b-4050-8387-c939db22013f")
  107.     IWMReaderNetworkConfig2 : public IWMReaderNetworkConfig
  108.     {
  109.     public:
  110.         virtual HRESULT STDMETHODCALLTYPE GetEnableContentCaching( 
  111.             /* [out] */ BOOL *pfEnableContentCaching) = 0;
  112.         
  113.         virtual HRESULT STDMETHODCALLTYPE SetEnableContentCaching( 
  114.             /* [in] */ BOOL fEnableContentCaching) = 0;
  115.         
  116.         virtual HRESULT STDMETHODCALLTYPE GetEnableFastCache( 
  117.             /* [out] */ BOOL *pfEnableFastCache) = 0;
  118.         
  119.         virtual HRESULT STDMETHODCALLTYPE SetEnableFastCache( 
  120.             /* [in] */ BOOL fEnableFastCache) = 0;
  121.         
  122.         virtual HRESULT STDMETHODCALLTYPE GetAcceleratedStreamingDuration( 
  123.             /* [out] */ QWORD *pcnsAccelDuration) = 0;
  124.         
  125.         virtual HRESULT STDMETHODCALLTYPE SetAcceleratedStreamingDuration( 
  126.             /* [in] */ QWORD cnsAccelDuration) = 0;
  127.         
  128.         virtual HRESULT STDMETHODCALLTYPE GetAutoReconnectLimit( 
  129.             /* [out] */ DWORD *pdwAutoReconnectLimit) = 0;
  130.         
  131.         virtual HRESULT STDMETHODCALLTYPE SetAutoReconnectLimit( 
  132.             /* [in] */ DWORD dwAutoReconnectLimit) = 0;
  133.         
  134.         virtual HRESULT STDMETHODCALLTYPE GetEnableResends( 
  135.             /* [out] */ BOOL *pfEnableResends) = 0;
  136.         
  137.         virtual HRESULT STDMETHODCALLTYPE SetEnableResends( 
  138.             /* [in] */ BOOL fEnableResends) = 0;
  139.         
  140.         virtual HRESULT STDMETHODCALLTYPE GetEnableThinning( 
  141.             /* [out] */ BOOL *pfEnableThinning) = 0;
  142.         
  143.         virtual HRESULT STDMETHODCALLTYPE SetEnableThinning( 
  144.             /* [in] */ BOOL fEnableThinning) = 0;
  145.         
  146.         virtual HRESULT STDMETHODCALLTYPE GetMaxNetPacketSize( 
  147.             /* [out] */ DWORD *pdwMaxNetPacketSize) = 0;
  148.         
  149.     };
  150.     
  151. #else  /* C style interface */
  152.     typedef struct IWMReaderNetworkConfig2Vtbl
  153.     {
  154.         BEGIN_INTERFACE
  155.         
  156.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  157.             IWMReaderNetworkConfig2 * This,
  158.             /* [in] */ REFIID riid,
  159.             /* [iid_is][out] */ void **ppvObject);
  160.         
  161.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  162.             IWMReaderNetworkConfig2 * This);
  163.         
  164.         ULONG ( STDMETHODCALLTYPE *Release )( 
  165.             IWMReaderNetworkConfig2 * This);
  166.         
  167.         HRESULT ( STDMETHODCALLTYPE *GetBufferingTime )( 
  168.             IWMReaderNetworkConfig2 * This,
  169.             /* [out] */ QWORD *pcnsBufferingTime);
  170.         
  171.         HRESULT ( STDMETHODCALLTYPE *SetBufferingTime )( 
  172.             IWMReaderNetworkConfig2 * This,
  173.             /* [in] */ QWORD cnsBufferingTime);
  174.         
  175.         HRESULT ( STDMETHODCALLTYPE *GetUDPPortRanges )( 
  176.             IWMReaderNetworkConfig2 * This,
  177.             /* [size_is][out] */ WM_PORT_NUMBER_RANGE *pRangeArray,
  178.             /* [out][in] */ DWORD *pcRanges);
  179.         
  180.         HRESULT ( STDMETHODCALLTYPE *SetUDPPortRanges )( 
  181.             IWMReaderNetworkConfig2 * This,
  182.             /* [size_is][in] */ WM_PORT_NUMBER_RANGE *pRangeArray,
  183.             /* [in] */ DWORD cRanges);
  184.         
  185.         HRESULT ( STDMETHODCALLTYPE *GetProxySettings )( 
  186.             IWMReaderNetworkConfig2 * This,
  187.             /* [in] */ LPCWSTR pwszProtocol,
  188.             /* [out] */ WMT_PROXY_SETTINGS *pProxySetting);
  189.         
  190.         HRESULT ( STDMETHODCALLTYPE *SetProxySettings )( 
  191.             IWMReaderNetworkConfig2 * This,
  192.             /* [in] */ LPCWSTR pwszProtocol,
  193.             /* [in] */ WMT_PROXY_SETTINGS ProxySetting);
  194.         
  195.         HRESULT ( STDMETHODCALLTYPE *GetProxyHostName )( 
  196.             IWMReaderNetworkConfig2 * This,
  197.             /* [in] */ LPCWSTR pwszProtocol,
  198.             /* [size_is][out] */ WCHAR *pwszHostName,
  199.             /* [out][in] */ DWORD *pcchHostName);
  200.         
  201.         HRESULT ( STDMETHODCALLTYPE *SetProxyHostName )( 
  202.             IWMReaderNetworkConfig2 * This,
  203.             /* [in] */ LPCWSTR pwszProtocol,
  204.             /* [in] */ LPCWSTR pwszHostName);
  205.         
  206.         HRESULT ( STDMETHODCALLTYPE *GetProxyPort )( 
  207.             IWMReaderNetworkConfig2 * This,
  208.             /* [in] */ LPCWSTR pwszProtocol,
  209.             /* [out] */ DWORD *pdwPort);
  210.         
  211.         HRESULT ( STDMETHODCALLTYPE *SetProxyPort )( 
  212.             IWMReaderNetworkConfig2 * This,
  213.             /* [in] */ LPCWSTR pwszProtocol,
  214.             /* [in] */ DWORD dwPort);
  215.         
  216.         HRESULT ( STDMETHODCALLTYPE *GetProxyExceptionList )( 
  217.             IWMReaderNetworkConfig2 * This,
  218.             /* [in] */ LPCWSTR pwszProtocol,
  219.             /* [size_is][out] */ WCHAR *pwszExceptionList,
  220.             /* [out][in] */ DWORD *pcchExceptionList);
  221.         
  222.         HRESULT ( STDMETHODCALLTYPE *SetProxyExceptionList )( 
  223.             IWMReaderNetworkConfig2 * This,
  224.             /* [in] */ LPCWSTR pwszProtocol,
  225.             /* [in] */ LPCWSTR pwszExceptionList);
  226.         
  227.         HRESULT ( STDMETHODCALLTYPE *GetProxyBypassForLocal )( 
  228.             IWMReaderNetworkConfig2 * This,
  229.             /* [in] */ LPCWSTR pwszProtocol,
  230.             /* [out] */ BOOL *pfBypassForLocal);
  231.         
  232.         HRESULT ( STDMETHODCALLTYPE *SetProxyBypassForLocal )( 
  233.             IWMReaderNetworkConfig2 * This,
  234.             /* [in] */ LPCWSTR pwszProtocol,
  235.             /* [in] */ BOOL fBypassForLocal);
  236.         
  237.         HRESULT ( STDMETHODCALLTYPE *GetForceRerunAutoProxyDetection )( 
  238.             IWMReaderNetworkConfig2 * This,
  239.             /* [out] */ BOOL *pfForceRerunDetection);
  240.         
  241.         HRESULT ( STDMETHODCALLTYPE *SetForceRerunAutoProxyDetection )( 
  242.             IWMReaderNetworkConfig2 * This,
  243.             /* [in] */ BOOL fForceRerunDetection);
  244.         
  245.         HRESULT ( STDMETHODCALLTYPE *GetEnableMulticast )( 
  246.             IWMReaderNetworkConfig2 * This,
  247.             /* [out] */ BOOL *pfEnableMulticast);
  248.         
  249.         HRESULT ( STDMETHODCALLTYPE *SetEnableMulticast )( 
  250.             IWMReaderNetworkConfig2 * This,
  251.             /* [in] */ BOOL fEnableMulticast);
  252.         
  253.         HRESULT ( STDMETHODCALLTYPE *GetEnableHTTP )( 
  254.             IWMReaderNetworkConfig2 * This,
  255.             /* [out] */ BOOL *pfEnableHTTP);
  256.         
  257.         HRESULT ( STDMETHODCALLTYPE *SetEnableHTTP )( 
  258.             IWMReaderNetworkConfig2 * This,
  259.             /* [in] */ BOOL fEnableHTTP);
  260.         
  261.         HRESULT ( STDMETHODCALLTYPE *GetEnableUDP )( 
  262.             IWMReaderNetworkConfig2 * This,
  263.             /* [out] */ BOOL *pfEnableUDP);
  264.         
  265.         HRESULT ( STDMETHODCALLTYPE *SetEnableUDP )( 
  266.             IWMReaderNetworkConfig2 * This,
  267.             /* [in] */ BOOL fEnableUDP);
  268.         
  269.         HRESULT ( STDMETHODCALLTYPE *GetEnableTCP )( 
  270.             IWMReaderNetworkConfig2 * This,
  271.             /* [out] */ BOOL *pfEnableTCP);
  272.         
  273.         HRESULT ( STDMETHODCALLTYPE *SetEnableTCP )( 
  274.             IWMReaderNetworkConfig2 * This,
  275.             /* [in] */ BOOL fEnableTCP);
  276.         
  277.         HRESULT ( STDMETHODCALLTYPE *ResetProtocolRollover )( 
  278.             IWMReaderNetworkConfig2 * This);
  279.         
  280.         HRESULT ( STDMETHODCALLTYPE *GetConnectionBandwidth )( 
  281.             IWMReaderNetworkConfig2 * This,
  282.             /* [out] */ DWORD *pdwConnectionBandwidth);
  283.         
  284.         HRESULT ( STDMETHODCALLTYPE *SetConnectionBandwidth )( 
  285.             IWMReaderNetworkConfig2 * This,
  286.             /* [in] */ DWORD dwConnectionBandwidth);
  287.         
  288.         HRESULT ( STDMETHODCALLTYPE *GetNumProtocolsSupported )( 
  289.             IWMReaderNetworkConfig2 * This,
  290.             /* [out] */ DWORD *pcProtocols);
  291.         
  292.         HRESULT ( STDMETHODCALLTYPE *GetSupportedProtocolName )( 
  293.             IWMReaderNetworkConfig2 * This,
  294.             /* [in] */ DWORD dwProtocolNum,
  295.             /* [size_is][out] */ WCHAR *pwszProtocolName,
  296.             /* [out][in] */ DWORD *pcchProtocolName);
  297.         
  298.         HRESULT ( STDMETHODCALLTYPE *AddLoggingUrl )( 
  299.             IWMReaderNetworkConfig2 * This,
  300.             /* [in] */ LPCWSTR pwszUrl);
  301.         
  302.         HRESULT ( STDMETHODCALLTYPE *GetLoggingUrl )( 
  303.             IWMReaderNetworkConfig2 * This,
  304.             /* [in] */ DWORD dwIndex,
  305.             /* [size_is][out] */ LPWSTR pwszUrl,
  306.             /* [out][in] */ DWORD *pcchUrl);
  307.         
  308.         HRESULT ( STDMETHODCALLTYPE *GetLoggingUrlCount )( 
  309.             IWMReaderNetworkConfig2 * This,
  310.             /* [out] */ DWORD *pdwUrlCount);
  311.         
  312.         HRESULT ( STDMETHODCALLTYPE *ResetLoggingUrlList )( 
  313.             IWMReaderNetworkConfig2 * This);
  314.         
  315.         HRESULT ( STDMETHODCALLTYPE *GetEnableContentCaching )( 
  316.             IWMReaderNetworkConfig2 * This,
  317.             /* [out] */ BOOL *pfEnableContentCaching);
  318.         
  319.         HRESULT ( STDMETHODCALLTYPE *SetEnableContentCaching )( 
  320.             IWMReaderNetworkConfig2 * This,
  321.             /* [in] */ BOOL fEnableContentCaching);
  322.         
  323.         HRESULT ( STDMETHODCALLTYPE *GetEnableFastCache )( 
  324.             IWMReaderNetworkConfig2 * This,
  325.             /* [out] */ BOOL *pfEnableFastCache);
  326.         
  327.         HRESULT ( STDMETHODCALLTYPE *SetEnableFastCache )( 
  328.             IWMReaderNetworkConfig2 * This,
  329.             /* [in] */ BOOL fEnableFastCache);
  330.         
  331.         HRESULT ( STDMETHODCALLTYPE *GetAcceleratedStreamingDuration )( 
  332.             IWMReaderNetworkConfig2 * This,
  333.             /* [out] */ QWORD *pcnsAccelDuration);
  334.         
  335.         HRESULT ( STDMETHODCALLTYPE *SetAcceleratedStreamingDuration )( 
  336.             IWMReaderNetworkConfig2 * This,
  337.             /* [in] */ QWORD cnsAccelDuration);
  338.         
  339.         HRESULT ( STDMETHODCALLTYPE *GetAutoReconnectLimit )( 
  340.             IWMReaderNetworkConfig2 * This,
  341.             /* [out] */ DWORD *pdwAutoReconnectLimit);
  342.         
  343.         HRESULT ( STDMETHODCALLTYPE *SetAutoReconnectLimit )( 
  344.             IWMReaderNetworkConfig2 * This,
  345.             /* [in] */ DWORD dwAutoReconnectLimit);
  346.         
  347.         HRESULT ( STDMETHODCALLTYPE *GetEnableResends )( 
  348.             IWMReaderNetworkConfig2 * This,
  349.             /* [out] */ BOOL *pfEnableResends);
  350.         
  351.         HRESULT ( STDMETHODCALLTYPE *SetEnableResends )( 
  352.             IWMReaderNetworkConfig2 * This,
  353.             /* [in] */ BOOL fEnableResends);
  354.         
  355.         HRESULT ( STDMETHODCALLTYPE *GetEnableThinning )( 
  356.             IWMReaderNetworkConfig2 * This,
  357.             /* [out] */ BOOL *pfEnableThinning);
  358.         
  359.         HRESULT ( STDMETHODCALLTYPE *SetEnableThinning )( 
  360.             IWMReaderNetworkConfig2 * This,
  361.             /* [in] */ BOOL fEnableThinning);
  362.         
  363.         HRESULT ( STDMETHODCALLTYPE *GetMaxNetPacketSize )( 
  364.             IWMReaderNetworkConfig2 * This,
  365.             /* [out] */ DWORD *pdwMaxNetPacketSize);
  366.         
  367.         END_INTERFACE
  368.     } IWMReaderNetworkConfig2Vtbl;
  369.     interface IWMReaderNetworkConfig2
  370.     {
  371.         CONST_VTBL struct IWMReaderNetworkConfig2Vtbl *lpVtbl;
  372.     };
  373.     
  374. #ifdef COBJMACROS
  375. #define IWMReaderNetworkConfig2_QueryInterface(This,riid,ppvObject)
  376.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  377. #define IWMReaderNetworkConfig2_AddRef(This)
  378.     (This)->lpVtbl -> AddRef(This)
  379. #define IWMReaderNetworkConfig2_Release(This)
  380.     (This)->lpVtbl -> Release(This)
  381. #define IWMReaderNetworkConfig2_GetBufferingTime(This,pcnsBufferingTime)
  382.     (This)->lpVtbl -> GetBufferingTime(This,pcnsBufferingTime)
  383. #define IWMReaderNetworkConfig2_SetBufferingTime(This,cnsBufferingTime)
  384.     (This)->lpVtbl -> SetBufferingTime(This,cnsBufferingTime)
  385. #define IWMReaderNetworkConfig2_GetUDPPortRanges(This,pRangeArray,pcRanges)
  386.     (This)->lpVtbl -> GetUDPPortRanges(This,pRangeArray,pcRanges)
  387. #define IWMReaderNetworkConfig2_SetUDPPortRanges(This,pRangeArray,cRanges)
  388.     (This)->lpVtbl -> SetUDPPortRanges(This,pRangeArray,cRanges)
  389. #define IWMReaderNetworkConfig2_GetProxySettings(This,pwszProtocol,pProxySetting)
  390.     (This)->lpVtbl -> GetProxySettings(This,pwszProtocol,pProxySetting)
  391. #define IWMReaderNetworkConfig2_SetProxySettings(This,pwszProtocol,ProxySetting)
  392.     (This)->lpVtbl -> SetProxySettings(This,pwszProtocol,ProxySetting)
  393. #define IWMReaderNetworkConfig2_GetProxyHostName(This,pwszProtocol,pwszHostName,pcchHostName)
  394.     (This)->lpVtbl -> GetProxyHostName(This,pwszProtocol,pwszHostName,pcchHostName)
  395. #define IWMReaderNetworkConfig2_SetProxyHostName(This,pwszProtocol,pwszHostName)
  396.     (This)->lpVtbl -> SetProxyHostName(This,pwszProtocol,pwszHostName)
  397. #define IWMReaderNetworkConfig2_GetProxyPort(This,pwszProtocol,pdwPort)
  398.     (This)->lpVtbl -> GetProxyPort(This,pwszProtocol,pdwPort)
  399. #define IWMReaderNetworkConfig2_SetProxyPort(This,pwszProtocol,dwPort)
  400.     (This)->lpVtbl -> SetProxyPort(This,pwszProtocol,dwPort)
  401. #define IWMReaderNetworkConfig2_GetProxyExceptionList(This,pwszProtocol,pwszExceptionList,pcchExceptionList)
  402.     (This)->lpVtbl -> GetProxyExceptionList(This,pwszProtocol,pwszExceptionList,pcchExceptionList)
  403. #define IWMReaderNetworkConfig2_SetProxyExceptionList(This,pwszProtocol,pwszExceptionList)
  404.     (This)->lpVtbl -> SetProxyExceptionList(This,pwszProtocol,pwszExceptionList)
  405. #define IWMReaderNetworkConfig2_GetProxyBypassForLocal(This,pwszProtocol,pfBypassForLocal)
  406.     (This)->lpVtbl -> GetProxyBypassForLocal(This,pwszProtocol,pfBypassForLocal)
  407. #define IWMReaderNetworkConfig2_SetProxyBypassForLocal(This,pwszProtocol,fBypassForLocal)
  408.     (This)->lpVtbl -> SetProxyBypassForLocal(This,pwszProtocol,fBypassForLocal)
  409. #define IWMReaderNetworkConfig2_GetForceRerunAutoProxyDetection(This,pfForceRerunDetection)
  410.     (This)->lpVtbl -> GetForceRerunAutoProxyDetection(This,pfForceRerunDetection)
  411. #define IWMReaderNetworkConfig2_SetForceRerunAutoProxyDetection(This,fForceRerunDetection)
  412.     (This)->lpVtbl -> SetForceRerunAutoProxyDetection(This,fForceRerunDetection)
  413. #define IWMReaderNetworkConfig2_GetEnableMulticast(This,pfEnableMulticast)
  414.     (This)->lpVtbl -> GetEnableMulticast(This,pfEnableMulticast)
  415. #define IWMReaderNetworkConfig2_SetEnableMulticast(This,fEnableMulticast)
  416.     (This)->lpVtbl -> SetEnableMulticast(This,fEnableMulticast)
  417. #define IWMReaderNetworkConfig2_GetEnableHTTP(This,pfEnableHTTP)
  418.     (This)->lpVtbl -> GetEnableHTTP(This,pfEnableHTTP)
  419. #define IWMReaderNetworkConfig2_SetEnableHTTP(This,fEnableHTTP)
  420.     (This)->lpVtbl -> SetEnableHTTP(This,fEnableHTTP)
  421. #define IWMReaderNetworkConfig2_GetEnableUDP(This,pfEnableUDP)
  422.     (This)->lpVtbl -> GetEnableUDP(This,pfEnableUDP)
  423. #define IWMReaderNetworkConfig2_SetEnableUDP(This,fEnableUDP)
  424.     (This)->lpVtbl -> SetEnableUDP(This,fEnableUDP)
  425. #define IWMReaderNetworkConfig2_GetEnableTCP(This,pfEnableTCP)
  426.     (This)->lpVtbl -> GetEnableTCP(This,pfEnableTCP)
  427. #define IWMReaderNetworkConfig2_SetEnableTCP(This,fEnableTCP)
  428.     (This)->lpVtbl -> SetEnableTCP(This,fEnableTCP)
  429. #define IWMReaderNetworkConfig2_ResetProtocolRollover(This)
  430.     (This)->lpVtbl -> ResetProtocolRollover(This)
  431. #define IWMReaderNetworkConfig2_GetConnectionBandwidth(This,pdwConnectionBandwidth)
  432.     (This)->lpVtbl -> GetConnectionBandwidth(This,pdwConnectionBandwidth)
  433. #define IWMReaderNetworkConfig2_SetConnectionBandwidth(This,dwConnectionBandwidth)
  434.     (This)->lpVtbl -> SetConnectionBandwidth(This,dwConnectionBandwidth)
  435. #define IWMReaderNetworkConfig2_GetNumProtocolsSupported(This,pcProtocols)
  436.     (This)->lpVtbl -> GetNumProtocolsSupported(This,pcProtocols)
  437. #define IWMReaderNetworkConfig2_GetSupportedProtocolName(This,dwProtocolNum,pwszProtocolName,pcchProtocolName)
  438.     (This)->lpVtbl -> GetSupportedProtocolName(This,dwProtocolNum,pwszProtocolName,pcchProtocolName)
  439. #define IWMReaderNetworkConfig2_AddLoggingUrl(This,pwszUrl)
  440.     (This)->lpVtbl -> AddLoggingUrl(This,pwszUrl)
  441. #define IWMReaderNetworkConfig2_GetLoggingUrl(This,dwIndex,pwszUrl,pcchUrl)
  442.     (This)->lpVtbl -> GetLoggingUrl(This,dwIndex,pwszUrl,pcchUrl)
  443. #define IWMReaderNetworkConfig2_GetLoggingUrlCount(This,pdwUrlCount)
  444.     (This)->lpVtbl -> GetLoggingUrlCount(This,pdwUrlCount)
  445. #define IWMReaderNetworkConfig2_ResetLoggingUrlList(This)
  446.     (This)->lpVtbl -> ResetLoggingUrlList(This)
  447. #define IWMReaderNetworkConfig2_GetEnableContentCaching(This,pfEnableContentCaching)
  448.     (This)->lpVtbl -> GetEnableContentCaching(This,pfEnableContentCaching)
  449. #define IWMReaderNetworkConfig2_SetEnableContentCaching(This,fEnableContentCaching)
  450.     (This)->lpVtbl -> SetEnableContentCaching(This,fEnableContentCaching)
  451. #define IWMReaderNetworkConfig2_GetEnableFastCache(This,pfEnableFastCache)
  452.     (This)->lpVtbl -> GetEnableFastCache(This,pfEnableFastCache)
  453. #define IWMReaderNetworkConfig2_SetEnableFastCache(This,fEnableFastCache)
  454.     (This)->lpVtbl -> SetEnableFastCache(This,fEnableFastCache)
  455. #define IWMReaderNetworkConfig2_GetAcceleratedStreamingDuration(This,pcnsAccelDuration)
  456.     (This)->lpVtbl -> GetAcceleratedStreamingDuration(This,pcnsAccelDuration)
  457. #define IWMReaderNetworkConfig2_SetAcceleratedStreamingDuration(This,cnsAccelDuration)
  458.     (This)->lpVtbl -> SetAcceleratedStreamingDuration(This,cnsAccelDuration)
  459. #define IWMReaderNetworkConfig2_GetAutoReconnectLimit(This,pdwAutoReconnectLimit)
  460.     (This)->lpVtbl -> GetAutoReconnectLimit(This,pdwAutoReconnectLimit)
  461. #define IWMReaderNetworkConfig2_SetAutoReconnectLimit(This,dwAutoReconnectLimit)
  462.     (This)->lpVtbl -> SetAutoReconnectLimit(This,dwAutoReconnectLimit)
  463. #define IWMReaderNetworkConfig2_GetEnableResends(This,pfEnableResends)
  464.     (This)->lpVtbl -> GetEnableResends(This,pfEnableResends)
  465. #define IWMReaderNetworkConfig2_SetEnableResends(This,fEnableResends)
  466.     (This)->lpVtbl -> SetEnableResends(This,fEnableResends)
  467. #define IWMReaderNetworkConfig2_GetEnableThinning(This,pfEnableThinning)
  468.     (This)->lpVtbl -> GetEnableThinning(This,pfEnableThinning)
  469. #define IWMReaderNetworkConfig2_SetEnableThinning(This,fEnableThinning)
  470.     (This)->lpVtbl -> SetEnableThinning(This,fEnableThinning)
  471. #define IWMReaderNetworkConfig2_GetMaxNetPacketSize(This,pdwMaxNetPacketSize)
  472.     (This)->lpVtbl -> GetMaxNetPacketSize(This,pdwMaxNetPacketSize)
  473. #endif /* COBJMACROS */
  474. #endif  /* C style interface */
  475. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_GetEnableContentCaching_Proxy( 
  476.     IWMReaderNetworkConfig2 * This,
  477.     /* [out] */ BOOL *pfEnableContentCaching);
  478. void __RPC_STUB IWMReaderNetworkConfig2_GetEnableContentCaching_Stub(
  479.     IRpcStubBuffer *This,
  480.     IRpcChannelBuffer *_pRpcChannelBuffer,
  481.     PRPC_MESSAGE _pRpcMessage,
  482.     DWORD *_pdwStubPhase);
  483. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_SetEnableContentCaching_Proxy( 
  484.     IWMReaderNetworkConfig2 * This,
  485.     /* [in] */ BOOL fEnableContentCaching);
  486. void __RPC_STUB IWMReaderNetworkConfig2_SetEnableContentCaching_Stub(
  487.     IRpcStubBuffer *This,
  488.     IRpcChannelBuffer *_pRpcChannelBuffer,
  489.     PRPC_MESSAGE _pRpcMessage,
  490.     DWORD *_pdwStubPhase);
  491. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_GetEnableFastCache_Proxy( 
  492.     IWMReaderNetworkConfig2 * This,
  493.     /* [out] */ BOOL *pfEnableFastCache);
  494. void __RPC_STUB IWMReaderNetworkConfig2_GetEnableFastCache_Stub(
  495.     IRpcStubBuffer *This,
  496.     IRpcChannelBuffer *_pRpcChannelBuffer,
  497.     PRPC_MESSAGE _pRpcMessage,
  498.     DWORD *_pdwStubPhase);
  499. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_SetEnableFastCache_Proxy( 
  500.     IWMReaderNetworkConfig2 * This,
  501.     /* [in] */ BOOL fEnableFastCache);
  502. void __RPC_STUB IWMReaderNetworkConfig2_SetEnableFastCache_Stub(
  503.     IRpcStubBuffer *This,
  504.     IRpcChannelBuffer *_pRpcChannelBuffer,
  505.     PRPC_MESSAGE _pRpcMessage,
  506.     DWORD *_pdwStubPhase);
  507. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_GetAcceleratedStreamingDuration_Proxy( 
  508.     IWMReaderNetworkConfig2 * This,
  509.     /* [out] */ QWORD *pcnsAccelDuration);
  510. void __RPC_STUB IWMReaderNetworkConfig2_GetAcceleratedStreamingDuration_Stub(
  511.     IRpcStubBuffer *This,
  512.     IRpcChannelBuffer *_pRpcChannelBuffer,
  513.     PRPC_MESSAGE _pRpcMessage,
  514.     DWORD *_pdwStubPhase);
  515. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_SetAcceleratedStreamingDuration_Proxy( 
  516.     IWMReaderNetworkConfig2 * This,
  517.     /* [in] */ QWORD cnsAccelDuration);
  518. void __RPC_STUB IWMReaderNetworkConfig2_SetAcceleratedStreamingDuration_Stub(
  519.     IRpcStubBuffer *This,
  520.     IRpcChannelBuffer *_pRpcChannelBuffer,
  521.     PRPC_MESSAGE _pRpcMessage,
  522.     DWORD *_pdwStubPhase);
  523. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_GetAutoReconnectLimit_Proxy( 
  524.     IWMReaderNetworkConfig2 * This,
  525.     /* [out] */ DWORD *pdwAutoReconnectLimit);
  526. void __RPC_STUB IWMReaderNetworkConfig2_GetAutoReconnectLimit_Stub(
  527.     IRpcStubBuffer *This,
  528.     IRpcChannelBuffer *_pRpcChannelBuffer,
  529.     PRPC_MESSAGE _pRpcMessage,
  530.     DWORD *_pdwStubPhase);
  531. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_SetAutoReconnectLimit_Proxy( 
  532.     IWMReaderNetworkConfig2 * This,
  533.     /* [in] */ DWORD dwAutoReconnectLimit);
  534. void __RPC_STUB IWMReaderNetworkConfig2_SetAutoReconnectLimit_Stub(
  535.     IRpcStubBuffer *This,
  536.     IRpcChannelBuffer *_pRpcChannelBuffer,
  537.     PRPC_MESSAGE _pRpcMessage,
  538.     DWORD *_pdwStubPhase);
  539. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_GetEnableResends_Proxy( 
  540.     IWMReaderNetworkConfig2 * This,
  541.     /* [out] */ BOOL *pfEnableResends);
  542. void __RPC_STUB IWMReaderNetworkConfig2_GetEnableResends_Stub(
  543.     IRpcStubBuffer *This,
  544.     IRpcChannelBuffer *_pRpcChannelBuffer,
  545.     PRPC_MESSAGE _pRpcMessage,
  546.     DWORD *_pdwStubPhase);
  547. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_SetEnableResends_Proxy( 
  548.     IWMReaderNetworkConfig2 * This,
  549.     /* [in] */ BOOL fEnableResends);
  550. void __RPC_STUB IWMReaderNetworkConfig2_SetEnableResends_Stub(
  551.     IRpcStubBuffer *This,
  552.     IRpcChannelBuffer *_pRpcChannelBuffer,
  553.     PRPC_MESSAGE _pRpcMessage,
  554.     DWORD *_pdwStubPhase);
  555. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_GetEnableThinning_Proxy( 
  556.     IWMReaderNetworkConfig2 * This,
  557.     /* [out] */ BOOL *pfEnableThinning);
  558. void __RPC_STUB IWMReaderNetworkConfig2_GetEnableThinning_Stub(
  559.     IRpcStubBuffer *This,
  560.     IRpcChannelBuffer *_pRpcChannelBuffer,
  561.     PRPC_MESSAGE _pRpcMessage,
  562.     DWORD *_pdwStubPhase);
  563. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_SetEnableThinning_Proxy( 
  564.     IWMReaderNetworkConfig2 * This,
  565.     /* [in] */ BOOL fEnableThinning);
  566. void __RPC_STUB IWMReaderNetworkConfig2_SetEnableThinning_Stub(
  567.     IRpcStubBuffer *This,
  568.     IRpcChannelBuffer *_pRpcChannelBuffer,
  569.     PRPC_MESSAGE _pRpcMessage,
  570.     DWORD *_pdwStubPhase);
  571. HRESULT STDMETHODCALLTYPE IWMReaderNetworkConfig2_GetMaxNetPacketSize_Proxy( 
  572.     IWMReaderNetworkConfig2 * This,
  573.     /* [out] */ DWORD *pdwMaxNetPacketSize);
  574. void __RPC_STUB IWMReaderNetworkConfig2_GetMaxNetPacketSize_Stub(
  575.     IRpcStubBuffer *This,
  576.     IRpcChannelBuffer *_pRpcChannelBuffer,
  577.     PRPC_MESSAGE _pRpcMessage,
  578.     DWORD *_pdwStubPhase);
  579. #endif  /* __IWMReaderNetworkConfig2_INTERFACE_DEFINED__ */
  580. #ifndef __IWMReaderStreamClock_INTERFACE_DEFINED__
  581. #define __IWMReaderStreamClock_INTERFACE_DEFINED__
  582. /* interface IWMReaderStreamClock */
  583. /* [local][unique][helpstring][uuid][object] */ 
  584. EXTERN_C const IID IID_IWMReaderStreamClock;
  585. #if defined(__cplusplus) && !defined(CINTERFACE)
  586.     
  587.     MIDL_INTERFACE("96406BED-2B2B-11d3-B36B-00C04F6108FF")
  588.     IWMReaderStreamClock : public IUnknown
  589.     {
  590.     public:
  591.         virtual HRESULT STDMETHODCALLTYPE GetTime( 
  592.             /* [in] */ QWORD *pcnsNow) = 0;
  593.         
  594.         virtual HRESULT STDMETHODCALLTYPE SetTimer( 
  595.             /* [in] */ QWORD cnsWhen,
  596.             /* [in] */ void *pvParam,
  597.             /* [out] */ DWORD *pdwTimerId) = 0;
  598.         
  599.         virtual HRESULT STDMETHODCALLTYPE KillTimer( 
  600.             /* [in] */ DWORD dwTimerId) = 0;
  601.         
  602.     };
  603.     
  604. #else  /* C style interface */
  605.     typedef struct IWMReaderStreamClockVtbl
  606.     {
  607.         BEGIN_INTERFACE
  608.         
  609.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  610.             IWMReaderStreamClock * This,
  611.             /* [in] */ REFIID riid,
  612.             /* [iid_is][out] */ void **ppvObject);
  613.         
  614.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  615.             IWMReaderStreamClock * This);
  616.         
  617.         ULONG ( STDMETHODCALLTYPE *Release )( 
  618.             IWMReaderStreamClock * This);
  619.         
  620.         HRESULT ( STDMETHODCALLTYPE *GetTime )( 
  621.             IWMReaderStreamClock * This,
  622.             /* [in] */ QWORD *pcnsNow);
  623.         
  624.         HRESULT ( STDMETHODCALLTYPE *SetTimer )( 
  625.             IWMReaderStreamClock * This,
  626.             /* [in] */ QWORD cnsWhen,
  627.             /* [in] */ void *pvParam,
  628.             /* [out] */ DWORD *pdwTimerId);
  629.         
  630.         HRESULT ( STDMETHODCALLTYPE *KillTimer )( 
  631.             IWMReaderStreamClock * This,
  632.             /* [in] */ DWORD dwTimerId);
  633.         
  634.         END_INTERFACE
  635.     } IWMReaderStreamClockVtbl;
  636.     interface IWMReaderStreamClock
  637.     {
  638.         CONST_VTBL struct IWMReaderStreamClockVtbl *lpVtbl;
  639.     };
  640.     
  641. #ifdef COBJMACROS
  642. #define IWMReaderStreamClock_QueryInterface(This,riid,ppvObject)
  643.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  644. #define IWMReaderStreamClock_AddRef(This)
  645.     (This)->lpVtbl -> AddRef(This)
  646. #define IWMReaderStreamClock_Release(This)
  647.     (This)->lpVtbl -> Release(This)
  648. #define IWMReaderStreamClock_GetTime(This,pcnsNow)
  649.     (This)->lpVtbl -> GetTime(This,pcnsNow)
  650. #define IWMReaderStreamClock_SetTimer(This,cnsWhen,pvParam,pdwTimerId)
  651.     (This)->lpVtbl -> SetTimer(This,cnsWhen,pvParam,pdwTimerId)
  652. #define IWMReaderStreamClock_KillTimer(This,dwTimerId)
  653.     (This)->lpVtbl -> KillTimer(This,dwTimerId)
  654. #endif /* COBJMACROS */
  655. #endif  /* C style interface */
  656. HRESULT STDMETHODCALLTYPE IWMReaderStreamClock_GetTime_Proxy( 
  657.     IWMReaderStreamClock * This,
  658.     /* [in] */ QWORD *pcnsNow);
  659. void __RPC_STUB IWMReaderStreamClock_GetTime_Stub(
  660.     IRpcStubBuffer *This,
  661.     IRpcChannelBuffer *_pRpcChannelBuffer,
  662.     PRPC_MESSAGE _pRpcMessage,
  663.     DWORD *_pdwStubPhase);
  664. HRESULT STDMETHODCALLTYPE IWMReaderStreamClock_SetTimer_Proxy( 
  665.     IWMReaderStreamClock * This,
  666.     /* [in] */ QWORD cnsWhen,
  667.     /* [in] */ void *pvParam,
  668.     /* [out] */ DWORD *pdwTimerId);
  669. void __RPC_STUB IWMReaderStreamClock_SetTimer_Stub(
  670.     IRpcStubBuffer *This,
  671.     IRpcChannelBuffer *_pRpcChannelBuffer,
  672.     PRPC_MESSAGE _pRpcMessage,
  673.     DWORD *_pdwStubPhase);
  674. HRESULT STDMETHODCALLTYPE IWMReaderStreamClock_KillTimer_Proxy( 
  675.     IWMReaderStreamClock * This,
  676.     /* [in] */ DWORD dwTimerId);
  677. void __RPC_STUB IWMReaderStreamClock_KillTimer_Stub(
  678.     IRpcStubBuffer *This,
  679.     IRpcChannelBuffer *_pRpcChannelBuffer,
  680.     PRPC_MESSAGE _pRpcMessage,
  681.     DWORD *_pdwStubPhase);
  682. #endif  /* __IWMReaderStreamClock_INTERFACE_DEFINED__ */
  683. #ifndef __IWMIndexer_INTERFACE_DEFINED__
  684. #define __IWMIndexer_INTERFACE_DEFINED__
  685. /* interface IWMIndexer */
  686. /* [local][unique][helpstring][uuid][object] */ 
  687. EXTERN_C const IID IID_IWMIndexer;
  688. #if defined(__cplusplus) && !defined(CINTERFACE)
  689.     
  690.     MIDL_INTERFACE("6d7cdc71-9888-11d3-8edc-00c04f6109cf")
  691.     IWMIndexer : public IUnknown
  692.     {
  693.     public:
  694.         virtual HRESULT STDMETHODCALLTYPE StartIndexing( 
  695.             /* [in] */ const WCHAR *pwszURL,
  696.             /* [in] */ IWMStatusCallback *pCallback,
  697.             /* [in] */ void *pvContext) = 0;
  698.         
  699.         virtual HRESULT STDMETHODCALLTYPE Cancel( void) = 0;
  700.         
  701.     };
  702.     
  703. #else  /* C style interface */
  704.     typedef struct IWMIndexerVtbl
  705.     {
  706.         BEGIN_INTERFACE
  707.         
  708.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  709.             IWMIndexer * This,
  710.             /* [in] */ REFIID riid,
  711.             /* [iid_is][out] */ void **ppvObject);
  712.         
  713.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  714.             IWMIndexer * This);
  715.         
  716.         ULONG ( STDMETHODCALLTYPE *Release )( 
  717.             IWMIndexer * This);
  718.         
  719.         HRESULT ( STDMETHODCALLTYPE *StartIndexing )( 
  720.             IWMIndexer * This,
  721.             /* [in] */ const WCHAR *pwszURL,
  722.             /* [in] */ IWMStatusCallback *pCallback,
  723.             /* [in] */ void *pvContext);
  724.         
  725.         HRESULT ( STDMETHODCALLTYPE *Cancel )( 
  726.             IWMIndexer * This);
  727.         
  728.         END_INTERFACE
  729.     } IWMIndexerVtbl;
  730.     interface IWMIndexer
  731.     {
  732.         CONST_VTBL struct IWMIndexerVtbl *lpVtbl;
  733.     };
  734.     
  735. #ifdef COBJMACROS
  736. #define IWMIndexer_QueryInterface(This,riid,ppvObject)
  737.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  738. #define IWMIndexer_AddRef(This)
  739.     (This)->lpVtbl -> AddRef(This)
  740. #define IWMIndexer_Release(This)
  741.     (This)->lpVtbl -> Release(This)
  742. #define IWMIndexer_StartIndexing(This,pwszURL,pCallback,pvContext)
  743.     (This)->lpVtbl -> StartIndexing(This,pwszURL,pCallback,pvContext)
  744. #define IWMIndexer_Cancel(This)
  745.     (This)->lpVtbl -> Cancel(This)
  746. #endif /* COBJMACROS */
  747. #endif  /* C style interface */
  748. HRESULT STDMETHODCALLTYPE IWMIndexer_StartIndexing_Proxy( 
  749.     IWMIndexer * This,
  750.     /* [in] */ const WCHAR *pwszURL,
  751.     /* [in] */ IWMStatusCallback *pCallback,
  752.     /* [in] */ void *pvContext);
  753. void __RPC_STUB IWMIndexer_StartIndexing_Stub(
  754.     IRpcStubBuffer *This,
  755.     IRpcChannelBuffer *_pRpcChannelBuffer,
  756.     PRPC_MESSAGE _pRpcMessage,
  757.     DWORD *_pdwStubPhase);
  758. HRESULT STDMETHODCALLTYPE IWMIndexer_Cancel_Proxy( 
  759.     IWMIndexer * This);
  760. void __RPC_STUB IWMIndexer_Cancel_Stub(
  761.     IRpcStubBuffer *This,
  762.     IRpcChannelBuffer *_pRpcChannelBuffer,
  763.     PRPC_MESSAGE _pRpcMessage,
  764.     DWORD *_pdwStubPhase);
  765. #endif  /* __IWMIndexer_INTERFACE_DEFINED__ */
  766. #ifndef __IWMIndexer2_INTERFACE_DEFINED__
  767. #define __IWMIndexer2_INTERFACE_DEFINED__
  768. /* interface IWMIndexer2 */
  769. /* [local][unique][helpstring][uuid][object] */ 
  770. EXTERN_C const IID IID_IWMIndexer2;
  771. #if defined(__cplusplus) && !defined(CINTERFACE)
  772.     
  773.     MIDL_INTERFACE("B70F1E42-6255-4df0-A6B9-02B212D9E2BB")
  774.     IWMIndexer2 : public IWMIndexer
  775.     {
  776.     public:
  777.         virtual HRESULT STDMETHODCALLTYPE Configure( 
  778.             /* [in] */ WORD wStreamNum,
  779.             /* [in] */ WMT_INDEXER_TYPE nIndexerType,
  780.             /* [in] */ void *pvInterval,
  781.             /* [in] */ void *pvIndexType) = 0;
  782.         
  783.     };
  784.     
  785. #else  /* C style interface */
  786.     typedef struct IWMIndexer2Vtbl
  787.     {
  788.         BEGIN_INTERFACE
  789.         
  790.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  791.             IWMIndexer2 * This,
  792.             /* [in] */ REFIID riid,
  793.             /* [iid_is][out] */ void **ppvObject);
  794.         
  795.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  796.             IWMIndexer2 * This);
  797.         
  798.         ULONG ( STDMETHODCALLTYPE *Release )( 
  799.             IWMIndexer2 * This);
  800.         
  801.         HRESULT ( STDMETHODCALLTYPE *StartIndexing )( 
  802.             IWMIndexer2 * This,
  803.             /* [in] */ const WCHAR *pwszURL,
  804.             /* [in] */ IWMStatusCallback *pCallback,
  805.             /* [in] */ void *pvContext);
  806.         
  807.         HRESULT ( STDMETHODCALLTYPE *Cancel )( 
  808.             IWMIndexer2 * This);
  809.         
  810.         HRESULT ( STDMETHODCALLTYPE *Configure )( 
  811.             IWMIndexer2 * This,
  812.             /* [in] */ WORD wStreamNum,
  813.             /* [in] */ WMT_INDEXER_TYPE nIndexerType,
  814.             /* [in] */ void *pvInterval,
  815.             /* [in] */ void *pvIndexType);
  816.         
  817.         END_INTERFACE
  818.     } IWMIndexer2Vtbl;
  819.     interface IWMIndexer2
  820.     {
  821.         CONST_VTBL struct IWMIndexer2Vtbl *lpVtbl;
  822.     };
  823.     
  824. #ifdef COBJMACROS
  825. #define IWMIndexer2_QueryInterface(This,riid,ppvObject)
  826.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  827. #define IWMIndexer2_AddRef(This)
  828.     (This)->lpVtbl -> AddRef(This)
  829. #define IWMIndexer2_Release(This)
  830.     (This)->lpVtbl -> Release(This)
  831. #define IWMIndexer2_StartIndexing(This,pwszURL,pCallback,pvContext)
  832.     (This)->lpVtbl -> StartIndexing(This,pwszURL,pCallback,pvContext)
  833. #define IWMIndexer2_Cancel(This)
  834.     (This)->lpVtbl -> Cancel(This)
  835. #define IWMIndexer2_Configure(This,wStreamNum,nIndexerType,pvInterval,pvIndexType)
  836.     (This)->lpVtbl -> Configure(This,wStreamNum,nIndexerType,pvInterval,pvIndexType)
  837. #endif /* COBJMACROS */
  838. #endif  /* C style interface */
  839. HRESULT STDMETHODCALLTYPE IWMIndexer2_Configure_Proxy( 
  840.     IWMIndexer2 * This,
  841.     /* [in] */ WORD wStreamNum,
  842.     /* [in] */ WMT_INDEXER_TYPE nIndexerType,
  843.     /* [in] */ void *pvInterval,
  844.     /* [in] */ void *pvIndexType);
  845. void __RPC_STUB IWMIndexer2_Configure_Stub(
  846.     IRpcStubBuffer *This,
  847.     IRpcChannelBuffer *_pRpcChannelBuffer,
  848.     PRPC_MESSAGE _pRpcMessage,
  849.     DWORD *_pdwStubPhase);
  850. #endif  /* __IWMIndexer2_INTERFACE_DEFINED__ */
  851. #ifndef __IWMLicenseBackup_INTERFACE_DEFINED__
  852. #define __IWMLicenseBackup_INTERFACE_DEFINED__
  853. /* interface IWMLicenseBackup */
  854. /* [local][unique][helpstring][uuid][object] */ 
  855. EXTERN_C const IID IID_IWMLicenseBackup;
  856. #if defined(__cplusplus) && !defined(CINTERFACE)
  857.     
  858.     MIDL_INTERFACE("05E5AC9F-3FB6-4508-BB43-A4067BA1EBE8")
  859.     IWMLicenseBackup : public IUnknown
  860.     {
  861.     public:
  862.         virtual HRESULT STDMETHODCALLTYPE BackupLicenses( 
  863.             /* [in] */ DWORD dwFlags,
  864.             /* [in] */ IWMStatusCallback *pCallback) = 0;
  865.         
  866.         virtual HRESULT STDMETHODCALLTYPE CancelLicenseBackup( void) = 0;
  867.         
  868.     };
  869.     
  870. #else  /* C style interface */
  871.     typedef struct IWMLicenseBackupVtbl
  872.     {
  873.         BEGIN_INTERFACE
  874.         
  875.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  876.             IWMLicenseBackup * This,
  877.             /* [in] */ REFIID riid,
  878.             /* [iid_is][out] */ void **ppvObject);
  879.         
  880.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  881.             IWMLicenseBackup * This);
  882.         
  883.         ULONG ( STDMETHODCALLTYPE *Release )( 
  884.             IWMLicenseBackup * This);
  885.         
  886.         HRESULT ( STDMETHODCALLTYPE *BackupLicenses )( 
  887.             IWMLicenseBackup * This,
  888.             /* [in] */ DWORD dwFlags,
  889.             /* [in] */ IWMStatusCallback *pCallback);
  890.         
  891.         HRESULT ( STDMETHODCALLTYPE *CancelLicenseBackup )( 
  892.             IWMLicenseBackup * This);
  893.         
  894.         END_INTERFACE
  895.     } IWMLicenseBackupVtbl;
  896.     interface IWMLicenseBackup
  897.     {
  898.         CONST_VTBL struct IWMLicenseBackupVtbl *lpVtbl;
  899.     };
  900.     
  901. #ifdef COBJMACROS
  902. #define IWMLicenseBackup_QueryInterface(This,riid,ppvObject)
  903.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  904. #define IWMLicenseBackup_AddRef(This)
  905.     (This)->lpVtbl -> AddRef(This)
  906. #define IWMLicenseBackup_Release(This)
  907.     (This)->lpVtbl -> Release(This)
  908. #define IWMLicenseBackup_BackupLicenses(This,dwFlags,pCallback)
  909.     (This)->lpVtbl -> BackupLicenses(This,dwFlags,pCallback)
  910. #define IWMLicenseBackup_CancelLicenseBackup(This)
  911.     (This)->lpVtbl -> CancelLicenseBackup(This)
  912. #endif /* COBJMACROS */
  913. #endif  /* C style interface */
  914. HRESULT STDMETHODCALLTYPE IWMLicenseBackup_BackupLicenses_Proxy( 
  915.     IWMLicenseBackup * This,
  916.     /* [in] */ DWORD dwFlags,
  917.     /* [in] */ IWMStatusCallback *pCallback);
  918. void __RPC_STUB IWMLicenseBackup_BackupLicenses_Stub(
  919.     IRpcStubBuffer *This,
  920.     IRpcChannelBuffer *_pRpcChannelBuffer,
  921.     PRPC_MESSAGE _pRpcMessage,
  922.     DWORD *_pdwStubPhase);
  923. HRESULT STDMETHODCALLTYPE IWMLicenseBackup_CancelLicenseBackup_Proxy( 
  924.     IWMLicenseBackup * This);
  925. void __RPC_STUB IWMLicenseBackup_CancelLicenseBackup_Stub(
  926.     IRpcStubBuffer *This,
  927.     IRpcChannelBuffer *_pRpcChannelBuffer,
  928.     PRPC_MESSAGE _pRpcMessage,
  929.     DWORD *_pdwStubPhase);
  930. #endif  /* __IWMLicenseBackup_INTERFACE_DEFINED__ */
  931. #ifndef __IWMLicenseRestore_INTERFACE_DEFINED__
  932. #define __IWMLicenseRestore_INTERFACE_DEFINED__
  933. /* interface IWMLicenseRestore */
  934. /* [local][unique][helpstring][uuid][object] */ 
  935. EXTERN_C const IID IID_IWMLicenseRestore;
  936. #if defined(__cplusplus) && !defined(CINTERFACE)
  937.     
  938.     MIDL_INTERFACE("C70B6334-A22E-4efb-A245-15E65A004A13")
  939.     IWMLicenseRestore : public IUnknown
  940.     {
  941.     public:
  942.         virtual HRESULT STDMETHODCALLTYPE RestoreLicenses( 
  943.             /* [in] */ DWORD dwFlags,
  944.             /* [in] */ IWMStatusCallback *pCallback) = 0;
  945.         
  946.         virtual HRESULT STDMETHODCALLTYPE CancelLicenseRestore( void) = 0;
  947.         
  948.     };
  949.     
  950. #else  /* C style interface */
  951.     typedef struct IWMLicenseRestoreVtbl
  952.     {
  953.         BEGIN_INTERFACE
  954.         
  955.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  956.             IWMLicenseRestore * This,
  957.             /* [in] */ REFIID riid,
  958.             /* [iid_is][out] */ void **ppvObject);
  959.         
  960.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  961.             IWMLicenseRestore * This);
  962.         
  963.         ULONG ( STDMETHODCALLTYPE *Release )( 
  964.             IWMLicenseRestore * This);
  965.         
  966.         HRESULT ( STDMETHODCALLTYPE *RestoreLicenses )( 
  967.             IWMLicenseRestore * This,
  968.             /* [in] */ DWORD dwFlags,
  969.             /* [in] */ IWMStatusCallback *pCallback);
  970.         
  971.         HRESULT ( STDMETHODCALLTYPE *CancelLicenseRestore )( 
  972.             IWMLicenseRestore * This);
  973.         
  974.         END_INTERFACE
  975.     } IWMLicenseRestoreVtbl;
  976.     interface IWMLicenseRestore
  977.     {
  978.         CONST_VTBL struct IWMLicenseRestoreVtbl *lpVtbl;
  979.     };
  980.     
  981. #ifdef COBJMACROS
  982. #define IWMLicenseRestore_QueryInterface(This,riid,ppvObject)
  983.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  984. #define IWMLicenseRestore_AddRef(This)
  985.     (This)->lpVtbl -> AddRef(This)
  986. #define IWMLicenseRestore_Release(This)
  987.     (This)->lpVtbl -> Release(This)
  988. #define IWMLicenseRestore_RestoreLicenses(This,dwFlags,pCallback)
  989.     (This)->lpVtbl -> RestoreLicenses(This,dwFlags,pCallback)
  990. #define IWMLicenseRestore_CancelLicenseRestore(This)
  991.     (This)->lpVtbl -> CancelLicenseRestore(This)
  992. #endif /* COBJMACROS */
  993. #endif  /* C style interface */
  994. HRESULT STDMETHODCALLTYPE IWMLicenseRestore_RestoreLicenses_Proxy( 
  995.     IWMLicenseRestore * This,
  996.     /* [in] */ DWORD dwFlags,
  997.     /* [in] */ IWMStatusCallback *pCallback);
  998. void __RPC_STUB IWMLicenseRestore_RestoreLicenses_Stub(
  999.     IRpcStubBuffer *This,
  1000.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1001.     PRPC_MESSAGE _pRpcMessage,
  1002.     DWORD *_pdwStubPhase);
  1003. HRESULT STDMETHODCALLTYPE IWMLicenseRestore_CancelLicenseRestore_Proxy( 
  1004.     IWMLicenseRestore * This);
  1005. void __RPC_STUB IWMLicenseRestore_CancelLicenseRestore_Stub(
  1006.     IRpcStubBuffer *This,
  1007.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1008.     PRPC_MESSAGE _pRpcMessage,
  1009.     DWORD *_pdwStubPhase);
  1010. #endif  /* __IWMLicenseRestore_INTERFACE_DEFINED__ */
  1011. #ifndef __IWMBackupRestoreProps_INTERFACE_DEFINED__
  1012. #define __IWMBackupRestoreProps_INTERFACE_DEFINED__
  1013. /* interface IWMBackupRestoreProps */
  1014. /* [local][unique][helpstring][uuid][object] */ 
  1015. EXTERN_C const IID IID_IWMBackupRestoreProps;
  1016. #if defined(__cplusplus) && !defined(CINTERFACE)
  1017.     
  1018.     MIDL_INTERFACE("3C8E0DA6-996F-4ff3-A1AF-4838F9377E2E")
  1019.     IWMBackupRestoreProps : public IUnknown
  1020.     {
  1021.     public:
  1022.         virtual HRESULT STDMETHODCALLTYPE GetPropCount( 
  1023.             /* [out] */ WORD *pcProps) = 0;
  1024.         
  1025.         virtual HRESULT STDMETHODCALLTYPE GetPropByIndex( 
  1026.             /* [in] */ WORD wIndex,
  1027.             /* [size_is][out] */ WCHAR *pwszName,
  1028.             /* [out][in] */ WORD *pcchNameLen,
  1029.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1030.             /* [size_is][out] */ BYTE *pValue,
  1031.             /* [out][in] */ WORD *pcbLength) = 0;
  1032.         
  1033.         virtual HRESULT STDMETHODCALLTYPE GetPropByName( 
  1034.             /* [in] */ LPCWSTR pszName,
  1035.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1036.             /* [size_is][out] */ BYTE *pValue,
  1037.             /* [out][in] */ WORD *pcbLength) = 0;
  1038.         
  1039.         virtual HRESULT STDMETHODCALLTYPE SetProp( 
  1040.             /* [in] */ LPCWSTR pszName,
  1041.             /* [in] */ WMT_ATTR_DATATYPE Type,
  1042.             /* [size_is][in] */ const BYTE *pValue,
  1043.             /* [in] */ WORD cbLength) = 0;
  1044.         
  1045.         virtual HRESULT STDMETHODCALLTYPE RemoveProp( 
  1046.             /* [in] */ LPCWSTR pcwszName) = 0;
  1047.         
  1048.         virtual HRESULT STDMETHODCALLTYPE RemoveAllProps( void) = 0;
  1049.         
  1050.     };
  1051.     
  1052. #else  /* C style interface */
  1053.     typedef struct IWMBackupRestorePropsVtbl
  1054.     {
  1055.         BEGIN_INTERFACE
  1056.         
  1057.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1058.             IWMBackupRestoreProps * This,
  1059.             /* [in] */ REFIID riid,
  1060.             /* [iid_is][out] */ void **ppvObject);
  1061.         
  1062.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1063.             IWMBackupRestoreProps * This);
  1064.         
  1065.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1066.             IWMBackupRestoreProps * This);
  1067.         
  1068.         HRESULT ( STDMETHODCALLTYPE *GetPropCount )( 
  1069.             IWMBackupRestoreProps * This,
  1070.             /* [out] */ WORD *pcProps);
  1071.         
  1072.         HRESULT ( STDMETHODCALLTYPE *GetPropByIndex )( 
  1073.             IWMBackupRestoreProps * This,
  1074.             /* [in] */ WORD wIndex,
  1075.             /* [size_is][out] */ WCHAR *pwszName,
  1076.             /* [out][in] */ WORD *pcchNameLen,
  1077.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1078.             /* [size_is][out] */ BYTE *pValue,
  1079.             /* [out][in] */ WORD *pcbLength);
  1080.         
  1081.         HRESULT ( STDMETHODCALLTYPE *GetPropByName )( 
  1082.             IWMBackupRestoreProps * This,
  1083.             /* [in] */ LPCWSTR pszName,
  1084.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1085.             /* [size_is][out] */ BYTE *pValue,
  1086.             /* [out][in] */ WORD *pcbLength);
  1087.         
  1088.         HRESULT ( STDMETHODCALLTYPE *SetProp )( 
  1089.             IWMBackupRestoreProps * This,
  1090.             /* [in] */ LPCWSTR pszName,
  1091.             /* [in] */ WMT_ATTR_DATATYPE Type,
  1092.             /* [size_is][in] */ const BYTE *pValue,
  1093.             /* [in] */ WORD cbLength);
  1094.         
  1095.         HRESULT ( STDMETHODCALLTYPE *RemoveProp )( 
  1096.             IWMBackupRestoreProps * This,
  1097.             /* [in] */ LPCWSTR pcwszName);
  1098.         
  1099.         HRESULT ( STDMETHODCALLTYPE *RemoveAllProps )( 
  1100.             IWMBackupRestoreProps * This);
  1101.         
  1102.         END_INTERFACE
  1103.     } IWMBackupRestorePropsVtbl;
  1104.     interface IWMBackupRestoreProps
  1105.     {
  1106.         CONST_VTBL struct IWMBackupRestorePropsVtbl *lpVtbl;
  1107.     };
  1108.     
  1109. #ifdef COBJMACROS
  1110. #define IWMBackupRestoreProps_QueryInterface(This,riid,ppvObject)
  1111.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1112. #define IWMBackupRestoreProps_AddRef(This)
  1113.     (This)->lpVtbl -> AddRef(This)
  1114. #define IWMBackupRestoreProps_Release(This)
  1115.     (This)->lpVtbl -> Release(This)
  1116. #define IWMBackupRestoreProps_GetPropCount(This,pcProps)
  1117.     (This)->lpVtbl -> GetPropCount(This,pcProps)
  1118. #define IWMBackupRestoreProps_GetPropByIndex(This,wIndex,pwszName,pcchNameLen,pType,pValue,pcbLength)
  1119.     (This)->lpVtbl -> GetPropByIndex(This,wIndex,pwszName,pcchNameLen,pType,pValue,pcbLength)
  1120. #define IWMBackupRestoreProps_GetPropByName(This,pszName,pType,pValue,pcbLength)
  1121.     (This)->lpVtbl -> GetPropByName(This,pszName,pType,pValue,pcbLength)
  1122. #define IWMBackupRestoreProps_SetProp(This,pszName,Type,pValue,cbLength)
  1123.     (This)->lpVtbl -> SetProp(This,pszName,Type,pValue,cbLength)
  1124. #define IWMBackupRestoreProps_RemoveProp(This,pcwszName)
  1125.     (This)->lpVtbl -> RemoveProp(This,pcwszName)
  1126. #define IWMBackupRestoreProps_RemoveAllProps(This)
  1127.     (This)->lpVtbl -> RemoveAllProps(This)
  1128. #endif /* COBJMACROS */
  1129. #endif  /* C style interface */
  1130. HRESULT STDMETHODCALLTYPE IWMBackupRestoreProps_GetPropCount_Proxy( 
  1131.     IWMBackupRestoreProps * This,
  1132.     /* [out] */ WORD *pcProps);
  1133. void __RPC_STUB IWMBackupRestoreProps_GetPropCount_Stub(
  1134.     IRpcStubBuffer *This,
  1135.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1136.     PRPC_MESSAGE _pRpcMessage,
  1137.     DWORD *_pdwStubPhase);
  1138. HRESULT STDMETHODCALLTYPE IWMBackupRestoreProps_GetPropByIndex_Proxy( 
  1139.     IWMBackupRestoreProps * This,
  1140.     /* [in] */ WORD wIndex,
  1141.     /* [size_is][out] */ WCHAR *pwszName,
  1142.     /* [out][in] */ WORD *pcchNameLen,
  1143.     /* [out] */ WMT_ATTR_DATATYPE *pType,
  1144.     /* [size_is][out] */ BYTE *pValue,
  1145.     /* [out][in] */ WORD *pcbLength);
  1146. void __RPC_STUB IWMBackupRestoreProps_GetPropByIndex_Stub(
  1147.     IRpcStubBuffer *This,
  1148.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1149.     PRPC_MESSAGE _pRpcMessage,
  1150.     DWORD *_pdwStubPhase);
  1151. HRESULT STDMETHODCALLTYPE IWMBackupRestoreProps_GetPropByName_Proxy( 
  1152.     IWMBackupRestoreProps * This,
  1153.     /* [in] */ LPCWSTR pszName,
  1154.     /* [out] */ WMT_ATTR_DATATYPE *pType,
  1155.     /* [size_is][out] */ BYTE *pValue,
  1156.     /* [out][in] */ WORD *pcbLength);
  1157. void __RPC_STUB IWMBackupRestoreProps_GetPropByName_Stub(
  1158.     IRpcStubBuffer *This,
  1159.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1160.     PRPC_MESSAGE _pRpcMessage,
  1161.     DWORD *_pdwStubPhase);
  1162. HRESULT STDMETHODCALLTYPE IWMBackupRestoreProps_SetProp_Proxy( 
  1163.     IWMBackupRestoreProps * This,
  1164.     /* [in] */ LPCWSTR pszName,
  1165.     /* [in] */ WMT_ATTR_DATATYPE Type,
  1166.     /* [size_is][in] */ const BYTE *pValue,
  1167.     /* [in] */ WORD cbLength);
  1168. void __RPC_STUB IWMBackupRestoreProps_SetProp_Stub(
  1169.     IRpcStubBuffer *This,
  1170.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1171.     PRPC_MESSAGE _pRpcMessage,
  1172.     DWORD *_pdwStubPhase);
  1173. HRESULT STDMETHODCALLTYPE IWMBackupRestoreProps_RemoveProp_Proxy( 
  1174.     IWMBackupRestoreProps * This,
  1175.     /* [in] */ LPCWSTR pcwszName);
  1176. void __RPC_STUB IWMBackupRestoreProps_RemoveProp_Stub(
  1177.     IRpcStubBuffer *This,
  1178.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1179.     PRPC_MESSAGE _pRpcMessage,
  1180.     DWORD *_pdwStubPhase);
  1181. HRESULT STDMETHODCALLTYPE IWMBackupRestoreProps_RemoveAllProps_Proxy( 
  1182.     IWMBackupRestoreProps * This);
  1183. void __RPC_STUB IWMBackupRestoreProps_RemoveAllProps_Stub(
  1184.     IRpcStubBuffer *This,
  1185.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1186.     PRPC_MESSAGE _pRpcMessage,
  1187.     DWORD *_pdwStubPhase);
  1188. #endif  /* __IWMBackupRestoreProps_INTERFACE_DEFINED__ */
  1189. #ifndef __IWMCodecInfo_INTERFACE_DEFINED__
  1190. #define __IWMCodecInfo_INTERFACE_DEFINED__
  1191. /* interface IWMCodecInfo */
  1192. /* [local][unique][helpstring][uuid][object] */ 
  1193. EXTERN_C const IID IID_IWMCodecInfo;
  1194. #if defined(__cplusplus) && !defined(CINTERFACE)
  1195.     
  1196.     MIDL_INTERFACE("A970F41E-34DE-4a98-B3BA-E4B3CA7528F0")
  1197.     IWMCodecInfo : public IUnknown
  1198.     {
  1199.     public:
  1200.         virtual HRESULT STDMETHODCALLTYPE GetCodecInfoCount( 
  1201.             /* [in] */ REFGUID guidType,
  1202.             /* [out] */ DWORD *pcCodecs) = 0;
  1203.         
  1204.         virtual HRESULT STDMETHODCALLTYPE GetCodecFormatCount( 
  1205.             /* [in] */ REFGUID guidType,
  1206.             /* [in] */ DWORD dwCodecIndex,
  1207.             /* [out] */ DWORD *pcFormat) = 0;
  1208.         
  1209.         virtual HRESULT STDMETHODCALLTYPE GetCodecFormat( 
  1210.             /* [in] */ REFGUID guidType,
  1211.             /* [in] */ DWORD dwCodecIndex,
  1212.             /* [in] */ DWORD dwFormatIndex,
  1213.             /* [out] */ IWMStreamConfig **ppIStreamConfig) = 0;
  1214.         
  1215.     };
  1216.     
  1217. #else  /* C style interface */
  1218.     typedef struct IWMCodecInfoVtbl
  1219.     {
  1220.         BEGIN_INTERFACE
  1221.         
  1222.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1223.             IWMCodecInfo * This,
  1224.             /* [in] */ REFIID riid,
  1225.             /* [iid_is][out] */ void **ppvObject);
  1226.         
  1227.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1228.             IWMCodecInfo * This);
  1229.         
  1230.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1231.             IWMCodecInfo * This);
  1232.         
  1233.         HRESULT ( STDMETHODCALLTYPE *GetCodecInfoCount )( 
  1234.             IWMCodecInfo * This,
  1235.             /* [in] */ REFGUID guidType,
  1236.             /* [out] */ DWORD *pcCodecs);
  1237.         
  1238.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormatCount )( 
  1239.             IWMCodecInfo * This,
  1240.             /* [in] */ REFGUID guidType,
  1241.             /* [in] */ DWORD dwCodecIndex,
  1242.             /* [out] */ DWORD *pcFormat);
  1243.         
  1244.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormat )( 
  1245.             IWMCodecInfo * This,
  1246.             /* [in] */ REFGUID guidType,
  1247.             /* [in] */ DWORD dwCodecIndex,
  1248.             /* [in] */ DWORD dwFormatIndex,
  1249.             /* [out] */ IWMStreamConfig **ppIStreamConfig);
  1250.         
  1251.         END_INTERFACE
  1252.     } IWMCodecInfoVtbl;
  1253.     interface IWMCodecInfo
  1254.     {
  1255.         CONST_VTBL struct IWMCodecInfoVtbl *lpVtbl;
  1256.     };
  1257.     
  1258. #ifdef COBJMACROS
  1259. #define IWMCodecInfo_QueryInterface(This,riid,ppvObject)
  1260.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1261. #define IWMCodecInfo_AddRef(This)
  1262.     (This)->lpVtbl -> AddRef(This)
  1263. #define IWMCodecInfo_Release(This)
  1264.     (This)->lpVtbl -> Release(This)
  1265. #define IWMCodecInfo_GetCodecInfoCount(This,guidType,pcCodecs)
  1266.     (This)->lpVtbl -> GetCodecInfoCount(This,guidType,pcCodecs)
  1267. #define IWMCodecInfo_GetCodecFormatCount(This,guidType,dwCodecIndex,pcFormat)
  1268.     (This)->lpVtbl -> GetCodecFormatCount(This,guidType,dwCodecIndex,pcFormat)
  1269. #define IWMCodecInfo_GetCodecFormat(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig)
  1270.     (This)->lpVtbl -> GetCodecFormat(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig)
  1271. #endif /* COBJMACROS */
  1272. #endif  /* C style interface */
  1273. HRESULT STDMETHODCALLTYPE IWMCodecInfo_GetCodecInfoCount_Proxy( 
  1274.     IWMCodecInfo * This,
  1275.     /* [in] */ REFGUID guidType,
  1276.     /* [out] */ DWORD *pcCodecs);
  1277. void __RPC_STUB IWMCodecInfo_GetCodecInfoCount_Stub(
  1278.     IRpcStubBuffer *This,
  1279.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1280.     PRPC_MESSAGE _pRpcMessage,
  1281.     DWORD *_pdwStubPhase);
  1282. HRESULT STDMETHODCALLTYPE IWMCodecInfo_GetCodecFormatCount_Proxy( 
  1283.     IWMCodecInfo * This,
  1284.     /* [in] */ REFGUID guidType,
  1285.     /* [in] */ DWORD dwCodecIndex,
  1286.     /* [out] */ DWORD *pcFormat);
  1287. void __RPC_STUB IWMCodecInfo_GetCodecFormatCount_Stub(
  1288.     IRpcStubBuffer *This,
  1289.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1290.     PRPC_MESSAGE _pRpcMessage,
  1291.     DWORD *_pdwStubPhase);
  1292. HRESULT STDMETHODCALLTYPE IWMCodecInfo_GetCodecFormat_Proxy( 
  1293.     IWMCodecInfo * This,
  1294.     /* [in] */ REFGUID guidType,
  1295.     /* [in] */ DWORD dwCodecIndex,
  1296.     /* [in] */ DWORD dwFormatIndex,
  1297.     /* [out] */ IWMStreamConfig **ppIStreamConfig);
  1298. void __RPC_STUB IWMCodecInfo_GetCodecFormat_Stub(
  1299.     IRpcStubBuffer *This,
  1300.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1301.     PRPC_MESSAGE _pRpcMessage,
  1302.     DWORD *_pdwStubPhase);
  1303. #endif  /* __IWMCodecInfo_INTERFACE_DEFINED__ */
  1304. #ifndef __IWMCodecInfo2_INTERFACE_DEFINED__
  1305. #define __IWMCodecInfo2_INTERFACE_DEFINED__
  1306. /* interface IWMCodecInfo2 */
  1307. /* [local][unique][helpstring][uuid][object] */ 
  1308. EXTERN_C const IID IID_IWMCodecInfo2;
  1309. #if defined(__cplusplus) && !defined(CINTERFACE)
  1310.     
  1311.     MIDL_INTERFACE("AA65E273-B686-4056-91EC-DD768D4DF710")
  1312.     IWMCodecInfo2 : public IWMCodecInfo
  1313.     {
  1314.     public:
  1315.         virtual HRESULT STDMETHODCALLTYPE GetCodecName( 
  1316.             /* [in] */ REFGUID guidType,
  1317.             /* [in] */ DWORD dwCodecIndex,
  1318.             /* [size_is][out] */ WCHAR *wszName,
  1319.             /* [out][in] */ DWORD *pcchName) = 0;
  1320.         
  1321.         virtual HRESULT STDMETHODCALLTYPE GetCodecFormatDesc( 
  1322.             /* [in] */ REFGUID guidType,
  1323.             /* [in] */ DWORD dwCodecIndex,
  1324.             /* [in] */ DWORD dwFormatIndex,
  1325.             /* [out] */ IWMStreamConfig **ppIStreamConfig,
  1326.             /* [size_is][out] */ WCHAR *wszDesc,
  1327.             /* [out][in] */ DWORD *pcchDesc) = 0;
  1328.         
  1329.     };
  1330.     
  1331. #else  /* C style interface */
  1332.     typedef struct IWMCodecInfo2Vtbl
  1333.     {
  1334.         BEGIN_INTERFACE
  1335.         
  1336.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1337.             IWMCodecInfo2 * This,
  1338.             /* [in] */ REFIID riid,
  1339.             /* [iid_is][out] */ void **ppvObject);
  1340.         
  1341.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1342.             IWMCodecInfo2 * This);
  1343.         
  1344.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1345.             IWMCodecInfo2 * This);
  1346.         
  1347.         HRESULT ( STDMETHODCALLTYPE *GetCodecInfoCount )( 
  1348.             IWMCodecInfo2 * This,
  1349.             /* [in] */ REFGUID guidType,
  1350.             /* [out] */ DWORD *pcCodecs);
  1351.         
  1352.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormatCount )( 
  1353.             IWMCodecInfo2 * This,
  1354.             /* [in] */ REFGUID guidType,
  1355.             /* [in] */ DWORD dwCodecIndex,
  1356.             /* [out] */ DWORD *pcFormat);
  1357.         
  1358.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormat )( 
  1359.             IWMCodecInfo2 * This,
  1360.             /* [in] */ REFGUID guidType,
  1361.             /* [in] */ DWORD dwCodecIndex,
  1362.             /* [in] */ DWORD dwFormatIndex,
  1363.             /* [out] */ IWMStreamConfig **ppIStreamConfig);
  1364.         
  1365.         HRESULT ( STDMETHODCALLTYPE *GetCodecName )( 
  1366.             IWMCodecInfo2 * This,
  1367.             /* [in] */ REFGUID guidType,
  1368.             /* [in] */ DWORD dwCodecIndex,
  1369.             /* [size_is][out] */ WCHAR *wszName,
  1370.             /* [out][in] */ DWORD *pcchName);
  1371.         
  1372.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormatDesc )( 
  1373.             IWMCodecInfo2 * This,
  1374.             /* [in] */ REFGUID guidType,
  1375.             /* [in] */ DWORD dwCodecIndex,
  1376.             /* [in] */ DWORD dwFormatIndex,
  1377.             /* [out] */ IWMStreamConfig **ppIStreamConfig,
  1378.             /* [size_is][out] */ WCHAR *wszDesc,
  1379.             /* [out][in] */ DWORD *pcchDesc);
  1380.         
  1381.         END_INTERFACE
  1382.     } IWMCodecInfo2Vtbl;
  1383.     interface IWMCodecInfo2
  1384.     {
  1385.         CONST_VTBL struct IWMCodecInfo2Vtbl *lpVtbl;
  1386.     };
  1387.     
  1388. #ifdef COBJMACROS
  1389. #define IWMCodecInfo2_QueryInterface(This,riid,ppvObject)
  1390.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1391. #define IWMCodecInfo2_AddRef(This)
  1392.     (This)->lpVtbl -> AddRef(This)
  1393. #define IWMCodecInfo2_Release(This)
  1394.     (This)->lpVtbl -> Release(This)
  1395. #define IWMCodecInfo2_GetCodecInfoCount(This,guidType,pcCodecs)
  1396.     (This)->lpVtbl -> GetCodecInfoCount(This,guidType,pcCodecs)
  1397. #define IWMCodecInfo2_GetCodecFormatCount(This,guidType,dwCodecIndex,pcFormat)
  1398.     (This)->lpVtbl -> GetCodecFormatCount(This,guidType,dwCodecIndex,pcFormat)
  1399. #define IWMCodecInfo2_GetCodecFormat(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig)
  1400.     (This)->lpVtbl -> GetCodecFormat(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig)
  1401. #define IWMCodecInfo2_GetCodecName(This,guidType,dwCodecIndex,wszName,pcchName)
  1402.     (This)->lpVtbl -> GetCodecName(This,guidType,dwCodecIndex,wszName,pcchName)
  1403. #define IWMCodecInfo2_GetCodecFormatDesc(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig,wszDesc,pcchDesc)
  1404.     (This)->lpVtbl -> GetCodecFormatDesc(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig,wszDesc,pcchDesc)
  1405. #endif /* COBJMACROS */
  1406. #endif  /* C style interface */
  1407. HRESULT STDMETHODCALLTYPE IWMCodecInfo2_GetCodecName_Proxy( 
  1408.     IWMCodecInfo2 * This,
  1409.     /* [in] */ REFGUID guidType,
  1410.     /* [in] */ DWORD dwCodecIndex,
  1411.     /* [size_is][out] */ WCHAR *wszName,
  1412.     /* [out][in] */ DWORD *pcchName);
  1413. void __RPC_STUB IWMCodecInfo2_GetCodecName_Stub(
  1414.     IRpcStubBuffer *This,
  1415.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1416.     PRPC_MESSAGE _pRpcMessage,
  1417.     DWORD *_pdwStubPhase);
  1418. HRESULT STDMETHODCALLTYPE IWMCodecInfo2_GetCodecFormatDesc_Proxy( 
  1419.     IWMCodecInfo2 * This,
  1420.     /* [in] */ REFGUID guidType,
  1421.     /* [in] */ DWORD dwCodecIndex,
  1422.     /* [in] */ DWORD dwFormatIndex,
  1423.     /* [out] */ IWMStreamConfig **ppIStreamConfig,
  1424.     /* [size_is][out] */ WCHAR *wszDesc,
  1425.     /* [out][in] */ DWORD *pcchDesc);
  1426. void __RPC_STUB IWMCodecInfo2_GetCodecFormatDesc_Stub(
  1427.     IRpcStubBuffer *This,
  1428.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1429.     PRPC_MESSAGE _pRpcMessage,
  1430.     DWORD *_pdwStubPhase);
  1431. #endif  /* __IWMCodecInfo2_INTERFACE_DEFINED__ */
  1432. #ifndef __IWMCodecInfo3_INTERFACE_DEFINED__
  1433. #define __IWMCodecInfo3_INTERFACE_DEFINED__
  1434. /* interface IWMCodecInfo3 */
  1435. /* [local][unique][helpstring][uuid][object] */ 
  1436. EXTERN_C const IID IID_IWMCodecInfo3;
  1437. #if defined(__cplusplus) && !defined(CINTERFACE)
  1438.     
  1439.     MIDL_INTERFACE("7e51f487-4d93-4f98-8ab4-27d0565adc51")
  1440.     IWMCodecInfo3 : public IWMCodecInfo2
  1441.     {
  1442.     public:
  1443.         virtual HRESULT STDMETHODCALLTYPE GetCodecFormatProp( 
  1444.             /* [in] */ REFGUID guidType,
  1445.             /* [in] */ DWORD dwCodecIndex,
  1446.             /* [in] */ DWORD dwFormatIndex,
  1447.             /* [in] */ LPCWSTR pszName,
  1448.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1449.             /* [size_is][out] */ BYTE *pValue,
  1450.             /* [out][in] */ DWORD *pdwSize) = 0;
  1451.         
  1452.         virtual HRESULT STDMETHODCALLTYPE GetCodecProp( 
  1453.             /* [in] */ REFGUID guidType,
  1454.             /* [in] */ DWORD dwCodecIndex,
  1455.             /* [in] */ LPCWSTR pszName,
  1456.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1457.             /* [size_is][out] */ BYTE *pValue,
  1458.             /* [out][in] */ DWORD *pdwSize) = 0;
  1459.         
  1460.         virtual HRESULT STDMETHODCALLTYPE SetCodecEnumerationSetting( 
  1461.             /* [in] */ REFGUID guidType,
  1462.             /* [in] */ DWORD dwCodecIndex,
  1463.             /* [in] */ LPCWSTR pszName,
  1464.             /* [in] */ WMT_ATTR_DATATYPE Type,
  1465.             /* [size_is][in] */ const BYTE *pValue,
  1466.             /* [in] */ DWORD dwSize) = 0;
  1467.         
  1468.         virtual HRESULT STDMETHODCALLTYPE GetCodecEnumerationSetting( 
  1469.             /* [in] */ REFGUID guidType,
  1470.             /* [in] */ DWORD dwCodecIndex,
  1471.             /* [in] */ LPCWSTR pszName,
  1472.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1473.             /* [size_is][out] */ BYTE *pValue,
  1474.             /* [out][in] */ DWORD *pdwSize) = 0;
  1475.         
  1476.     };
  1477.     
  1478. #else  /* C style interface */
  1479.     typedef struct IWMCodecInfo3Vtbl
  1480.     {
  1481.         BEGIN_INTERFACE
  1482.         
  1483.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1484.             IWMCodecInfo3 * This,
  1485.             /* [in] */ REFIID riid,
  1486.             /* [iid_is][out] */ void **ppvObject);
  1487.         
  1488.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1489.             IWMCodecInfo3 * This);
  1490.         
  1491.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1492.             IWMCodecInfo3 * This);
  1493.         
  1494.         HRESULT ( STDMETHODCALLTYPE *GetCodecInfoCount )( 
  1495.             IWMCodecInfo3 * This,
  1496.             /* [in] */ REFGUID guidType,
  1497.             /* [out] */ DWORD *pcCodecs);
  1498.         
  1499.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormatCount )( 
  1500.             IWMCodecInfo3 * This,
  1501.             /* [in] */ REFGUID guidType,
  1502.             /* [in] */ DWORD dwCodecIndex,
  1503.             /* [out] */ DWORD *pcFormat);
  1504.         
  1505.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormat )( 
  1506.             IWMCodecInfo3 * This,
  1507.             /* [in] */ REFGUID guidType,
  1508.             /* [in] */ DWORD dwCodecIndex,
  1509.             /* [in] */ DWORD dwFormatIndex,
  1510.             /* [out] */ IWMStreamConfig **ppIStreamConfig);
  1511.         
  1512.         HRESULT ( STDMETHODCALLTYPE *GetCodecName )( 
  1513.             IWMCodecInfo3 * This,
  1514.             /* [in] */ REFGUID guidType,
  1515.             /* [in] */ DWORD dwCodecIndex,
  1516.             /* [size_is][out] */ WCHAR *wszName,
  1517.             /* [out][in] */ DWORD *pcchName);
  1518.         
  1519.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormatDesc )( 
  1520.             IWMCodecInfo3 * This,
  1521.             /* [in] */ REFGUID guidType,
  1522.             /* [in] */ DWORD dwCodecIndex,
  1523.             /* [in] */ DWORD dwFormatIndex,
  1524.             /* [out] */ IWMStreamConfig **ppIStreamConfig,
  1525.             /* [size_is][out] */ WCHAR *wszDesc,
  1526.             /* [out][in] */ DWORD *pcchDesc);
  1527.         
  1528.         HRESULT ( STDMETHODCALLTYPE *GetCodecFormatProp )( 
  1529.             IWMCodecInfo3 * This,
  1530.             /* [in] */ REFGUID guidType,
  1531.             /* [in] */ DWORD dwCodecIndex,
  1532.             /* [in] */ DWORD dwFormatIndex,
  1533.             /* [in] */ LPCWSTR pszName,
  1534.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1535.             /* [size_is][out] */ BYTE *pValue,
  1536.             /* [out][in] */ DWORD *pdwSize);
  1537.         
  1538.         HRESULT ( STDMETHODCALLTYPE *GetCodecProp )( 
  1539.             IWMCodecInfo3 * This,
  1540.             /* [in] */ REFGUID guidType,
  1541.             /* [in] */ DWORD dwCodecIndex,
  1542.             /* [in] */ LPCWSTR pszName,
  1543.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1544.             /* [size_is][out] */ BYTE *pValue,
  1545.             /* [out][in] */ DWORD *pdwSize);
  1546.         
  1547.         HRESULT ( STDMETHODCALLTYPE *SetCodecEnumerationSetting )( 
  1548.             IWMCodecInfo3 * This,
  1549.             /* [in] */ REFGUID guidType,
  1550.             /* [in] */ DWORD dwCodecIndex,
  1551.             /* [in] */ LPCWSTR pszName,
  1552.             /* [in] */ WMT_ATTR_DATATYPE Type,
  1553.             /* [size_is][in] */ const BYTE *pValue,
  1554.             /* [in] */ DWORD dwSize);
  1555.         
  1556.         HRESULT ( STDMETHODCALLTYPE *GetCodecEnumerationSetting )( 
  1557.             IWMCodecInfo3 * This,
  1558.             /* [in] */ REFGUID guidType,
  1559.             /* [in] */ DWORD dwCodecIndex,
  1560.             /* [in] */ LPCWSTR pszName,
  1561.             /* [out] */ WMT_ATTR_DATATYPE *pType,
  1562.             /* [size_is][out] */ BYTE *pValue,
  1563.             /* [out][in] */ DWORD *pdwSize);
  1564.         
  1565.         END_INTERFACE
  1566.     } IWMCodecInfo3Vtbl;
  1567.     interface IWMCodecInfo3
  1568.     {
  1569.         CONST_VTBL struct IWMCodecInfo3Vtbl *lpVtbl;
  1570.     };
  1571.     
  1572. #ifdef COBJMACROS
  1573. #define IWMCodecInfo3_QueryInterface(This,riid,ppvObject)
  1574.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1575. #define IWMCodecInfo3_AddRef(This)
  1576.     (This)->lpVtbl -> AddRef(This)
  1577. #define IWMCodecInfo3_Release(This)
  1578.     (This)->lpVtbl -> Release(This)
  1579. #define IWMCodecInfo3_GetCodecInfoCount(This,guidType,pcCodecs)
  1580.     (This)->lpVtbl -> GetCodecInfoCount(This,guidType,pcCodecs)
  1581. #define IWMCodecInfo3_GetCodecFormatCount(This,guidType,dwCodecIndex,pcFormat)
  1582.     (This)->lpVtbl -> GetCodecFormatCount(This,guidType,dwCodecIndex,pcFormat)
  1583. #define IWMCodecInfo3_GetCodecFormat(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig)
  1584.     (This)->lpVtbl -> GetCodecFormat(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig)
  1585. #define IWMCodecInfo3_GetCodecName(This,guidType,dwCodecIndex,wszName,pcchName)
  1586.     (This)->lpVtbl -> GetCodecName(This,guidType,dwCodecIndex,wszName,pcchName)
  1587. #define IWMCodecInfo3_GetCodecFormatDesc(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig,wszDesc,pcchDesc)
  1588.     (This)->lpVtbl -> GetCodecFormatDesc(This,guidType,dwCodecIndex,dwFormatIndex,ppIStreamConfig,wszDesc,pcchDesc)
  1589. #define IWMCodecInfo3_GetCodecFormatProp(This,guidType,dwCodecIndex,dwFormatIndex,pszName,pType,pValue,pdwSize)
  1590.     (This)->lpVtbl -> GetCodecFormatProp(This,guidType,dwCodecIndex,dwFormatIndex,pszName,pType,pValue,pdwSize)
  1591. #define IWMCodecInfo3_GetCodecProp(This,guidType,dwCodecIndex,pszName,pType,pValue,pdwSize)
  1592.     (This)->lpVtbl -> GetCodecProp(This,guidType,dwCodecIndex,pszName,pType,pValue,pdwSize)
  1593. #define IWMCodecInfo3_SetCodecEnumerationSetting(This,guidType,dwCodecIndex,pszName,Type,pValue,dwSize)
  1594.     (This)->lpVtbl -> SetCodecEnumerationSetting(This,guidType,dwCodecIndex,pszName,Type,pValue,dwSize)
  1595. #define IWMCodecInfo3_GetCodecEnumerationSetting(This,guidType,dwCodecIndex,pszName,pType,pValue,pdwSize)
  1596.     (This)->lpVtbl -> GetCodecEnumerationSetting(This,guidType,dwCodecIndex,pszName,pType,pValue,pdwSize)
  1597. #endif /* COBJMACROS */
  1598. #endif  /* C style interface */
  1599. HRESULT STDMETHODCALLTYPE IWMCodecInfo3_GetCodecFormatProp_Proxy( 
  1600.     IWMCodecInfo3 * This,
  1601.     /* [in] */ REFGUID guidType,
  1602.     /* [in] */ DWORD dwCodecIndex,
  1603.     /* [in] */ DWORD dwFormatIndex,
  1604.     /* [in] */ LPCWSTR pszName,
  1605.     /* [out] */ WMT_ATTR_DATATYPE *pType,
  1606.     /* [size_is][out] */ BYTE *pValue,
  1607.     /* [out][in] */ DWORD *pdwSize);
  1608. void __RPC_STUB IWMCodecInfo3_GetCodecFormatProp_Stub(
  1609.     IRpcStubBuffer *This,
  1610.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1611.     PRPC_MESSAGE _pRpcMessage,
  1612.     DWORD *_pdwStubPhase);
  1613. HRESULT STDMETHODCALLTYPE IWMCodecInfo3_GetCodecProp_Proxy( 
  1614.     IWMCodecInfo3 * This,
  1615.     /* [in] */ REFGUID guidType,
  1616.     /* [in] */ DWORD dwCodecIndex,
  1617.     /* [in] */ LPCWSTR pszName,
  1618.     /* [out] */ WMT_ATTR_DATATYPE *pType,
  1619.     /* [size_is][out] */ BYTE *pValue,
  1620.     /* [out][in] */ DWORD *pdwSize);
  1621. void __RPC_STUB IWMCodecInfo3_GetCodecProp_Stub(
  1622.     IRpcStubBuffer *This,
  1623.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1624.     PRPC_MESSAGE _pRpcMessage,
  1625.     DWORD *_pdwStubPhase);
  1626. HRESULT STDMETHODCALLTYPE IWMCodecInfo3_SetCodecEnumerationSetting_Proxy( 
  1627.     IWMCodecInfo3 * This,
  1628.     /* [in] */ REFGUID guidType,
  1629.     /* [in] */ DWORD dwCodecIndex,
  1630.     /* [in] */ LPCWSTR pszName,
  1631.     /* [in] */ WMT_ATTR_DATATYPE Type,
  1632.     /* [size_is][in] */ const BYTE *pValue,
  1633.     /* [in] */ DWORD dwSize);
  1634. void __RPC_STUB IWMCodecInfo3_SetCodecEnumerationSetting_Stub(
  1635.     IRpcStubBuffer *This,
  1636.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1637.     PRPC_MESSAGE _pRpcMessage,
  1638.     DWORD *_pdwStubPhase);
  1639. HRESULT STDMETHODCALLTYPE IWMCodecInfo3_GetCodecEnumerationSetting_Proxy( 
  1640.     IWMCodecInfo3 * This,
  1641.     /* [in] */ REFGUID guidType,
  1642.     /* [in] */ DWORD dwCodecIndex,
  1643.     /* [in] */ LPCWSTR pszName,
  1644.     /* [out] */ WMT_ATTR_DATATYPE *pType,
  1645.     /* [size_is][out] */ BYTE *pValue,
  1646.     /* [out][in] */ DWORD *pdwSize);
  1647. void __RPC_STUB IWMCodecInfo3_GetCodecEnumerationSetting_Stub(
  1648.     IRpcStubBuffer *This,
  1649.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1650.     PRPC_MESSAGE _pRpcMessage,
  1651.     DWORD *_pdwStubPhase);
  1652. #endif  /* __IWMCodecInfo3_INTERFACE_DEFINED__ */
  1653. #ifndef __IWMLanguageList_INTERFACE_DEFINED__
  1654. #define __IWMLanguageList_INTERFACE_DEFINED__
  1655. /* interface IWMLanguageList */
  1656. /* [local][unique][helpstring][uuid][object] */ 
  1657. EXTERN_C const IID IID_IWMLanguageList;
  1658. #if defined(__cplusplus) && !defined(CINTERFACE)
  1659.     
  1660.     MIDL_INTERFACE("DF683F00-2D49-4d8e-92B7-FB19F6A0DC57")
  1661.     IWMLanguageList : public IUnknown
  1662.     {
  1663.     public:
  1664.         virtual HRESULT STDMETHODCALLTYPE GetLanguageCount( 
  1665.             /* [out] */ WORD *pwCount) = 0;
  1666.         
  1667.         virtual HRESULT STDMETHODCALLTYPE GetLanguageDetails( 
  1668.             /* [in] */ WORD wIndex,
  1669.             /* [size_is][out] */ WCHAR *pwszLanguageString,
  1670.             /* [out][in] */ WORD *pcchLanguageStringLength) = 0;
  1671.         
  1672.         virtual HRESULT STDMETHODCALLTYPE AddLanguageByRFC1766String( 
  1673.             /* [in] */ LPWSTR pwszLanguageString,
  1674.             /* [out] */ WORD *pwIndex) = 0;
  1675.         
  1676.     };
  1677.     
  1678. #else  /* C style interface */
  1679.     typedef struct IWMLanguageListVtbl
  1680.     {
  1681.         BEGIN_INTERFACE
  1682.         
  1683.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1684.             IWMLanguageList * This,
  1685.             /* [in] */ REFIID riid,
  1686.             /* [iid_is][out] */ void **ppvObject);
  1687.         
  1688.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1689.             IWMLanguageList * This);
  1690.         
  1691.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1692.             IWMLanguageList * This);
  1693.         
  1694.         HRESULT ( STDMETHODCALLTYPE *GetLanguageCount )( 
  1695.             IWMLanguageList * This,
  1696.             /* [out] */ WORD *pwCount);
  1697.         
  1698.         HRESULT ( STDMETHODCALLTYPE *GetLanguageDetails )( 
  1699.             IWMLanguageList * This,
  1700.             /* [in] */ WORD wIndex,
  1701.             /* [size_is][out] */ WCHAR *pwszLanguageString,
  1702.             /* [out][in] */ WORD *pcchLanguageStringLength);
  1703.         
  1704.         HRESULT ( STDMETHODCALLTYPE *AddLanguageByRFC1766String )( 
  1705.             IWMLanguageList * This,
  1706.             /* [in] */ LPWSTR pwszLanguageString,
  1707.             /* [out] */ WORD *pwIndex);
  1708.         
  1709.         END_INTERFACE
  1710.     } IWMLanguageListVtbl;
  1711.     interface IWMLanguageList
  1712.     {
  1713.         CONST_VTBL struct IWMLanguageListVtbl *lpVtbl;
  1714.     };
  1715.     
  1716. #ifdef COBJMACROS
  1717. #define IWMLanguageList_QueryInterface(This,riid,ppvObject)
  1718.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1719. #define IWMLanguageList_AddRef(This)
  1720.     (This)->lpVtbl -> AddRef(This)
  1721. #define IWMLanguageList_Release(This)
  1722.     (This)->lpVtbl -> Release(This)
  1723. #define IWMLanguageList_GetLanguageCount(This,pwCount)
  1724.     (This)->lpVtbl -> GetLanguageCount(This,pwCount)
  1725. #define IWMLanguageList_GetLanguageDetails(This,wIndex,pwszLanguageString,pcchLanguageStringLength)
  1726.     (This)->lpVtbl -> GetLanguageDetails(This,wIndex,pwszLanguageString,pcchLanguageStringLength)
  1727. #define IWMLanguageList_AddLanguageByRFC1766String(This,pwszLanguageString,pwIndex)
  1728.     (This)->lpVtbl -> AddLanguageByRFC1766String(This,pwszLanguageString,pwIndex)
  1729. #endif /* COBJMACROS */
  1730. #endif  /* C style interface */
  1731. HRESULT STDMETHODCALLTYPE IWMLanguageList_GetLanguageCount_Proxy( 
  1732.     IWMLanguageList * This,
  1733.     /* [out] */ WORD *pwCount);
  1734. void __RPC_STUB IWMLanguageList_GetLanguageCount_Stub(
  1735.     IRpcStubBuffer *This,
  1736.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1737.     PRPC_MESSAGE _pRpcMessage,
  1738.     DWORD *_pdwStubPhase);
  1739. HRESULT STDMETHODCALLTYPE IWMLanguageList_GetLanguageDetails_Proxy( 
  1740.     IWMLanguageList * This,
  1741.     /* [in] */ WORD wIndex,
  1742.     /* [size_is][out] */ WCHAR *pwszLanguageString,
  1743.     /* [out][in] */ WORD *pcchLanguageStringLength);
  1744. void __RPC_STUB IWMLanguageList_GetLanguageDetails_Stub(
  1745.     IRpcStubBuffer *This,
  1746.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1747.     PRPC_MESSAGE _pRpcMessage,
  1748.     DWORD *_pdwStubPhase);
  1749. HRESULT STDMETHODCALLTYPE IWMLanguageList_AddLanguageByRFC1766String_Proxy( 
  1750.     IWMLanguageList * This,
  1751.     /* [in] */ LPWSTR pwszLanguageString,
  1752.     /* [out] */ WORD *pwIndex);
  1753. void __RPC_STUB IWMLanguageList_AddLanguageByRFC1766String_Stub(
  1754.     IRpcStubBuffer *This,
  1755.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1756.     PRPC_MESSAGE _pRpcMessage,
  1757.     DWORD *_pdwStubPhase);
  1758. #endif  /* __IWMLanguageList_INTERFACE_DEFINED__ */
  1759. #ifndef __IWMWriterPushSink_INTERFACE_DEFINED__
  1760. #define __IWMWriterPushSink_INTERFACE_DEFINED__
  1761. /* interface IWMWriterPushSink */
  1762. /* [local][unique][helpstring][uuid][object] */ 
  1763. EXTERN_C const IID IID_IWMWriterPushSink;
  1764. #if defined(__cplusplus) && !defined(CINTERFACE)
  1765.     
  1766.     MIDL_INTERFACE("dc10e6a5-072c-467d-bf57-6330a9dde12a")
  1767.     IWMWriterPushSink : public IWMWriterSink
  1768.     {
  1769.     public:
  1770.         virtual HRESULT STDMETHODCALLTYPE Connect( 
  1771.             /* [in] */ LPCWSTR pwszURL,
  1772.             /* [in] */ LPCWSTR pwszTemplateURL,
  1773.             /* [in] */ BOOL fAutoDestroy) = 0;
  1774.         
  1775.         virtual HRESULT STDMETHODCALLTYPE Disconnect( void) = 0;
  1776.         
  1777.         virtual HRESULT STDMETHODCALLTYPE EndSession( void) = 0;
  1778.         
  1779.     };
  1780.     
  1781. #else  /* C style interface */
  1782.     typedef struct IWMWriterPushSinkVtbl
  1783.     {
  1784.         BEGIN_INTERFACE
  1785.         
  1786.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1787.             IWMWriterPushSink * This,
  1788.             /* [in] */ REFIID riid,
  1789.             /* [iid_is][out] */ void **ppvObject);
  1790.         
  1791.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1792.             IWMWriterPushSink * This);
  1793.         
  1794.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1795.             IWMWriterPushSink * This);
  1796.         
  1797.         HRESULT ( STDMETHODCALLTYPE *OnHeader )( 
  1798.             IWMWriterPushSink * This,
  1799.             /* [in] */ INSSBuffer *pHeader);
  1800.         
  1801.         HRESULT ( STDMETHODCALLTYPE *IsRealTime )( 
  1802.             IWMWriterPushSink * This,
  1803.             /* [out] */ BOOL *pfRealTime);
  1804.         
  1805.         HRESULT ( STDMETHODCALLTYPE *AllocateDataUnit )( 
  1806.             IWMWriterPushSink * This,
  1807.             /* [in] */ DWORD cbDataUnit,
  1808.             /* [out] */ INSSBuffer **ppDataUnit);
  1809.         
  1810.         HRESULT ( STDMETHODCALLTYPE *OnDataUnit )( 
  1811.             IWMWriterPushSink * This,
  1812.             /* [in] */ INSSBuffer *pDataUnit);
  1813.         
  1814.         HRESULT ( STDMETHODCALLTYPE *OnEndWriting )( 
  1815.             IWMWriterPushSink * This);
  1816.         
  1817.         HRESULT ( STDMETHODCALLTYPE *Connect )( 
  1818.             IWMWriterPushSink * This,
  1819.             /* [in] */ LPCWSTR pwszURL,
  1820.             /* [in] */ LPCWSTR pwszTemplateURL,
  1821.             /* [in] */ BOOL fAutoDestroy);
  1822.         
  1823.         HRESULT ( STDMETHODCALLTYPE *Disconnect )( 
  1824.             IWMWriterPushSink * This);
  1825.         
  1826.         HRESULT ( STDMETHODCALLTYPE *EndSession )( 
  1827.             IWMWriterPushSink * This);
  1828.         
  1829.         END_INTERFACE
  1830.     } IWMWriterPushSinkVtbl;
  1831.     interface IWMWriterPushSink
  1832.     {
  1833.         CONST_VTBL struct IWMWriterPushSinkVtbl *lpVtbl;
  1834.     };
  1835.     
  1836. #ifdef COBJMACROS
  1837. #define IWMWriterPushSink_QueryInterface(This,riid,ppvObject)
  1838.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1839. #define IWMWriterPushSink_AddRef(This)
  1840.     (This)->lpVtbl -> AddRef(This)
  1841. #define IWMWriterPushSink_Release(This)
  1842.     (This)->lpVtbl -> Release(This)
  1843. #define IWMWriterPushSink_OnHeader(This,pHeader)
  1844.     (This)->lpVtbl -> OnHeader(This,pHeader)
  1845. #define IWMWriterPushSink_IsRealTime(This,pfRealTime)
  1846.     (This)->lpVtbl -> IsRealTime(This,pfRealTime)
  1847. #define IWMWriterPushSink_AllocateDataUnit(This,cbDataUnit,ppDataUnit)
  1848.     (This)->lpVtbl -> AllocateDataUnit(This,cbDataUnit,ppDataUnit)
  1849. #define IWMWriterPushSink_OnDataUnit(This,pDataUnit)
  1850.     (This)->lpVtbl -> OnDataUnit(This,pDataUnit)
  1851. #define IWMWriterPushSink_OnEndWriting(This)
  1852.     (This)->lpVtbl -> OnEndWriting(This)
  1853. #define IWMWriterPushSink_Connect(This,pwszURL,pwszTemplateURL,fAutoDestroy)
  1854.     (This)->lpVtbl -> Connect(This,pwszURL,pwszTemplateURL,fAutoDestroy)
  1855. #define IWMWriterPushSink_Disconnect(This)
  1856.     (This)->lpVtbl -> Disconnect(This)
  1857. #define IWMWriterPushSink_EndSession(This)
  1858.     (This)->lpVtbl -> EndSession(This)
  1859. #endif /* COBJMACROS */
  1860. #endif  /* C style interface */
  1861. HRESULT STDMETHODCALLTYPE IWMWriterPushSink_Connect_Proxy( 
  1862.     IWMWriterPushSink * This,
  1863.     /* [in] */ LPCWSTR pwszURL,
  1864.     /* [in] */ LPCWSTR pwszTemplateURL,
  1865.     /* [in] */ BOOL fAutoDestroy);
  1866. void __RPC_STUB IWMWriterPushSink_Connect_Stub(
  1867.     IRpcStubBuffer *This,
  1868.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1869.     PRPC_MESSAGE _pRpcMessage,
  1870.     DWORD *_pdwStubPhase);
  1871. HRESULT STDMETHODCALLTYPE IWMWriterPushSink_Disconnect_Proxy( 
  1872.     IWMWriterPushSink * This);
  1873. void __RPC_STUB IWMWriterPushSink_Disconnect_Stub(
  1874.     IRpcStubBuffer *This,
  1875.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1876.     PRPC_MESSAGE _pRpcMessage,
  1877.     DWORD *_pdwStubPhase);
  1878. HRESULT STDMETHODCALLTYPE IWMWriterPushSink_EndSession_Proxy( 
  1879.     IWMWriterPushSink * This);
  1880. void __RPC_STUB IWMWriterPushSink_EndSession_Stub(
  1881.     IRpcStubBuffer *This,
  1882.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1883.     PRPC_MESSAGE _pRpcMessage,
  1884.     DWORD *_pdwStubPhase);
  1885. #endif  /* __IWMWriterPushSink_INTERFACE_DEFINED__ */
  1886. #ifndef __IWMWatermarkInfo_INTERFACE_DEFINED__
  1887. #define __IWMWatermarkInfo_INTERFACE_DEFINED__
  1888. /* interface IWMWatermarkInfo */
  1889. /* [local][unique][helpstring][uuid][object] */ 
  1890. EXTERN_C const IID IID_IWMWatermarkInfo;
  1891. #if defined(__cplusplus) && !defined(CINTERFACE)
  1892.     
  1893.     MIDL_INTERFACE("6f497062-f2e2-4624-8ea7-9dd40d81fc8d")
  1894.     IWMWatermarkInfo : public IUnknown
  1895.     {
  1896.     public:
  1897.         virtual HRESULT STDMETHODCALLTYPE GetWatermarkEntryCount( 
  1898.             /* [in] */ WMT_WATERMARK_ENTRY_TYPE wmetType,
  1899.             /* [out] */ DWORD *pdwCount) = 0;
  1900.         
  1901.         virtual HRESULT STDMETHODCALLTYPE GetWatermarkEntry( 
  1902.             /* [in] */ WMT_WATERMARK_ENTRY_TYPE wmetType,
  1903.             /* [in] */ DWORD dwEntryNum,
  1904.             /* [out] */ WMT_WATERMARK_ENTRY *pEntry) = 0;
  1905.         
  1906.     };
  1907.     
  1908. #else  /* C style interface */
  1909.     typedef struct IWMWatermarkInfoVtbl
  1910.     {
  1911.         BEGIN_INTERFACE
  1912.         
  1913.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1914.             IWMWatermarkInfo * This,
  1915.             /* [in] */ REFIID riid,
  1916.             /* [iid_is][out] */ void **ppvObject);
  1917.         
  1918.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1919.             IWMWatermarkInfo * This);
  1920.         
  1921.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1922.             IWMWatermarkInfo * This);
  1923.         
  1924.         HRESULT ( STDMETHODCALLTYPE *GetWatermarkEntryCount )( 
  1925.             IWMWatermarkInfo * This,
  1926.             /* [in] */ WMT_WATERMARK_ENTRY_TYPE wmetType,
  1927.             /* [out] */ DWORD *pdwCount);
  1928.         
  1929.         HRESULT ( STDMETHODCALLTYPE *GetWatermarkEntry )( 
  1930.             IWMWatermarkInfo * This,
  1931.             /* [in] */ WMT_WATERMARK_ENTRY_TYPE wmetType,
  1932.             /* [in] */ DWORD dwEntryNum,
  1933.             /* [out] */ WMT_WATERMARK_ENTRY *pEntry);
  1934.         
  1935.         END_INTERFACE
  1936.     } IWMWatermarkInfoVtbl;
  1937.     interface IWMWatermarkInfo
  1938.     {
  1939.         CONST_VTBL struct IWMWatermarkInfoVtbl *lpVtbl;
  1940.     };
  1941.     
  1942. #ifdef COBJMACROS
  1943. #define IWMWatermarkInfo_QueryInterface(This,riid,ppvObject)
  1944.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1945. #define IWMWatermarkInfo_AddRef(This)
  1946.     (This)->lpVtbl -> AddRef(This)
  1947. #define IWMWatermarkInfo_Release(This)
  1948.     (This)->lpVtbl -> Release(This)
  1949. #define IWMWatermarkInfo_GetWatermarkEntryCount(This,wmetType,pdwCount)
  1950.     (This)->lpVtbl -> GetWatermarkEntryCount(This,wmetType,pdwCount)
  1951. #define IWMWatermarkInfo_GetWatermarkEntry(This,wmetType,dwEntryNum,pEntry)
  1952.     (This)->lpVtbl -> GetWatermarkEntry(This,wmetType,dwEntryNum,pEntry)
  1953. #endif /* COBJMACROS */
  1954. #endif  /* C style interface */
  1955. HRESULT STDMETHODCALLTYPE IWMWatermarkInfo_GetWatermarkEntryCount_Proxy( 
  1956.     IWMWatermarkInfo * This,
  1957.     /* [in] */ WMT_WATERMARK_ENTRY_TYPE wmetType,
  1958.     /* [out] */ DWORD *pdwCount);
  1959. void __RPC_STUB IWMWatermarkInfo_GetWatermarkEntryCount_Stub(
  1960.     IRpcStubBuffer *This,
  1961.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1962.     PRPC_MESSAGE _pRpcMessage,
  1963.     DWORD *_pdwStubPhase);
  1964. HRESULT STDMETHODCALLTYPE IWMWatermarkInfo_GetWatermarkEntry_Proxy( 
  1965.     IWMWatermarkInfo * This,
  1966.     /* [in] */ WMT_WATERMARK_ENTRY_TYPE wmetType,
  1967.     /* [in] */ DWORD dwEntryNum,
  1968.     /* [out] */ WMT_WATERMARK_ENTRY *pEntry);
  1969. void __RPC_STUB IWMWatermarkInfo_GetWatermarkEntry_Stub(
  1970.     IRpcStubBuffer *This,
  1971.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1972.     PRPC_MESSAGE _pRpcMessage,
  1973.     DWORD *_pdwStubPhase);
  1974. #endif  /* __IWMWatermarkInfo_INTERFACE_DEFINED__ */
  1975. #ifndef __IWMReaderAccelerator_INTERFACE_DEFINED__
  1976. #define __IWMReaderAccelerator_INTERFACE_DEFINED__
  1977. /* interface IWMReaderAccelerator */
  1978. /* [local][unique][helpstring][uuid][object] */ 
  1979. EXTERN_C const IID IID_IWMReaderAccelerator;
  1980. #if defined(__cplusplus) && !defined(CINTERFACE)
  1981.     
  1982.     MIDL_INTERFACE("BDDC4D08-944D-4d52-A612-46C3FDA07DD4")
  1983.     IWMReaderAccelerator : public IUnknown
  1984.     {
  1985.     public:
  1986.         virtual HRESULT STDMETHODCALLTYPE GetCodecInterface( 
  1987.             /* [in] */ DWORD dwOutputNum,
  1988.             /* [in] */ REFIID riid,
  1989.             /* [out] */ void **ppvCodecInterface) = 0;
  1990.         
  1991.         virtual HRESULT STDMETHODCALLTYPE Notify( 
  1992.             /* [in] */ DWORD dwOutputNum,
  1993.             /* [in] */ WM_MEDIA_TYPE *pSubtype) = 0;
  1994.         
  1995.     };
  1996.     
  1997. #else  /* C style interface */
  1998.     typedef struct IWMReaderAcceleratorVtbl
  1999.     {
  2000.         BEGIN_INTERFACE
  2001.         
  2002.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2003.             IWMReaderAccelerator * This,
  2004.             /* [in] */ REFIID riid,
  2005.             /* [iid_is][out] */ void **ppvObject);
  2006.         
  2007.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2008.             IWMReaderAccelerator * This);
  2009.         
  2010.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2011.             IWMReaderAccelerator * This);
  2012.         
  2013.         HRESULT ( STDMETHODCALLTYPE *GetCodecInterface )( 
  2014.             IWMReaderAccelerator * This,
  2015.             /* [in] */ DWORD dwOutputNum,
  2016.             /* [in] */ REFIID riid,
  2017.             /* [out] */ void **ppvCodecInterface);
  2018.         
  2019.         HRESULT ( STDMETHODCALLTYPE *Notify )( 
  2020.             IWMReaderAccelerator * This,
  2021.             /* [in] */ DWORD dwOutputNum,
  2022.             /* [in] */ WM_MEDIA_TYPE *pSubtype);
  2023.         
  2024.         END_INTERFACE
  2025.     } IWMReaderAcceleratorVtbl;
  2026.     interface IWMReaderAccelerator
  2027.     {
  2028.         CONST_VTBL struct IWMReaderAcceleratorVtbl *lpVtbl;
  2029.     };
  2030.     
  2031. #ifdef COBJMACROS
  2032. #define IWMReaderAccelerator_QueryInterface(This,riid,ppvObject)
  2033.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2034. #define IWMReaderAccelerator_AddRef(This)
  2035.     (This)->lpVtbl -> AddRef(This)
  2036. #define IWMReaderAccelerator_Release(This)
  2037.     (This)->lpVtbl -> Release(This)
  2038. #define IWMReaderAccelerator_GetCodecInterface(This,dwOutputNum,riid,ppvCodecInterface)
  2039.     (This)->lpVtbl -> GetCodecInterface(This,dwOutputNum,riid,ppvCodecInterface)
  2040. #define IWMReaderAccelerator_Notify(This,dwOutputNum,pSubtype)
  2041.     (This)->lpVtbl -> Notify(This,dwOutputNum,pSubtype)
  2042. #endif /* COBJMACROS */
  2043. #endif  /* C style interface */
  2044. HRESULT STDMETHODCALLTYPE IWMReaderAccelerator_GetCodecInterface_Proxy( 
  2045.     IWMReaderAccelerator * This,
  2046.     /* [in] */ DWORD dwOutputNum,
  2047.     /* [in] */ REFIID riid,
  2048.     /* [out] */ void **ppvCodecInterface);
  2049. void __RPC_STUB IWMReaderAccelerator_GetCodecInterface_Stub(
  2050.     IRpcStubBuffer *This,
  2051.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2052.     PRPC_MESSAGE _pRpcMessage,
  2053.     DWORD *_pdwStubPhase);
  2054. HRESULT STDMETHODCALLTYPE IWMReaderAccelerator_Notify_Proxy( 
  2055.     IWMReaderAccelerator * This,
  2056.     /* [in] */ DWORD dwOutputNum,
  2057.     /* [in] */ WM_MEDIA_TYPE *pSubtype);
  2058. void __RPC_STUB IWMReaderAccelerator_Notify_Stub(
  2059.     IRpcStubBuffer *This,
  2060.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2061.     PRPC_MESSAGE _pRpcMessage,
  2062.     DWORD *_pdwStubPhase);
  2063. #endif  /* __IWMReaderAccelerator_INTERFACE_DEFINED__ */
  2064. #ifndef __IWMReaderTimecode_INTERFACE_DEFINED__
  2065. #define __IWMReaderTimecode_INTERFACE_DEFINED__
  2066. /* interface IWMReaderTimecode */
  2067. /* [local][unique][helpstring][uuid][object] */ 
  2068. EXTERN_C const IID IID_IWMReaderTimecode;
  2069. #if defined(__cplusplus) && !defined(CINTERFACE)
  2070.     
  2071.     MIDL_INTERFACE("f369e2f0-e081-4fe6-8450-b810b2f410d1")
  2072.     IWMReaderTimecode : public IUnknown
  2073.     {
  2074.     public:
  2075.         virtual HRESULT STDMETHODCALLTYPE GetTimecodeRangeCount( 
  2076.             /* [in] */ WORD wStreamNum,
  2077.             /* [out] */ WORD *pwRangeCount) = 0;
  2078.         
  2079.         virtual HRESULT STDMETHODCALLTYPE GetTimecodeRangeBounds( 
  2080.             /* [in] */ WORD wStreamNum,
  2081.             /* [in] */ WORD wRangeNum,
  2082.             /* [out] */ DWORD *pStartTimecode,
  2083.             /* [out] */ DWORD *pEndTimecode) = 0;
  2084.         
  2085.     };
  2086.     
  2087. #else  /* C style interface */
  2088.     typedef struct IWMReaderTimecodeVtbl
  2089.     {
  2090.         BEGIN_INTERFACE
  2091.         
  2092.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2093.             IWMReaderTimecode * This,
  2094.             /* [in] */ REFIID riid,
  2095.             /* [iid_is][out] */ void **ppvObject);
  2096.         
  2097.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2098.             IWMReaderTimecode * This);
  2099.         
  2100.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2101.             IWMReaderTimecode * This);
  2102.         
  2103.         HRESULT ( STDMETHODCALLTYPE *GetTimecodeRangeCount )( 
  2104.             IWMReaderTimecode * This,
  2105.             /* [in] */ WORD wStreamNum,
  2106.             /* [out] */ WORD *pwRangeCount);
  2107.         
  2108.         HRESULT ( STDMETHODCALLTYPE *GetTimecodeRangeBounds )( 
  2109.             IWMReaderTimecode * This,
  2110.             /* [in] */ WORD wStreamNum,
  2111.             /* [in] */ WORD wRangeNum,
  2112.             /* [out] */ DWORD *pStartTimecode,
  2113.             /* [out] */ DWORD *pEndTimecode);
  2114.         
  2115.         END_INTERFACE
  2116.     } IWMReaderTimecodeVtbl;
  2117.     interface IWMReaderTimecode
  2118.     {
  2119.         CONST_VTBL struct IWMReaderTimecodeVtbl *lpVtbl;
  2120.     };
  2121.     
  2122. #ifdef COBJMACROS
  2123. #define IWMReaderTimecode_QueryInterface(This,riid,ppvObject)
  2124.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2125. #define IWMReaderTimecode_AddRef(This)
  2126.     (This)->lpVtbl -> AddRef(This)
  2127. #define IWMReaderTimecode_Release(This)
  2128.     (This)->lpVtbl -> Release(This)
  2129. #define IWMReaderTimecode_GetTimecodeRangeCount(This,wStreamNum,pwRangeCount)
  2130.     (This)->lpVtbl -> GetTimecodeRangeCount(This,wStreamNum,pwRangeCount)
  2131. #define IWMReaderTimecode_GetTimecodeRangeBounds(This,wStreamNum,wRangeNum,pStartTimecode,pEndTimecode)
  2132.     (This)->lpVtbl -> GetTimecodeRangeBounds(This,wStreamNum,wRangeNum,pStartTimecode,pEndTimecode)
  2133. #endif /* COBJMACROS */
  2134. #endif  /* C style interface */
  2135. HRESULT STDMETHODCALLTYPE IWMReaderTimecode_GetTimecodeRangeCount_Proxy( 
  2136.     IWMReaderTimecode * This,
  2137.     /* [in] */ WORD wStreamNum,
  2138.     /* [out] */ WORD *pwRangeCount);
  2139. void __RPC_STUB IWMReaderTimecode_GetTimecodeRangeCount_Stub(
  2140.     IRpcStubBuffer *This,
  2141.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2142.     PRPC_MESSAGE _pRpcMessage,
  2143.     DWORD *_pdwStubPhase);
  2144. HRESULT STDMETHODCALLTYPE IWMReaderTimecode_GetTimecodeRangeBounds_Proxy( 
  2145.     IWMReaderTimecode * This,
  2146.     /* [in] */ WORD wStreamNum,
  2147.     /* [in] */ WORD wRangeNum,
  2148.     /* [out] */ DWORD *pStartTimecode,
  2149.     /* [out] */ DWORD *pEndTimecode);
  2150. void __RPC_STUB IWMReaderTimecode_GetTimecodeRangeBounds_Stub(
  2151.     IRpcStubBuffer *This,
  2152.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2153.     PRPC_MESSAGE _pRpcMessage,
  2154.     DWORD *_pdwStubPhase);
  2155. #endif  /* __IWMReaderTimecode_INTERFACE_DEFINED__ */
  2156. #ifndef __IWMAddressAccess_INTERFACE_DEFINED__
  2157. #define __IWMAddressAccess_INTERFACE_DEFINED__
  2158. /* interface IWMAddressAccess */
  2159. /* [local][unique][helpstring][uuid][object] */ 
  2160. EXTERN_C const IID IID_IWMAddressAccess;
  2161. #if defined(__cplusplus) && !defined(CINTERFACE)
  2162.     
  2163.     MIDL_INTERFACE("BB3C6389-1633-4e92-AF14-9F3173BA39D0")
  2164.     IWMAddressAccess : public IUnknown
  2165.     {
  2166.     public:
  2167.         virtual HRESULT STDMETHODCALLTYPE GetAccessEntryCount( 
  2168.             /* [in] */ WM_AETYPE aeType,
  2169.             /* [out] */ DWORD *pcEntries) = 0;
  2170.         
  2171.         virtual HRESULT STDMETHODCALLTYPE GetAccessEntry( 
  2172.             /* [in] */ WM_AETYPE aeType,
  2173.             /* [in] */ DWORD dwEntryNum,
  2174.             /* [out] */ WM_ADDRESS_ACCESSENTRY *pAddrAccessEntry) = 0;
  2175.         
  2176.         virtual HRESULT STDMETHODCALLTYPE AddAccessEntry( 
  2177.             /* [in] */ WM_AETYPE aeType,
  2178.             /* [in] */ WM_ADDRESS_ACCESSENTRY *pAddrAccessEntry) = 0;
  2179.         
  2180.         virtual HRESULT STDMETHODCALLTYPE RemoveAccessEntry( 
  2181.             /* [in] */ WM_AETYPE aeType,
  2182.             /* [in] */ DWORD dwEntryNum) = 0;
  2183.         
  2184.     };
  2185.     
  2186. #else  /* C style interface */
  2187.     typedef struct IWMAddressAccessVtbl
  2188.     {
  2189.         BEGIN_INTERFACE
  2190.         
  2191.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2192.             IWMAddressAccess * This,
  2193.             /* [in] */ REFIID riid,
  2194.             /* [iid_is][out] */ void **ppvObject);
  2195.         
  2196.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2197.             IWMAddressAccess * This);
  2198.         
  2199.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2200.             IWMAddressAccess * This);
  2201.         
  2202.         HRESULT ( STDMETHODCALLTYPE *GetAccessEntryCount )( 
  2203.             IWMAddressAccess * This,
  2204.             /* [in] */ WM_AETYPE aeType,
  2205.             /* [out] */ DWORD *pcEntries);
  2206.         
  2207.         HRESULT ( STDMETHODCALLTYPE *GetAccessEntry )( 
  2208.             IWMAddressAccess * This,
  2209.             /* [in] */ WM_AETYPE aeType,
  2210.             /* [in] */ DWORD dwEntryNum,
  2211.             /* [out] */ WM_ADDRESS_ACCESSENTRY *pAddrAccessEntry);
  2212.         
  2213.         HRESULT ( STDMETHODCALLTYPE *AddAccessEntry )( 
  2214.             IWMAddressAccess * This,
  2215.             /* [in] */ WM_AETYPE aeType,
  2216.             /* [in] */ WM_ADDRESS_ACCESSENTRY *pAddrAccessEntry);
  2217.         
  2218.         HRESULT ( STDMETHODCALLTYPE *RemoveAccessEntry )( 
  2219.             IWMAddressAccess * This,
  2220.             /* [in] */ WM_AETYPE aeType,
  2221.             /* [in] */ DWORD dwEntryNum);
  2222.         
  2223.         END_INTERFACE
  2224.     } IWMAddressAccessVtbl;
  2225.     interface IWMAddressAccess
  2226.     {
  2227.         CONST_VTBL struct IWMAddressAccessVtbl *lpVtbl;
  2228.     };
  2229.     
  2230. #ifdef COBJMACROS
  2231. #define IWMAddressAccess_QueryInterface(This,riid,ppvObject)
  2232.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2233. #define IWMAddressAccess_AddRef(This)
  2234.     (This)->lpVtbl -> AddRef(This)
  2235. #define IWMAddressAccess_Release(This)
  2236.     (This)->lpVtbl -> Release(This)
  2237. #define IWMAddressAccess_GetAccessEntryCount(This,aeType,pcEntries)
  2238.     (This)->lpVtbl -> GetAccessEntryCount(This,aeType,pcEntries)
  2239. #define IWMAddressAccess_GetAccessEntry(This,aeType,dwEntryNum,pAddrAccessEntry)
  2240.     (This)->lpVtbl -> GetAccessEntry(This,aeType,dwEntryNum,pAddrAccessEntry)
  2241. #define IWMAddressAccess_AddAccessEntry(This,aeType,pAddrAccessEntry)
  2242.     (This)->lpVtbl -> AddAccessEntry(This,aeType,pAddrAccessEntry)
  2243. #define IWMAddressAccess_RemoveAccessEntry(This,aeType,dwEntryNum)
  2244.     (This)->lpVtbl -> RemoveAccessEntry(This,aeType,dwEntryNum)
  2245. #endif /* COBJMACROS */
  2246. #endif  /* C style interface */
  2247. HRESULT STDMETHODCALLTYPE IWMAddressAccess_GetAccessEntryCount_Proxy( 
  2248.     IWMAddressAccess * This,
  2249.     /* [in] */ WM_AETYPE aeType,
  2250.     /* [out] */ DWORD *pcEntries);
  2251. void __RPC_STUB IWMAddressAccess_GetAccessEntryCount_Stub(
  2252.     IRpcStubBuffer *This,
  2253.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2254.     PRPC_MESSAGE _pRpcMessage,
  2255.     DWORD *_pdwStubPhase);
  2256. HRESULT STDMETHODCALLTYPE IWMAddressAccess_GetAccessEntry_Proxy( 
  2257.     IWMAddressAccess * This,
  2258.     /* [in] */ WM_AETYPE aeType,
  2259.     /* [in] */ DWORD dwEntryNum,
  2260.     /* [out] */ WM_ADDRESS_ACCESSENTRY *pAddrAccessEntry);
  2261. void __RPC_STUB IWMAddressAccess_GetAccessEntry_Stub(
  2262.     IRpcStubBuffer *This,
  2263.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2264.     PRPC_MESSAGE _pRpcMessage,
  2265.     DWORD *_pdwStubPhase);
  2266. HRESULT STDMETHODCALLTYPE IWMAddressAccess_AddAccessEntry_Proxy( 
  2267.     IWMAddressAccess * This,
  2268.     /* [in] */ WM_AETYPE aeType,
  2269.     /* [in] */ WM_ADDRESS_ACCESSENTRY *pAddrAccessEntry);
  2270. void __RPC_STUB IWMAddressAccess_AddAccessEntry_Stub(
  2271.     IRpcStubBuffer *This,
  2272.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2273.     PRPC_MESSAGE _pRpcMessage,
  2274.     DWORD *_pdwStubPhase);
  2275. HRESULT STDMETHODCALLTYPE IWMAddressAccess_RemoveAccessEntry_Proxy( 
  2276.     IWMAddressAccess * This,
  2277.     /* [in] */ WM_AETYPE aeType,
  2278.     /* [in] */ DWORD dwEntryNum);
  2279. void __RPC_STUB IWMAddressAccess_RemoveAccessEntry_Stub(
  2280.     IRpcStubBuffer *This,
  2281.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2282.     PRPC_MESSAGE _pRpcMessage,
  2283.     DWORD *_pdwStubPhase);
  2284. #endif  /* __IWMAddressAccess_INTERFACE_DEFINED__ */
  2285. #ifndef __IWMAddressAccess2_INTERFACE_DEFINED__
  2286. #define __IWMAddressAccess2_INTERFACE_DEFINED__
  2287. /* interface IWMAddressAccess2 */
  2288. /* [local][unique][helpstring][uuid][object] */ 
  2289. EXTERN_C const IID IID_IWMAddressAccess2;
  2290. #if defined(__cplusplus) && !defined(CINTERFACE)
  2291.     
  2292.     MIDL_INTERFACE("65a83fc2-3e98-4d4d-81b5-2a742886b33d")
  2293.     IWMAddressAccess2 : public IWMAddressAccess
  2294.     {
  2295.     public:
  2296.         virtual HRESULT STDMETHODCALLTYPE GetAccessEntryEx( 
  2297.             /* [in] */ WM_AETYPE aeType,
  2298.             /* [in] */ DWORD dwEntryNum,
  2299.             /* [out] */ BSTR *pbstrAddress,
  2300.             /* [out] */ BSTR *pbstrMask) = 0;
  2301.         
  2302.         virtual HRESULT STDMETHODCALLTYPE AddAccessEntryEx( 
  2303.             /* [in] */ WM_AETYPE aeType,
  2304.             /* [in] */ BSTR bstrAddress,
  2305.             /* [in] */ BSTR bstrMask) = 0;
  2306.         
  2307.     };
  2308.     
  2309. #else  /* C style interface */
  2310.     typedef struct IWMAddressAccess2Vtbl
  2311.     {
  2312.         BEGIN_INTERFACE
  2313.         
  2314.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2315.             IWMAddressAccess2 * This,
  2316.             /* [in] */ REFIID riid,
  2317.             /* [iid_is][out] */ void **ppvObject);
  2318.         
  2319.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2320.             IWMAddressAccess2 * This);
  2321.         
  2322.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2323.             IWMAddressAccess2 * This);
  2324.         
  2325.         HRESULT ( STDMETHODCALLTYPE *GetAccessEntryCount )( 
  2326.             IWMAddressAccess2 * This,
  2327.             /* [in] */ WM_AETYPE aeType,
  2328.             /* [out] */ DWORD *pcEntries);
  2329.         
  2330.         HRESULT ( STDMETHODCALLTYPE *GetAccessEntry )( 
  2331.             IWMAddressAccess2 * This,
  2332.             /* [in] */ WM_AETYPE aeType,
  2333.             /* [in] */ DWORD dwEntryNum,
  2334.             /* [out] */ WM_ADDRESS_ACCESSENTRY *pAddrAccessEntry);
  2335.         
  2336.         HRESULT ( STDMETHODCALLTYPE *AddAccessEntry )( 
  2337.             IWMAddressAccess2 * This,
  2338.             /* [in] */ WM_AETYPE aeType,
  2339.             /* [in] */ WM_ADDRESS_ACCESSENTRY *pAddrAccessEntry);
  2340.         
  2341.         HRESULT ( STDMETHODCALLTYPE *RemoveAccessEntry )( 
  2342.             IWMAddressAccess2 * This,
  2343.             /* [in] */ WM_AETYPE aeType,
  2344.             /* [in] */ DWORD dwEntryNum);
  2345.         
  2346.         HRESULT ( STDMETHODCALLTYPE *GetAccessEntryEx )( 
  2347.             IWMAddressAccess2 * This,
  2348.             /* [in] */ WM_AETYPE aeType,
  2349.             /* [in] */ DWORD dwEntryNum,
  2350.             /* [out] */ BSTR *pbstrAddress,
  2351.             /* [out] */ BSTR *pbstrMask);
  2352.         
  2353.         HRESULT ( STDMETHODCALLTYPE *AddAccessEntryEx )( 
  2354.             IWMAddressAccess2 * This,
  2355.             /* [in] */ WM_AETYPE aeType,
  2356.             /* [in] */ BSTR bstrAddress,
  2357.             /* [in] */ BSTR bstrMask);
  2358.         
  2359.         END_INTERFACE
  2360.     } IWMAddressAccess2Vtbl;
  2361.     interface IWMAddressAccess2
  2362.     {
  2363.         CONST_VTBL struct IWMAddressAccess2Vtbl *lpVtbl;
  2364.     };
  2365.     
  2366. #ifdef COBJMACROS
  2367. #define IWMAddressAccess2_QueryInterface(This,riid,ppvObject)
  2368.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2369. #define IWMAddressAccess2_AddRef(This)
  2370.     (This)->lpVtbl -> AddRef(This)
  2371. #define IWMAddressAccess2_Release(This)
  2372.     (This)->lpVtbl -> Release(This)
  2373. #define IWMAddressAccess2_GetAccessEntryCount(This,aeType,pcEntries)
  2374.     (This)->lpVtbl -> GetAccessEntryCount(This,aeType,pcEntries)
  2375. #define IWMAddressAccess2_GetAccessEntry(This,aeType,dwEntryNum,pAddrAccessEntry)
  2376.     (This)->lpVtbl -> GetAccessEntry(This,aeType,dwEntryNum,pAddrAccessEntry)
  2377. #define IWMAddressAccess2_AddAccessEntry(This,aeType,pAddrAccessEntry)
  2378.     (This)->lpVtbl -> AddAccessEntry(This,aeType,pAddrAccessEntry)
  2379. #define IWMAddressAccess2_RemoveAccessEntry(This,aeType,dwEntryNum)
  2380.     (This)->lpVtbl -> RemoveAccessEntry(This,aeType,dwEntryNum)
  2381. #define IWMAddressAccess2_GetAccessEntryEx(This,aeType,dwEntryNum,pbstrAddress,pbstrMask)
  2382.     (This)->lpVtbl -> GetAccessEntryEx(This,aeType,dwEntryNum,pbstrAddress,pbstrMask)
  2383. #define IWMAddressAccess2_AddAccessEntryEx(This,aeType,bstrAddress,bstrMask)
  2384.     (This)->lpVtbl -> AddAccessEntryEx(This,aeType,bstrAddress,bstrMask)
  2385. #endif /* COBJMACROS */
  2386. #endif  /* C style interface */
  2387. HRESULT STDMETHODCALLTYPE IWMAddressAccess2_GetAccessEntryEx_Proxy( 
  2388.     IWMAddressAccess2 * This,
  2389.     /* [in] */ WM_AETYPE aeType,
  2390.     /* [in] */ DWORD dwEntryNum,
  2391.     /* [out] */ BSTR *pbstrAddress,
  2392.     /* [out] */ BSTR *pbstrMask);
  2393. void __RPC_STUB IWMAddressAccess2_GetAccessEntryEx_Stub(
  2394.     IRpcStubBuffer *This,
  2395.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2396.     PRPC_MESSAGE _pRpcMessage,
  2397.     DWORD *_pdwStubPhase);
  2398. HRESULT STDMETHODCALLTYPE IWMAddressAccess2_AddAccessEntryEx_Proxy( 
  2399.     IWMAddressAccess2 * This,
  2400.     /* [in] */ WM_AETYPE aeType,
  2401.     /* [in] */ BSTR bstrAddress,
  2402.     /* [in] */ BSTR bstrMask);
  2403. void __RPC_STUB IWMAddressAccess2_AddAccessEntryEx_Stub(
  2404.     IRpcStubBuffer *This,
  2405.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2406.     PRPC_MESSAGE _pRpcMessage,
  2407.     DWORD *_pdwStubPhase);
  2408. #endif  /* __IWMAddressAccess2_INTERFACE_DEFINED__ */
  2409. #ifndef __IWMImageInfo_INTERFACE_DEFINED__
  2410. #define __IWMImageInfo_INTERFACE_DEFINED__
  2411. /* interface IWMImageInfo */
  2412. /* [local][unique][helpstring][uuid][object] */ 
  2413. EXTERN_C const IID IID_IWMImageInfo;
  2414. #if defined(__cplusplus) && !defined(CINTERFACE)
  2415.     
  2416.     MIDL_INTERFACE("9F0AA3B6-7267-4d89-88F2-BA915AA5C4C6")
  2417.     IWMImageInfo : public IUnknown
  2418.     {
  2419.     public:
  2420.         virtual HRESULT STDMETHODCALLTYPE GetImageCount( 
  2421.             /* [out] */ DWORD *pcImages) = 0;
  2422.         
  2423.         virtual HRESULT STDMETHODCALLTYPE GetImage( 
  2424.             /* [in] */ DWORD wIndex,
  2425.             /* [out][in] */ WORD *pcchMIMEType,
  2426.             /* [size_is][out] */ WCHAR *pwszMIMEType,
  2427.             /* [out][in] */ WORD *pcchDescription,
  2428.             /* [size_is][out] */ WCHAR *pwszDescription,
  2429.             /* [out] */ WORD *pImageType,
  2430.             /* [out][in] */ DWORD *pcbImageData,
  2431.             /* [size_is][out] */ BYTE *pbImageData) = 0;
  2432.         
  2433.     };
  2434.     
  2435. #else  /* C style interface */
  2436.     typedef struct IWMImageInfoVtbl
  2437.     {
  2438.         BEGIN_INTERFACE
  2439.         
  2440.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2441.             IWMImageInfo * This,
  2442.             /* [in] */ REFIID riid,
  2443.             /* [iid_is][out] */ void **ppvObject);
  2444.         
  2445.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2446.             IWMImageInfo * This);
  2447.         
  2448.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2449.             IWMImageInfo * This);
  2450.         
  2451.         HRESULT ( STDMETHODCALLTYPE *GetImageCount )( 
  2452.             IWMImageInfo * This,
  2453.             /* [out] */ DWORD *pcImages);
  2454.         
  2455.         HRESULT ( STDMETHODCALLTYPE *GetImage )( 
  2456.             IWMImageInfo * This,
  2457.             /* [in] */ DWORD wIndex,
  2458.             /* [out][in] */ WORD *pcchMIMEType,
  2459.             /* [size_is][out] */ WCHAR *pwszMIMEType,
  2460.             /* [out][in] */ WORD *pcchDescription,
  2461.             /* [size_is][out] */ WCHAR *pwszDescription,
  2462.             /* [out] */ WORD *pImageType,
  2463.             /* [out][in] */ DWORD *pcbImageData,
  2464.             /* [size_is][out] */ BYTE *pbImageData);
  2465.         
  2466.         END_INTERFACE
  2467.     } IWMImageInfoVtbl;
  2468.     interface IWMImageInfo
  2469.     {
  2470.         CONST_VTBL struct IWMImageInfoVtbl *lpVtbl;
  2471.     };
  2472.     
  2473. #ifdef COBJMACROS
  2474. #define IWMImageInfo_QueryInterface(This,riid,ppvObject)
  2475.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2476. #define IWMImageInfo_AddRef(This)
  2477.     (This)->lpVtbl -> AddRef(This)
  2478. #define IWMImageInfo_Release(This)
  2479.     (This)->lpVtbl -> Release(This)
  2480. #define IWMImageInfo_GetImageCount(This,pcImages)
  2481.     (This)->lpVtbl -> GetImageCount(This,pcImages)
  2482. #define IWMImageInfo_GetImage(This,wIndex,pcchMIMEType,pwszMIMEType,pcchDescription,pwszDescription,pImageType,pcbImageData,pbImageData)
  2483.     (This)->lpVtbl -> GetImage(This,wIndex,pcchMIMEType,pwszMIMEType,pcchDescription,pwszDescription,pImageType,pcbImageData,pbImageData)
  2484. #endif /* COBJMACROS */
  2485. #endif  /* C style interface */
  2486. HRESULT STDMETHODCALLTYPE IWMImageInfo_GetImageCount_Proxy( 
  2487.     IWMImageInfo * This,
  2488.     /* [out] */ DWORD *pcImages);
  2489. void __RPC_STUB IWMImageInfo_GetImageCount_Stub(
  2490.     IRpcStubBuffer *This,
  2491.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2492.     PRPC_MESSAGE _pRpcMessage,
  2493.     DWORD *_pdwStubPhase);
  2494. HRESULT STDMETHODCALLTYPE IWMImageInfo_GetImage_Proxy( 
  2495.     IWMImageInfo * This,
  2496.     /* [in] */ DWORD wIndex,
  2497.     /* [out][in] */ WORD *pcchMIMEType,
  2498.     /* [size_is][out] */ WCHAR *pwszMIMEType,
  2499.     /* [out][in] */ WORD *pcchDescription,
  2500.     /* [size_is][out] */ WCHAR *pwszDescription,
  2501.     /* [out] */ WORD *pImageType,
  2502.     /* [out][in] */ DWORD *pcbImageData,
  2503.     /* [size_is][out] */ BYTE *pbImageData);
  2504. void __RPC_STUB IWMImageInfo_GetImage_Stub(
  2505.     IRpcStubBuffer *This,
  2506.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2507.     PRPC_MESSAGE _pRpcMessage,
  2508.     DWORD *_pdwStubPhase);
  2509. #endif  /* __IWMImageInfo_INTERFACE_DEFINED__ */
  2510. /* Additional Prototypes for ALL interfaces */
  2511. /* end of Additional Prototypes */
  2512. #ifdef __cplusplus
  2513. }
  2514. #endif
  2515. #endif