MsXml.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:448k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #define IXTLRuntime_depth(This,pNode,pDepth)
  2.     (This)->lpVtbl -> depth(This,pNode,pDepth)
  3. #define IXTLRuntime_childNumber(This,pNode,pNumber)
  4.     (This)->lpVtbl -> childNumber(This,pNode,pNumber)
  5. #define IXTLRuntime_ancestorChildNumber(This,bstrNodeName,pNode,pNumber)
  6.     (This)->lpVtbl -> ancestorChildNumber(This,bstrNodeName,pNode,pNumber)
  7. #define IXTLRuntime_absoluteChildNumber(This,pNode,pNumber)
  8.     (This)->lpVtbl -> absoluteChildNumber(This,pNode,pNumber)
  9. #define IXTLRuntime_formatIndex(This,lIndex,bstrFormat,pbstrFormattedString)
  10.     (This)->lpVtbl -> formatIndex(This,lIndex,bstrFormat,pbstrFormattedString)
  11. #define IXTLRuntime_formatNumber(This,dblNumber,bstrFormat,pbstrFormattedString)
  12.     (This)->lpVtbl -> formatNumber(This,dblNumber,bstrFormat,pbstrFormattedString)
  13. #define IXTLRuntime_formatDate(This,varDate,bstrFormat,varDestLocale,pbstrFormattedString)
  14.     (This)->lpVtbl -> formatDate(This,varDate,bstrFormat,varDestLocale,pbstrFormattedString)
  15. #define IXTLRuntime_formatTime(This,varTime,bstrFormat,varDestLocale,pbstrFormattedString)
  16.     (This)->lpVtbl -> formatTime(This,varTime,bstrFormat,varDestLocale,pbstrFormattedString)
  17. #endif /* COBJMACROS */
  18. #endif  /* C style interface */
  19. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_uniqueID_Proxy( 
  20.     IXTLRuntime * This,
  21.     /* [in] */ IXMLDOMNode *pNode,
  22.     /* [retval][out] */ long *pID);
  23. void __RPC_STUB IXTLRuntime_uniqueID_Stub(
  24.     IRpcStubBuffer *This,
  25.     IRpcChannelBuffer *_pRpcChannelBuffer,
  26.     PRPC_MESSAGE _pRpcMessage,
  27.     DWORD *_pdwStubPhase);
  28. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_depth_Proxy( 
  29.     IXTLRuntime * This,
  30.     /* [in] */ IXMLDOMNode *pNode,
  31.     /* [retval][out] */ long *pDepth);
  32. void __RPC_STUB IXTLRuntime_depth_Stub(
  33.     IRpcStubBuffer *This,
  34.     IRpcChannelBuffer *_pRpcChannelBuffer,
  35.     PRPC_MESSAGE _pRpcMessage,
  36.     DWORD *_pdwStubPhase);
  37. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_childNumber_Proxy( 
  38.     IXTLRuntime * This,
  39.     /* [in] */ IXMLDOMNode *pNode,
  40.     /* [retval][out] */ long *pNumber);
  41. void __RPC_STUB IXTLRuntime_childNumber_Stub(
  42.     IRpcStubBuffer *This,
  43.     IRpcChannelBuffer *_pRpcChannelBuffer,
  44.     PRPC_MESSAGE _pRpcMessage,
  45.     DWORD *_pdwStubPhase);
  46. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_ancestorChildNumber_Proxy( 
  47.     IXTLRuntime * This,
  48.     /* [in] */ BSTR bstrNodeName,
  49.     /* [in] */ IXMLDOMNode *pNode,
  50.     /* [retval][out] */ long *pNumber);
  51. void __RPC_STUB IXTLRuntime_ancestorChildNumber_Stub(
  52.     IRpcStubBuffer *This,
  53.     IRpcChannelBuffer *_pRpcChannelBuffer,
  54.     PRPC_MESSAGE _pRpcMessage,
  55.     DWORD *_pdwStubPhase);
  56. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_absoluteChildNumber_Proxy( 
  57.     IXTLRuntime * This,
  58.     /* [in] */ IXMLDOMNode *pNode,
  59.     /* [retval][out] */ long *pNumber);
  60. void __RPC_STUB IXTLRuntime_absoluteChildNumber_Stub(
  61.     IRpcStubBuffer *This,
  62.     IRpcChannelBuffer *_pRpcChannelBuffer,
  63.     PRPC_MESSAGE _pRpcMessage,
  64.     DWORD *_pdwStubPhase);
  65. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_formatIndex_Proxy( 
  66.     IXTLRuntime * This,
  67.     /* [in] */ long lIndex,
  68.     /* [in] */ BSTR bstrFormat,
  69.     /* [retval][out] */ BSTR *pbstrFormattedString);
  70. void __RPC_STUB IXTLRuntime_formatIndex_Stub(
  71.     IRpcStubBuffer *This,
  72.     IRpcChannelBuffer *_pRpcChannelBuffer,
  73.     PRPC_MESSAGE _pRpcMessage,
  74.     DWORD *_pdwStubPhase);
  75. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_formatNumber_Proxy( 
  76.     IXTLRuntime * This,
  77.     /* [in] */ double dblNumber,
  78.     /* [in] */ BSTR bstrFormat,
  79.     /* [retval][out] */ BSTR *pbstrFormattedString);
  80. void __RPC_STUB IXTLRuntime_formatNumber_Stub(
  81.     IRpcStubBuffer *This,
  82.     IRpcChannelBuffer *_pRpcChannelBuffer,
  83.     PRPC_MESSAGE _pRpcMessage,
  84.     DWORD *_pdwStubPhase);
  85. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_formatDate_Proxy( 
  86.     IXTLRuntime * This,
  87.     /* [in] */ VARIANT varDate,
  88.     /* [in] */ BSTR bstrFormat,
  89.     /* [optional][in] */ VARIANT varDestLocale,
  90.     /* [retval][out] */ BSTR *pbstrFormattedString);
  91. void __RPC_STUB IXTLRuntime_formatDate_Stub(
  92.     IRpcStubBuffer *This,
  93.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94.     PRPC_MESSAGE _pRpcMessage,
  95.     DWORD *_pdwStubPhase);
  96. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXTLRuntime_formatTime_Proxy( 
  97.     IXTLRuntime * This,
  98.     /* [in] */ VARIANT varTime,
  99.     /* [in] */ BSTR bstrFormat,
  100.     /* [optional][in] */ VARIANT varDestLocale,
  101.     /* [retval][out] */ BSTR *pbstrFormattedString);
  102. void __RPC_STUB IXTLRuntime_formatTime_Stub(
  103.     IRpcStubBuffer *This,
  104.     IRpcChannelBuffer *_pRpcChannelBuffer,
  105.     PRPC_MESSAGE _pRpcMessage,
  106.     DWORD *_pdwStubPhase);
  107. #endif  /* __IXTLRuntime_INTERFACE_DEFINED__ */
  108. #ifndef __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__
  109. #define __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__
  110. /* dispinterface XMLDOMDocumentEvents */
  111. /* [uuid][hidden] */ 
  112. EXTERN_C const IID DIID_XMLDOMDocumentEvents;
  113. #if defined(__cplusplus) && !defined(CINTERFACE)
  114.     MIDL_INTERFACE("3efaa427-272f-11d2-836f-0000f87a7782")
  115.     XMLDOMDocumentEvents : public IDispatch
  116.     {
  117.     };
  118.     
  119. #else  /* C style interface */
  120.     typedef struct XMLDOMDocumentEventsVtbl
  121.     {
  122.         BEGIN_INTERFACE
  123.         
  124.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  125.             XMLDOMDocumentEvents * This,
  126.             /* [in] */ REFIID riid,
  127.             /* [iid_is][out] */ void **ppvObject);
  128.         
  129.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  130.             XMLDOMDocumentEvents * This);
  131.         
  132.         ULONG ( STDMETHODCALLTYPE *Release )( 
  133.             XMLDOMDocumentEvents * This);
  134.         
  135.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  136.             XMLDOMDocumentEvents * This,
  137.             /* [out] */ UINT *pctinfo);
  138.         
  139.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  140.             XMLDOMDocumentEvents * This,
  141.             /* [in] */ UINT iTInfo,
  142.             /* [in] */ LCID lcid,
  143.             /* [out] */ ITypeInfo **ppTInfo);
  144.         
  145.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  146.             XMLDOMDocumentEvents * This,
  147.             /* [in] */ REFIID riid,
  148.             /* [size_is][in] */ LPOLESTR *rgszNames,
  149.             /* [in] */ UINT cNames,
  150.             /* [in] */ LCID lcid,
  151.             /* [size_is][out] */ DISPID *rgDispId);
  152.         
  153.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  154.             XMLDOMDocumentEvents * This,
  155.             /* [in] */ DISPID dispIdMember,
  156.             /* [in] */ REFIID riid,
  157.             /* [in] */ LCID lcid,
  158.             /* [in] */ WORD wFlags,
  159.             /* [out][in] */ DISPPARAMS *pDispParams,
  160.             /* [out] */ VARIANT *pVarResult,
  161.             /* [out] */ EXCEPINFO *pExcepInfo,
  162.             /* [out] */ UINT *puArgErr);
  163.         
  164.         END_INTERFACE
  165.     } XMLDOMDocumentEventsVtbl;
  166.     interface XMLDOMDocumentEvents
  167.     {
  168.         CONST_VTBL struct XMLDOMDocumentEventsVtbl *lpVtbl;
  169.     };
  170.     
  171. #ifdef COBJMACROS
  172. #define XMLDOMDocumentEvents_QueryInterface(This,riid,ppvObject)
  173.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  174. #define XMLDOMDocumentEvents_AddRef(This)
  175.     (This)->lpVtbl -> AddRef(This)
  176. #define XMLDOMDocumentEvents_Release(This)
  177.     (This)->lpVtbl -> Release(This)
  178. #define XMLDOMDocumentEvents_GetTypeInfoCount(This,pctinfo)
  179.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  180. #define XMLDOMDocumentEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  181.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  182. #define XMLDOMDocumentEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  183.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  184. #define XMLDOMDocumentEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  185.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  186. #endif /* COBJMACROS */
  187. #endif  /* C style interface */
  188. #endif  /* __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__ */
  189. EXTERN_C const CLSID CLSID_DOMDocument;
  190. #ifdef __cplusplus
  191. class DECLSPEC_UUID("2933BF90-7B36-11d2-B20E-00C04F983E60")
  192. DOMDocument;
  193. #endif
  194. EXTERN_C const CLSID CLSID_DOMFreeThreadedDocument;
  195. #ifdef __cplusplus
  196. class DECLSPEC_UUID("2933BF91-7B36-11d2-B20E-00C04F983E60")
  197. DOMFreeThreadedDocument;
  198. #endif
  199. #ifndef __IXMLHttpRequest_INTERFACE_DEFINED__
  200. #define __IXMLHttpRequest_INTERFACE_DEFINED__
  201. /* interface IXMLHttpRequest */
  202. /* [unique][helpstring][oleautomation][dual][uuid][object] */ 
  203. EXTERN_C const IID IID_IXMLHttpRequest;
  204. #if defined(__cplusplus) && !defined(CINTERFACE)
  205.     
  206.     MIDL_INTERFACE("ED8C108D-4349-11D2-91A4-00C04F7969E8")
  207.     IXMLHttpRequest : public IDispatch
  208.     {
  209.     public:
  210.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE open( 
  211.             /* [in] */ BSTR bstrMethod,
  212.             /* [in] */ BSTR bstrUrl,
  213.             /* [optional][in] */ VARIANT varAsync,
  214.             /* [optional][in] */ VARIANT bstrUser,
  215.             /* [optional][in] */ VARIANT bstrPassword) = 0;
  216.         
  217.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setRequestHeader( 
  218.             /* [in] */ BSTR bstrHeader,
  219.             /* [in] */ BSTR bstrValue) = 0;
  220.         
  221.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getResponseHeader( 
  222.             /* [in] */ BSTR bstrHeader,
  223.             /* [retval][out] */ BSTR *pbstrValue) = 0;
  224.         
  225.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getAllResponseHeaders( 
  226.             /* [retval][out] */ BSTR *pbstrHeaders) = 0;
  227.         
  228.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE send( 
  229.             /* [optional][in] */ VARIANT varBody) = 0;
  230.         
  231.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE abort( void) = 0;
  232.         
  233.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_status( 
  234.             /* [retval][out] */ long *plStatus) = 0;
  235.         
  236.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_statusText( 
  237.             /* [retval][out] */ BSTR *pbstrStatus) = 0;
  238.         
  239.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_responseXML( 
  240.             /* [retval][out] */ IDispatch **ppBody) = 0;
  241.         
  242.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_responseText( 
  243.             /* [retval][out] */ BSTR *pbstrBody) = 0;
  244.         
  245.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_responseBody( 
  246.             /* [retval][out] */ VARIANT *pvarBody) = 0;
  247.         
  248.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_responseStream( 
  249.             /* [retval][out] */ VARIANT *pvarBody) = 0;
  250.         
  251.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_readyState( 
  252.             /* [retval][out] */ long *plState) = 0;
  253.         
  254.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_onreadystatechange( 
  255.             /* [in] */ IDispatch *pReadyStateSink) = 0;
  256.         
  257.     };
  258.     
  259. #else  /* C style interface */
  260.     typedef struct IXMLHttpRequestVtbl
  261.     {
  262.         BEGIN_INTERFACE
  263.         
  264.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  265.             IXMLHttpRequest * This,
  266.             /* [in] */ REFIID riid,
  267.             /* [iid_is][out] */ void **ppvObject);
  268.         
  269.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  270.             IXMLHttpRequest * This);
  271.         
  272.         ULONG ( STDMETHODCALLTYPE *Release )( 
  273.             IXMLHttpRequest * This);
  274.         
  275.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  276.             IXMLHttpRequest * This,
  277.             /* [out] */ UINT *pctinfo);
  278.         
  279.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  280.             IXMLHttpRequest * This,
  281.             /* [in] */ UINT iTInfo,
  282.             /* [in] */ LCID lcid,
  283.             /* [out] */ ITypeInfo **ppTInfo);
  284.         
  285.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  286.             IXMLHttpRequest * This,
  287.             /* [in] */ REFIID riid,
  288.             /* [size_is][in] */ LPOLESTR *rgszNames,
  289.             /* [in] */ UINT cNames,
  290.             /* [in] */ LCID lcid,
  291.             /* [size_is][out] */ DISPID *rgDispId);
  292.         
  293.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  294.             IXMLHttpRequest * This,
  295.             /* [in] */ DISPID dispIdMember,
  296.             /* [in] */ REFIID riid,
  297.             /* [in] */ LCID lcid,
  298.             /* [in] */ WORD wFlags,
  299.             /* [out][in] */ DISPPARAMS *pDispParams,
  300.             /* [out] */ VARIANT *pVarResult,
  301.             /* [out] */ EXCEPINFO *pExcepInfo,
  302.             /* [out] */ UINT *puArgErr);
  303.         
  304.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *open )( 
  305.             IXMLHttpRequest * This,
  306.             /* [in] */ BSTR bstrMethod,
  307.             /* [in] */ BSTR bstrUrl,
  308.             /* [optional][in] */ VARIANT varAsync,
  309.             /* [optional][in] */ VARIANT bstrUser,
  310.             /* [optional][in] */ VARIANT bstrPassword);
  311.         
  312.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setRequestHeader )( 
  313.             IXMLHttpRequest * This,
  314.             /* [in] */ BSTR bstrHeader,
  315.             /* [in] */ BSTR bstrValue);
  316.         
  317.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getResponseHeader )( 
  318.             IXMLHttpRequest * This,
  319.             /* [in] */ BSTR bstrHeader,
  320.             /* [retval][out] */ BSTR *pbstrValue);
  321.         
  322.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getAllResponseHeaders )( 
  323.             IXMLHttpRequest * This,
  324.             /* [retval][out] */ BSTR *pbstrHeaders);
  325.         
  326.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *send )( 
  327.             IXMLHttpRequest * This,
  328.             /* [optional][in] */ VARIANT varBody);
  329.         
  330.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *abort )( 
  331.             IXMLHttpRequest * This);
  332.         
  333.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_status )( 
  334.             IXMLHttpRequest * This,
  335.             /* [retval][out] */ long *plStatus);
  336.         
  337.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_statusText )( 
  338.             IXMLHttpRequest * This,
  339.             /* [retval][out] */ BSTR *pbstrStatus);
  340.         
  341.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseXML )( 
  342.             IXMLHttpRequest * This,
  343.             /* [retval][out] */ IDispatch **ppBody);
  344.         
  345.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseText )( 
  346.             IXMLHttpRequest * This,
  347.             /* [retval][out] */ BSTR *pbstrBody);
  348.         
  349.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseBody )( 
  350.             IXMLHttpRequest * This,
  351.             /* [retval][out] */ VARIANT *pvarBody);
  352.         
  353.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseStream )( 
  354.             IXMLHttpRequest * This,
  355.             /* [retval][out] */ VARIANT *pvarBody);
  356.         
  357.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  358.             IXMLHttpRequest * This,
  359.             /* [retval][out] */ long *plState);
  360.         
  361.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onreadystatechange )( 
  362.             IXMLHttpRequest * This,
  363.             /* [in] */ IDispatch *pReadyStateSink);
  364.         
  365.         END_INTERFACE
  366.     } IXMLHttpRequestVtbl;
  367.     interface IXMLHttpRequest
  368.     {
  369.         CONST_VTBL struct IXMLHttpRequestVtbl *lpVtbl;
  370.     };
  371.     
  372. #ifdef COBJMACROS
  373. #define IXMLHttpRequest_QueryInterface(This,riid,ppvObject)
  374.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  375. #define IXMLHttpRequest_AddRef(This)
  376.     (This)->lpVtbl -> AddRef(This)
  377. #define IXMLHttpRequest_Release(This)
  378.     (This)->lpVtbl -> Release(This)
  379. #define IXMLHttpRequest_GetTypeInfoCount(This,pctinfo)
  380.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  381. #define IXMLHttpRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  382.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  383. #define IXMLHttpRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  384.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  385. #define IXMLHttpRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  386.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  387. #define IXMLHttpRequest_open(This,bstrMethod,bstrUrl,varAsync,bstrUser,bstrPassword)
  388.     (This)->lpVtbl -> open(This,bstrMethod,bstrUrl,varAsync,bstrUser,bstrPassword)
  389. #define IXMLHttpRequest_setRequestHeader(This,bstrHeader,bstrValue)
  390.     (This)->lpVtbl -> setRequestHeader(This,bstrHeader,bstrValue)
  391. #define IXMLHttpRequest_getResponseHeader(This,bstrHeader,pbstrValue)
  392.     (This)->lpVtbl -> getResponseHeader(This,bstrHeader,pbstrValue)
  393. #define IXMLHttpRequest_getAllResponseHeaders(This,pbstrHeaders)
  394.     (This)->lpVtbl -> getAllResponseHeaders(This,pbstrHeaders)
  395. #define IXMLHttpRequest_send(This,varBody)
  396.     (This)->lpVtbl -> send(This,varBody)
  397. #define IXMLHttpRequest_abort(This)
  398.     (This)->lpVtbl -> abort(This)
  399. #define IXMLHttpRequest_get_status(This,plStatus)
  400.     (This)->lpVtbl -> get_status(This,plStatus)
  401. #define IXMLHttpRequest_get_statusText(This,pbstrStatus)
  402.     (This)->lpVtbl -> get_statusText(This,pbstrStatus)
  403. #define IXMLHttpRequest_get_responseXML(This,ppBody)
  404.     (This)->lpVtbl -> get_responseXML(This,ppBody)
  405. #define IXMLHttpRequest_get_responseText(This,pbstrBody)
  406.     (This)->lpVtbl -> get_responseText(This,pbstrBody)
  407. #define IXMLHttpRequest_get_responseBody(This,pvarBody)
  408.     (This)->lpVtbl -> get_responseBody(This,pvarBody)
  409. #define IXMLHttpRequest_get_responseStream(This,pvarBody)
  410.     (This)->lpVtbl -> get_responseStream(This,pvarBody)
  411. #define IXMLHttpRequest_get_readyState(This,plState)
  412.     (This)->lpVtbl -> get_readyState(This,plState)
  413. #define IXMLHttpRequest_put_onreadystatechange(This,pReadyStateSink)
  414.     (This)->lpVtbl -> put_onreadystatechange(This,pReadyStateSink)
  415. #endif /* COBJMACROS */
  416. #endif  /* C style interface */
  417. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_open_Proxy( 
  418.     IXMLHttpRequest * This,
  419.     /* [in] */ BSTR bstrMethod,
  420.     /* [in] */ BSTR bstrUrl,
  421.     /* [optional][in] */ VARIANT varAsync,
  422.     /* [optional][in] */ VARIANT bstrUser,
  423.     /* [optional][in] */ VARIANT bstrPassword);
  424. void __RPC_STUB IXMLHttpRequest_open_Stub(
  425.     IRpcStubBuffer *This,
  426.     IRpcChannelBuffer *_pRpcChannelBuffer,
  427.     PRPC_MESSAGE _pRpcMessage,
  428.     DWORD *_pdwStubPhase);
  429. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_setRequestHeader_Proxy( 
  430.     IXMLHttpRequest * This,
  431.     /* [in] */ BSTR bstrHeader,
  432.     /* [in] */ BSTR bstrValue);
  433. void __RPC_STUB IXMLHttpRequest_setRequestHeader_Stub(
  434.     IRpcStubBuffer *This,
  435.     IRpcChannelBuffer *_pRpcChannelBuffer,
  436.     PRPC_MESSAGE _pRpcMessage,
  437.     DWORD *_pdwStubPhase);
  438. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_getResponseHeader_Proxy( 
  439.     IXMLHttpRequest * This,
  440.     /* [in] */ BSTR bstrHeader,
  441.     /* [retval][out] */ BSTR *pbstrValue);
  442. void __RPC_STUB IXMLHttpRequest_getResponseHeader_Stub(
  443.     IRpcStubBuffer *This,
  444.     IRpcChannelBuffer *_pRpcChannelBuffer,
  445.     PRPC_MESSAGE _pRpcMessage,
  446.     DWORD *_pdwStubPhase);
  447. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_getAllResponseHeaders_Proxy( 
  448.     IXMLHttpRequest * This,
  449.     /* [retval][out] */ BSTR *pbstrHeaders);
  450. void __RPC_STUB IXMLHttpRequest_getAllResponseHeaders_Stub(
  451.     IRpcStubBuffer *This,
  452.     IRpcChannelBuffer *_pRpcChannelBuffer,
  453.     PRPC_MESSAGE _pRpcMessage,
  454.     DWORD *_pdwStubPhase);
  455. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_send_Proxy( 
  456.     IXMLHttpRequest * This,
  457.     /* [optional][in] */ VARIANT varBody);
  458. void __RPC_STUB IXMLHttpRequest_send_Stub(
  459.     IRpcStubBuffer *This,
  460.     IRpcChannelBuffer *_pRpcChannelBuffer,
  461.     PRPC_MESSAGE _pRpcMessage,
  462.     DWORD *_pdwStubPhase);
  463. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_abort_Proxy( 
  464.     IXMLHttpRequest * This);
  465. void __RPC_STUB IXMLHttpRequest_abort_Stub(
  466.     IRpcStubBuffer *This,
  467.     IRpcChannelBuffer *_pRpcChannelBuffer,
  468.     PRPC_MESSAGE _pRpcMessage,
  469.     DWORD *_pdwStubPhase);
  470. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_get_status_Proxy( 
  471.     IXMLHttpRequest * This,
  472.     /* [retval][out] */ long *plStatus);
  473. void __RPC_STUB IXMLHttpRequest_get_status_Stub(
  474.     IRpcStubBuffer *This,
  475.     IRpcChannelBuffer *_pRpcChannelBuffer,
  476.     PRPC_MESSAGE _pRpcMessage,
  477.     DWORD *_pdwStubPhase);
  478. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_get_statusText_Proxy( 
  479.     IXMLHttpRequest * This,
  480.     /* [retval][out] */ BSTR *pbstrStatus);
  481. void __RPC_STUB IXMLHttpRequest_get_statusText_Stub(
  482.     IRpcStubBuffer *This,
  483.     IRpcChannelBuffer *_pRpcChannelBuffer,
  484.     PRPC_MESSAGE _pRpcMessage,
  485.     DWORD *_pdwStubPhase);
  486. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_get_responseXML_Proxy( 
  487.     IXMLHttpRequest * This,
  488.     /* [retval][out] */ IDispatch **ppBody);
  489. void __RPC_STUB IXMLHttpRequest_get_responseXML_Stub(
  490.     IRpcStubBuffer *This,
  491.     IRpcChannelBuffer *_pRpcChannelBuffer,
  492.     PRPC_MESSAGE _pRpcMessage,
  493.     DWORD *_pdwStubPhase);
  494. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_get_responseText_Proxy( 
  495.     IXMLHttpRequest * This,
  496.     /* [retval][out] */ BSTR *pbstrBody);
  497. void __RPC_STUB IXMLHttpRequest_get_responseText_Stub(
  498.     IRpcStubBuffer *This,
  499.     IRpcChannelBuffer *_pRpcChannelBuffer,
  500.     PRPC_MESSAGE _pRpcMessage,
  501.     DWORD *_pdwStubPhase);
  502. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_get_responseBody_Proxy( 
  503.     IXMLHttpRequest * This,
  504.     /* [retval][out] */ VARIANT *pvarBody);
  505. void __RPC_STUB IXMLHttpRequest_get_responseBody_Stub(
  506.     IRpcStubBuffer *This,
  507.     IRpcChannelBuffer *_pRpcChannelBuffer,
  508.     PRPC_MESSAGE _pRpcMessage,
  509.     DWORD *_pdwStubPhase);
  510. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_get_responseStream_Proxy( 
  511.     IXMLHttpRequest * This,
  512.     /* [retval][out] */ VARIANT *pvarBody);
  513. void __RPC_STUB IXMLHttpRequest_get_responseStream_Stub(
  514.     IRpcStubBuffer *This,
  515.     IRpcChannelBuffer *_pRpcChannelBuffer,
  516.     PRPC_MESSAGE _pRpcMessage,
  517.     DWORD *_pdwStubPhase);
  518. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_get_readyState_Proxy( 
  519.     IXMLHttpRequest * This,
  520.     /* [retval][out] */ long *plState);
  521. void __RPC_STUB IXMLHttpRequest_get_readyState_Stub(
  522.     IRpcStubBuffer *This,
  523.     IRpcChannelBuffer *_pRpcChannelBuffer,
  524.     PRPC_MESSAGE _pRpcMessage,
  525.     DWORD *_pdwStubPhase);
  526. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLHttpRequest_put_onreadystatechange_Proxy( 
  527.     IXMLHttpRequest * This,
  528.     /* [in] */ IDispatch *pReadyStateSink);
  529. void __RPC_STUB IXMLHttpRequest_put_onreadystatechange_Stub(
  530.     IRpcStubBuffer *This,
  531.     IRpcChannelBuffer *_pRpcChannelBuffer,
  532.     PRPC_MESSAGE _pRpcMessage,
  533.     DWORD *_pdwStubPhase);
  534. #endif  /* __IXMLHttpRequest_INTERFACE_DEFINED__ */
  535. EXTERN_C const CLSID CLSID_XMLHTTPRequest;
  536. #ifdef __cplusplus
  537. class DECLSPEC_UUID("ED8C108E-4349-11D2-91A4-00C04F7969E8")
  538. XMLHTTPRequest;
  539. #endif
  540. #ifndef __IXMLDSOControl_INTERFACE_DEFINED__
  541. #define __IXMLDSOControl_INTERFACE_DEFINED__
  542. /* interface IXMLDSOControl */
  543. /* [unique][helpstring][hidden][nonextensible][oleautomation][dual][uuid][object][local] */ 
  544. EXTERN_C const IID IID_IXMLDSOControl;
  545. #if defined(__cplusplus) && !defined(CINTERFACE)
  546.     
  547.     MIDL_INTERFACE("310afa62-0575-11d2-9ca9-0060b0ec3d39")
  548.     IXMLDSOControl : public IDispatch
  549.     {
  550.     public:
  551.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_XMLDocument( 
  552.             /* [retval][out] */ IXMLDOMDocument **ppDoc) = 0;
  553.         
  554.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_XMLDocument( 
  555.             /* [in] */ IXMLDOMDocument *ppDoc) = 0;
  556.         
  557.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_JavaDSOCompatible( 
  558.             /* [retval][out] */ BOOL *fJavaDSOCompatible) = 0;
  559.         
  560.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_JavaDSOCompatible( 
  561.             /* [in] */ BOOL fJavaDSOCompatible) = 0;
  562.         
  563.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_readyState( 
  564.             /* [retval][out] */ long *state) = 0;
  565.         
  566.     };
  567.     
  568. #else  /* C style interface */
  569.     typedef struct IXMLDSOControlVtbl
  570.     {
  571.         BEGIN_INTERFACE
  572.         
  573.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  574.             IXMLDSOControl * This,
  575.             /* [in] */ REFIID riid,
  576.             /* [iid_is][out] */ void **ppvObject);
  577.         
  578.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  579.             IXMLDSOControl * This);
  580.         
  581.         ULONG ( STDMETHODCALLTYPE *Release )( 
  582.             IXMLDSOControl * This);
  583.         
  584.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  585.             IXMLDSOControl * This,
  586.             /* [out] */ UINT *pctinfo);
  587.         
  588.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  589.             IXMLDSOControl * This,
  590.             /* [in] */ UINT iTInfo,
  591.             /* [in] */ LCID lcid,
  592.             /* [out] */ ITypeInfo **ppTInfo);
  593.         
  594.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  595.             IXMLDSOControl * This,
  596.             /* [in] */ REFIID riid,
  597.             /* [size_is][in] */ LPOLESTR *rgszNames,
  598.             /* [in] */ UINT cNames,
  599.             /* [in] */ LCID lcid,
  600.             /* [size_is][out] */ DISPID *rgDispId);
  601.         
  602.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  603.             IXMLDSOControl * This,
  604.             /* [in] */ DISPID dispIdMember,
  605.             /* [in] */ REFIID riid,
  606.             /* [in] */ LCID lcid,
  607.             /* [in] */ WORD wFlags,
  608.             /* [out][in] */ DISPPARAMS *pDispParams,
  609.             /* [out] */ VARIANT *pVarResult,
  610.             /* [out] */ EXCEPINFO *pExcepInfo,
  611.             /* [out] */ UINT *puArgErr);
  612.         
  613.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XMLDocument )( 
  614.             IXMLDSOControl * This,
  615.             /* [retval][out] */ IXMLDOMDocument **ppDoc);
  616.         
  617.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XMLDocument )( 
  618.             IXMLDSOControl * This,
  619.             /* [in] */ IXMLDOMDocument *ppDoc);
  620.         
  621.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_JavaDSOCompatible )( 
  622.             IXMLDSOControl * This,
  623.             /* [retval][out] */ BOOL *fJavaDSOCompatible);
  624.         
  625.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_JavaDSOCompatible )( 
  626.             IXMLDSOControl * This,
  627.             /* [in] */ BOOL fJavaDSOCompatible);
  628.         
  629.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  630.             IXMLDSOControl * This,
  631.             /* [retval][out] */ long *state);
  632.         
  633.         END_INTERFACE
  634.     } IXMLDSOControlVtbl;
  635.     interface IXMLDSOControl
  636.     {
  637.         CONST_VTBL struct IXMLDSOControlVtbl *lpVtbl;
  638.     };
  639.     
  640. #ifdef COBJMACROS
  641. #define IXMLDSOControl_QueryInterface(This,riid,ppvObject)
  642.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  643. #define IXMLDSOControl_AddRef(This)
  644.     (This)->lpVtbl -> AddRef(This)
  645. #define IXMLDSOControl_Release(This)
  646.     (This)->lpVtbl -> Release(This)
  647. #define IXMLDSOControl_GetTypeInfoCount(This,pctinfo)
  648.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  649. #define IXMLDSOControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  650.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  651. #define IXMLDSOControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  652.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  653. #define IXMLDSOControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  654.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  655. #define IXMLDSOControl_get_XMLDocument(This,ppDoc)
  656.     (This)->lpVtbl -> get_XMLDocument(This,ppDoc)
  657. #define IXMLDSOControl_put_XMLDocument(This,ppDoc)
  658.     (This)->lpVtbl -> put_XMLDocument(This,ppDoc)
  659. #define IXMLDSOControl_get_JavaDSOCompatible(This,fJavaDSOCompatible)
  660.     (This)->lpVtbl -> get_JavaDSOCompatible(This,fJavaDSOCompatible)
  661. #define IXMLDSOControl_put_JavaDSOCompatible(This,fJavaDSOCompatible)
  662.     (This)->lpVtbl -> put_JavaDSOCompatible(This,fJavaDSOCompatible)
  663. #define IXMLDSOControl_get_readyState(This,state)
  664.     (This)->lpVtbl -> get_readyState(This,state)
  665. #endif /* COBJMACROS */
  666. #endif  /* C style interface */
  667. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDSOControl_get_XMLDocument_Proxy( 
  668.     IXMLDSOControl * This,
  669.     /* [retval][out] */ IXMLDOMDocument **ppDoc);
  670. void __RPC_STUB IXMLDSOControl_get_XMLDocument_Stub(
  671.     IRpcStubBuffer *This,
  672.     IRpcChannelBuffer *_pRpcChannelBuffer,
  673.     PRPC_MESSAGE _pRpcMessage,
  674.     DWORD *_pdwStubPhase);
  675. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDSOControl_put_XMLDocument_Proxy( 
  676.     IXMLDSOControl * This,
  677.     /* [in] */ IXMLDOMDocument *ppDoc);
  678. void __RPC_STUB IXMLDSOControl_put_XMLDocument_Stub(
  679.     IRpcStubBuffer *This,
  680.     IRpcChannelBuffer *_pRpcChannelBuffer,
  681.     PRPC_MESSAGE _pRpcMessage,
  682.     DWORD *_pdwStubPhase);
  683. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDSOControl_get_JavaDSOCompatible_Proxy( 
  684.     IXMLDSOControl * This,
  685.     /* [retval][out] */ BOOL *fJavaDSOCompatible);
  686. void __RPC_STUB IXMLDSOControl_get_JavaDSOCompatible_Stub(
  687.     IRpcStubBuffer *This,
  688.     IRpcChannelBuffer *_pRpcChannelBuffer,
  689.     PRPC_MESSAGE _pRpcMessage,
  690.     DWORD *_pdwStubPhase);
  691. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDSOControl_put_JavaDSOCompatible_Proxy( 
  692.     IXMLDSOControl * This,
  693.     /* [in] */ BOOL fJavaDSOCompatible);
  694. void __RPC_STUB IXMLDSOControl_put_JavaDSOCompatible_Stub(
  695.     IRpcStubBuffer *This,
  696.     IRpcChannelBuffer *_pRpcChannelBuffer,
  697.     PRPC_MESSAGE _pRpcMessage,
  698.     DWORD *_pdwStubPhase);
  699. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDSOControl_get_readyState_Proxy( 
  700.     IXMLDSOControl * This,
  701.     /* [retval][out] */ long *state);
  702. void __RPC_STUB IXMLDSOControl_get_readyState_Stub(
  703.     IRpcStubBuffer *This,
  704.     IRpcChannelBuffer *_pRpcChannelBuffer,
  705.     PRPC_MESSAGE _pRpcMessage,
  706.     DWORD *_pdwStubPhase);
  707. #endif  /* __IXMLDSOControl_INTERFACE_DEFINED__ */
  708. EXTERN_C const CLSID CLSID_XMLDSOControl;
  709. #ifdef __cplusplus
  710. class DECLSPEC_UUID("550dda30-0541-11d2-9ca9-0060b0ec3d39")
  711. XMLDSOControl;
  712. #endif
  713. #ifndef __IXMLElementCollection_INTERFACE_DEFINED__
  714. #define __IXMLElementCollection_INTERFACE_DEFINED__
  715. /* interface IXMLElementCollection */
  716. /* [helpstring][hidden][oleautomation][dual][uuid][object][local] */ 
  717. EXTERN_C const IID IID_IXMLElementCollection;
  718. #if defined(__cplusplus) && !defined(CINTERFACE)
  719.     
  720.     MIDL_INTERFACE("65725580-9B5D-11d0-9BFE-00C04FC99C8E")
  721.     IXMLElementCollection : public IDispatch
  722.     {
  723.     public:
  724.         virtual /* [id][hidden][restricted][propput] */ HRESULT STDMETHODCALLTYPE put_length( 
  725.             /* [in] */ long v) = 0;
  726.         
  727.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_length( 
  728.             /* [out][retval] */ long *p) = 0;
  729.         
  730.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get__newEnum( 
  731.             /* [out][retval] */ IUnknown **ppUnk) = 0;
  732.         
  733.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE item( 
  734.             /* [in][optional] */ VARIANT var1,
  735.             /* [in][optional] */ VARIANT var2,
  736.             /* [out][retval] */ IDispatch **ppDisp) = 0;
  737.         
  738.     };
  739.     
  740. #else  /* C style interface */
  741.     typedef struct IXMLElementCollectionVtbl
  742.     {
  743.         BEGIN_INTERFACE
  744.         
  745.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  746.             IXMLElementCollection * This,
  747.             /* [in] */ REFIID riid,
  748.             /* [iid_is][out] */ void **ppvObject);
  749.         
  750.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  751.             IXMLElementCollection * This);
  752.         
  753.         ULONG ( STDMETHODCALLTYPE *Release )( 
  754.             IXMLElementCollection * This);
  755.         
  756.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  757.             IXMLElementCollection * This,
  758.             /* [out] */ UINT *pctinfo);
  759.         
  760.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  761.             IXMLElementCollection * This,
  762.             /* [in] */ UINT iTInfo,
  763.             /* [in] */ LCID lcid,
  764.             /* [out] */ ITypeInfo **ppTInfo);
  765.         
  766.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  767.             IXMLElementCollection * This,
  768.             /* [in] */ REFIID riid,
  769.             /* [size_is][in] */ LPOLESTR *rgszNames,
  770.             /* [in] */ UINT cNames,
  771.             /* [in] */ LCID lcid,
  772.             /* [size_is][out] */ DISPID *rgDispId);
  773.         
  774.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  775.             IXMLElementCollection * This,
  776.             /* [in] */ DISPID dispIdMember,
  777.             /* [in] */ REFIID riid,
  778.             /* [in] */ LCID lcid,
  779.             /* [in] */ WORD wFlags,
  780.             /* [out][in] */ DISPPARAMS *pDispParams,
  781.             /* [out] */ VARIANT *pVarResult,
  782.             /* [out] */ EXCEPINFO *pExcepInfo,
  783.             /* [out] */ UINT *puArgErr);
  784.         
  785.         /* [id][hidden][restricted][propput] */ HRESULT ( STDMETHODCALLTYPE *put_length )( 
  786.             IXMLElementCollection * This,
  787.             /* [in] */ long v);
  788.         
  789.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_length )( 
  790.             IXMLElementCollection * This,
  791.             /* [out][retval] */ long *p);
  792.         
  793.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get__newEnum )( 
  794.             IXMLElementCollection * This,
  795.             /* [out][retval] */ IUnknown **ppUnk);
  796.         
  797.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *item )( 
  798.             IXMLElementCollection * This,
  799.             /* [in][optional] */ VARIANT var1,
  800.             /* [in][optional] */ VARIANT var2,
  801.             /* [out][retval] */ IDispatch **ppDisp);
  802.         
  803.         END_INTERFACE
  804.     } IXMLElementCollectionVtbl;
  805.     interface IXMLElementCollection
  806.     {
  807.         CONST_VTBL struct IXMLElementCollectionVtbl *lpVtbl;
  808.     };
  809.     
  810. #ifdef COBJMACROS
  811. #define IXMLElementCollection_QueryInterface(This,riid,ppvObject)
  812.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  813. #define IXMLElementCollection_AddRef(This)
  814.     (This)->lpVtbl -> AddRef(This)
  815. #define IXMLElementCollection_Release(This)
  816.     (This)->lpVtbl -> Release(This)
  817. #define IXMLElementCollection_GetTypeInfoCount(This,pctinfo)
  818.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  819. #define IXMLElementCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  820.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  821. #define IXMLElementCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  822.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  823. #define IXMLElementCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  824.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  825. #define IXMLElementCollection_put_length(This,v)
  826.     (This)->lpVtbl -> put_length(This,v)
  827. #define IXMLElementCollection_get_length(This,p)
  828.     (This)->lpVtbl -> get_length(This,p)
  829. #define IXMLElementCollection_get__newEnum(This,ppUnk)
  830.     (This)->lpVtbl -> get__newEnum(This,ppUnk)
  831. #define IXMLElementCollection_item(This,var1,var2,ppDisp)
  832.     (This)->lpVtbl -> item(This,var1,var2,ppDisp)
  833. #endif /* COBJMACROS */
  834. #endif  /* C style interface */
  835. /* [id][hidden][restricted][propput] */ HRESULT STDMETHODCALLTYPE IXMLElementCollection_put_length_Proxy( 
  836.     IXMLElementCollection * This,
  837.     /* [in] */ long v);
  838. void __RPC_STUB IXMLElementCollection_put_length_Stub(
  839.     IRpcStubBuffer *This,
  840.     IRpcChannelBuffer *_pRpcChannelBuffer,
  841.     PRPC_MESSAGE _pRpcMessage,
  842.     DWORD *_pdwStubPhase);
  843. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElementCollection_get_length_Proxy( 
  844.     IXMLElementCollection * This,
  845.     /* [out][retval] */ long *p);
  846. void __RPC_STUB IXMLElementCollection_get_length_Stub(
  847.     IRpcStubBuffer *This,
  848.     IRpcChannelBuffer *_pRpcChannelBuffer,
  849.     PRPC_MESSAGE _pRpcMessage,
  850.     DWORD *_pdwStubPhase);
  851. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLElementCollection_get__newEnum_Proxy( 
  852.     IXMLElementCollection * This,
  853.     /* [out][retval] */ IUnknown **ppUnk);
  854. void __RPC_STUB IXMLElementCollection_get__newEnum_Stub(
  855.     IRpcStubBuffer *This,
  856.     IRpcChannelBuffer *_pRpcChannelBuffer,
  857.     PRPC_MESSAGE _pRpcMessage,
  858.     DWORD *_pdwStubPhase);
  859. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElementCollection_item_Proxy( 
  860.     IXMLElementCollection * This,
  861.     /* [in][optional] */ VARIANT var1,
  862.     /* [in][optional] */ VARIANT var2,
  863.     /* [out][retval] */ IDispatch **ppDisp);
  864. void __RPC_STUB IXMLElementCollection_item_Stub(
  865.     IRpcStubBuffer *This,
  866.     IRpcChannelBuffer *_pRpcChannelBuffer,
  867.     PRPC_MESSAGE _pRpcMessage,
  868.     DWORD *_pdwStubPhase);
  869. #endif  /* __IXMLElementCollection_INTERFACE_DEFINED__ */
  870. #ifndef __IXMLDocument_INTERFACE_DEFINED__
  871. #define __IXMLDocument_INTERFACE_DEFINED__
  872. /* interface IXMLDocument */
  873. /* [helpstring][hidden][oleautomation][dual][uuid][object][local] */ 
  874. EXTERN_C const IID IID_IXMLDocument;
  875. #if defined(__cplusplus) && !defined(CINTERFACE)
  876.     
  877.     MIDL_INTERFACE("F52E2B61-18A1-11d1-B105-00805F49916B")
  878.     IXMLDocument : public IDispatch
  879.     {
  880.     public:
  881.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_root( 
  882.             /* [out][retval] */ IXMLElement **p) = 0;
  883.         
  884.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileSize( 
  885.             /* [out][retval] */ BSTR *p) = 0;
  886.         
  887.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileModifiedDate( 
  888.             /* [out][retval] */ BSTR *p) = 0;
  889.         
  890.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileUpdatedDate( 
  891.             /* [out][retval] */ BSTR *p) = 0;
  892.         
  893.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_URL( 
  894.             /* [out][retval] */ BSTR *p) = 0;
  895.         
  896.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_URL( 
  897.             /* [in] */ BSTR p) = 0;
  898.         
  899.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_mimeType( 
  900.             /* [out][retval] */ BSTR *p) = 0;
  901.         
  902.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_readyState( 
  903.             /* [out][retval] */ long *pl) = 0;
  904.         
  905.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_charset( 
  906.             /* [out][retval] */ BSTR *p) = 0;
  907.         
  908.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_charset( 
  909.             /* [in] */ BSTR p) = 0;
  910.         
  911.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_version( 
  912.             /* [out][retval] */ BSTR *p) = 0;
  913.         
  914.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_doctype( 
  915.             /* [out][retval] */ BSTR *p) = 0;
  916.         
  917.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_dtdURL( 
  918.             /* [out][retval] */ BSTR *p) = 0;
  919.         
  920.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE createElement( 
  921.             /* [in] */ VARIANT vType,
  922.             /* [in][optional] */ VARIANT var1,
  923.             /* [out][retval] */ IXMLElement **ppElem) = 0;
  924.         
  925.     };
  926.     
  927. #else  /* C style interface */
  928.     typedef struct IXMLDocumentVtbl
  929.     {
  930.         BEGIN_INTERFACE
  931.         
  932.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  933.             IXMLDocument * This,
  934.             /* [in] */ REFIID riid,
  935.             /* [iid_is][out] */ void **ppvObject);
  936.         
  937.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  938.             IXMLDocument * This);
  939.         
  940.         ULONG ( STDMETHODCALLTYPE *Release )( 
  941.             IXMLDocument * This);
  942.         
  943.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  944.             IXMLDocument * This,
  945.             /* [out] */ UINT *pctinfo);
  946.         
  947.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  948.             IXMLDocument * This,
  949.             /* [in] */ UINT iTInfo,
  950.             /* [in] */ LCID lcid,
  951.             /* [out] */ ITypeInfo **ppTInfo);
  952.         
  953.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  954.             IXMLDocument * This,
  955.             /* [in] */ REFIID riid,
  956.             /* [size_is][in] */ LPOLESTR *rgszNames,
  957.             /* [in] */ UINT cNames,
  958.             /* [in] */ LCID lcid,
  959.             /* [size_is][out] */ DISPID *rgDispId);
  960.         
  961.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  962.             IXMLDocument * This,
  963.             /* [in] */ DISPID dispIdMember,
  964.             /* [in] */ REFIID riid,
  965.             /* [in] */ LCID lcid,
  966.             /* [in] */ WORD wFlags,
  967.             /* [out][in] */ DISPPARAMS *pDispParams,
  968.             /* [out] */ VARIANT *pVarResult,
  969.             /* [out] */ EXCEPINFO *pExcepInfo,
  970.             /* [out] */ UINT *puArgErr);
  971.         
  972.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_root )( 
  973.             IXMLDocument * This,
  974.             /* [out][retval] */ IXMLElement **p);
  975.         
  976.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileSize )( 
  977.             IXMLDocument * This,
  978.             /* [out][retval] */ BSTR *p);
  979.         
  980.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileModifiedDate )( 
  981.             IXMLDocument * This,
  982.             /* [out][retval] */ BSTR *p);
  983.         
  984.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileUpdatedDate )( 
  985.             IXMLDocument * This,
  986.             /* [out][retval] */ BSTR *p);
  987.         
  988.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_URL )( 
  989.             IXMLDocument * This,
  990.             /* [out][retval] */ BSTR *p);
  991.         
  992.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_URL )( 
  993.             IXMLDocument * This,
  994.             /* [in] */ BSTR p);
  995.         
  996.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_mimeType )( 
  997.             IXMLDocument * This,
  998.             /* [out][retval] */ BSTR *p);
  999.         
  1000.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  1001.             IXMLDocument * This,
  1002.             /* [out][retval] */ long *pl);
  1003.         
  1004.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_charset )( 
  1005.             IXMLDocument * This,
  1006.             /* [out][retval] */ BSTR *p);
  1007.         
  1008.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_charset )( 
  1009.             IXMLDocument * This,
  1010.             /* [in] */ BSTR p);
  1011.         
  1012.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_version )( 
  1013.             IXMLDocument * This,
  1014.             /* [out][retval] */ BSTR *p);
  1015.         
  1016.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_doctype )( 
  1017.             IXMLDocument * This,
  1018.             /* [out][retval] */ BSTR *p);
  1019.         
  1020.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_dtdURL )( 
  1021.             IXMLDocument * This,
  1022.             /* [out][retval] */ BSTR *p);
  1023.         
  1024.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *createElement )( 
  1025.             IXMLDocument * This,
  1026.             /* [in] */ VARIANT vType,
  1027.             /* [in][optional] */ VARIANT var1,
  1028.             /* [out][retval] */ IXMLElement **ppElem);
  1029.         
  1030.         END_INTERFACE
  1031.     } IXMLDocumentVtbl;
  1032.     interface IXMLDocument
  1033.     {
  1034.         CONST_VTBL struct IXMLDocumentVtbl *lpVtbl;
  1035.     };
  1036.     
  1037. #ifdef COBJMACROS
  1038. #define IXMLDocument_QueryInterface(This,riid,ppvObject)
  1039.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1040. #define IXMLDocument_AddRef(This)
  1041.     (This)->lpVtbl -> AddRef(This)
  1042. #define IXMLDocument_Release(This)
  1043.     (This)->lpVtbl -> Release(This)
  1044. #define IXMLDocument_GetTypeInfoCount(This,pctinfo)
  1045.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1046. #define IXMLDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1047.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1048. #define IXMLDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1049.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1050. #define IXMLDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1051.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1052. #define IXMLDocument_get_root(This,p)
  1053.     (This)->lpVtbl -> get_root(This,p)
  1054. #define IXMLDocument_get_fileSize(This,p)
  1055.     (This)->lpVtbl -> get_fileSize(This,p)
  1056. #define IXMLDocument_get_fileModifiedDate(This,p)
  1057.     (This)->lpVtbl -> get_fileModifiedDate(This,p)
  1058. #define IXMLDocument_get_fileUpdatedDate(This,p)
  1059.     (This)->lpVtbl -> get_fileUpdatedDate(This,p)
  1060. #define IXMLDocument_get_URL(This,p)
  1061.     (This)->lpVtbl -> get_URL(This,p)
  1062. #define IXMLDocument_put_URL(This,p)
  1063.     (This)->lpVtbl -> put_URL(This,p)
  1064. #define IXMLDocument_get_mimeType(This,p)
  1065.     (This)->lpVtbl -> get_mimeType(This,p)
  1066. #define IXMLDocument_get_readyState(This,pl)
  1067.     (This)->lpVtbl -> get_readyState(This,pl)
  1068. #define IXMLDocument_get_charset(This,p)
  1069.     (This)->lpVtbl -> get_charset(This,p)
  1070. #define IXMLDocument_put_charset(This,p)
  1071.     (This)->lpVtbl -> put_charset(This,p)
  1072. #define IXMLDocument_get_version(This,p)
  1073.     (This)->lpVtbl -> get_version(This,p)
  1074. #define IXMLDocument_get_doctype(This,p)
  1075.     (This)->lpVtbl -> get_doctype(This,p)
  1076. #define IXMLDocument_get_dtdURL(This,p)
  1077.     (This)->lpVtbl -> get_dtdURL(This,p)
  1078. #define IXMLDocument_createElement(This,vType,var1,ppElem)
  1079.     (This)->lpVtbl -> createElement(This,vType,var1,ppElem)
  1080. #endif /* COBJMACROS */
  1081. #endif  /* C style interface */
  1082. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_root_Proxy( 
  1083.     IXMLDocument * This,
  1084.     /* [out][retval] */ IXMLElement **p);
  1085. void __RPC_STUB IXMLDocument_get_root_Stub(
  1086.     IRpcStubBuffer *This,
  1087.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1088.     PRPC_MESSAGE _pRpcMessage,
  1089.     DWORD *_pdwStubPhase);
  1090. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_fileSize_Proxy( 
  1091.     IXMLDocument * This,
  1092.     /* [out][retval] */ BSTR *p);
  1093. void __RPC_STUB IXMLDocument_get_fileSize_Stub(
  1094.     IRpcStubBuffer *This,
  1095.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1096.     PRPC_MESSAGE _pRpcMessage,
  1097.     DWORD *_pdwStubPhase);
  1098. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_fileModifiedDate_Proxy( 
  1099.     IXMLDocument * This,
  1100.     /* [out][retval] */ BSTR *p);
  1101. void __RPC_STUB IXMLDocument_get_fileModifiedDate_Stub(
  1102.     IRpcStubBuffer *This,
  1103.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1104.     PRPC_MESSAGE _pRpcMessage,
  1105.     DWORD *_pdwStubPhase);
  1106. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_fileUpdatedDate_Proxy( 
  1107.     IXMLDocument * This,
  1108.     /* [out][retval] */ BSTR *p);
  1109. void __RPC_STUB IXMLDocument_get_fileUpdatedDate_Stub(
  1110.     IRpcStubBuffer *This,
  1111.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1112.     PRPC_MESSAGE _pRpcMessage,
  1113.     DWORD *_pdwStubPhase);
  1114. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_URL_Proxy( 
  1115.     IXMLDocument * This,
  1116.     /* [out][retval] */ BSTR *p);
  1117. void __RPC_STUB IXMLDocument_get_URL_Stub(
  1118.     IRpcStubBuffer *This,
  1119.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1120.     PRPC_MESSAGE _pRpcMessage,
  1121.     DWORD *_pdwStubPhase);
  1122. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument_put_URL_Proxy( 
  1123.     IXMLDocument * This,
  1124.     /* [in] */ BSTR p);
  1125. void __RPC_STUB IXMLDocument_put_URL_Stub(
  1126.     IRpcStubBuffer *This,
  1127.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1128.     PRPC_MESSAGE _pRpcMessage,
  1129.     DWORD *_pdwStubPhase);
  1130. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_mimeType_Proxy( 
  1131.     IXMLDocument * This,
  1132.     /* [out][retval] */ BSTR *p);
  1133. void __RPC_STUB IXMLDocument_get_mimeType_Stub(
  1134.     IRpcStubBuffer *This,
  1135.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1136.     PRPC_MESSAGE _pRpcMessage,
  1137.     DWORD *_pdwStubPhase);
  1138. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_readyState_Proxy( 
  1139.     IXMLDocument * This,
  1140.     /* [out][retval] */ long *pl);
  1141. void __RPC_STUB IXMLDocument_get_readyState_Stub(
  1142.     IRpcStubBuffer *This,
  1143.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1144.     PRPC_MESSAGE _pRpcMessage,
  1145.     DWORD *_pdwStubPhase);
  1146. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_charset_Proxy( 
  1147.     IXMLDocument * This,
  1148.     /* [out][retval] */ BSTR *p);
  1149. void __RPC_STUB IXMLDocument_get_charset_Stub(
  1150.     IRpcStubBuffer *This,
  1151.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1152.     PRPC_MESSAGE _pRpcMessage,
  1153.     DWORD *_pdwStubPhase);
  1154. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument_put_charset_Proxy( 
  1155.     IXMLDocument * This,
  1156.     /* [in] */ BSTR p);
  1157. void __RPC_STUB IXMLDocument_put_charset_Stub(
  1158.     IRpcStubBuffer *This,
  1159.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1160.     PRPC_MESSAGE _pRpcMessage,
  1161.     DWORD *_pdwStubPhase);
  1162. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_version_Proxy( 
  1163.     IXMLDocument * This,
  1164.     /* [out][retval] */ BSTR *p);
  1165. void __RPC_STUB IXMLDocument_get_version_Stub(
  1166.     IRpcStubBuffer *This,
  1167.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1168.     PRPC_MESSAGE _pRpcMessage,
  1169.     DWORD *_pdwStubPhase);
  1170. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_doctype_Proxy( 
  1171.     IXMLDocument * This,
  1172.     /* [out][retval] */ BSTR *p);
  1173. void __RPC_STUB IXMLDocument_get_doctype_Stub(
  1174.     IRpcStubBuffer *This,
  1175.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1176.     PRPC_MESSAGE _pRpcMessage,
  1177.     DWORD *_pdwStubPhase);
  1178. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_dtdURL_Proxy( 
  1179.     IXMLDocument * This,
  1180.     /* [out][retval] */ BSTR *p);
  1181. void __RPC_STUB IXMLDocument_get_dtdURL_Stub(
  1182.     IRpcStubBuffer *This,
  1183.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1184.     PRPC_MESSAGE _pRpcMessage,
  1185.     DWORD *_pdwStubPhase);
  1186. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDocument_createElement_Proxy( 
  1187.     IXMLDocument * This,
  1188.     /* [in] */ VARIANT vType,
  1189.     /* [in][optional] */ VARIANT var1,
  1190.     /* [out][retval] */ IXMLElement **ppElem);
  1191. void __RPC_STUB IXMLDocument_createElement_Stub(
  1192.     IRpcStubBuffer *This,
  1193.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1194.     PRPC_MESSAGE _pRpcMessage,
  1195.     DWORD *_pdwStubPhase);
  1196. #endif  /* __IXMLDocument_INTERFACE_DEFINED__ */
  1197. #ifndef __IXMLDocument2_INTERFACE_DEFINED__
  1198. #define __IXMLDocument2_INTERFACE_DEFINED__
  1199. /* interface IXMLDocument2 */
  1200. /* [hidden][uuid][object][local] */ 
  1201. EXTERN_C const IID IID_IXMLDocument2;
  1202. #if defined(__cplusplus) && !defined(CINTERFACE)
  1203.     
  1204.     MIDL_INTERFACE("2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9")
  1205.     IXMLDocument2 : public IDispatch
  1206.     {
  1207.     public:
  1208.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_root( 
  1209.             /* [out][retval] */ IXMLElement2 **p) = 0;
  1210.         
  1211.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileSize( 
  1212.             /* [out][retval] */ BSTR *p) = 0;
  1213.         
  1214.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileModifiedDate( 
  1215.             /* [out][retval] */ BSTR *p) = 0;
  1216.         
  1217.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileUpdatedDate( 
  1218.             /* [out][retval] */ BSTR *p) = 0;
  1219.         
  1220.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_URL( 
  1221.             /* [out][retval] */ BSTR *p) = 0;
  1222.         
  1223.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_URL( 
  1224.             /* [in] */ BSTR p) = 0;
  1225.         
  1226.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_mimeType( 
  1227.             /* [out][retval] */ BSTR *p) = 0;
  1228.         
  1229.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_readyState( 
  1230.             /* [out][retval] */ long *pl) = 0;
  1231.         
  1232.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_charset( 
  1233.             /* [out][retval] */ BSTR *p) = 0;
  1234.         
  1235.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_charset( 
  1236.             /* [in] */ BSTR p) = 0;
  1237.         
  1238.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_version( 
  1239.             /* [out][retval] */ BSTR *p) = 0;
  1240.         
  1241.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_doctype( 
  1242.             /* [out][retval] */ BSTR *p) = 0;
  1243.         
  1244.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_dtdURL( 
  1245.             /* [out][retval] */ BSTR *p) = 0;
  1246.         
  1247.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE createElement( 
  1248.             /* [in] */ VARIANT vType,
  1249.             /* [in][optional] */ VARIANT var1,
  1250.             /* [out][retval] */ IXMLElement2 **ppElem) = 0;
  1251.         
  1252.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_async( 
  1253.             /* [out][retval] */ VARIANT_BOOL *pf) = 0;
  1254.         
  1255.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_async( 
  1256.             /* [in] */ VARIANT_BOOL f) = 0;
  1257.         
  1258.     };
  1259.     
  1260. #else  /* C style interface */
  1261.     typedef struct IXMLDocument2Vtbl
  1262.     {
  1263.         BEGIN_INTERFACE
  1264.         
  1265.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1266.             IXMLDocument2 * This,
  1267.             /* [in] */ REFIID riid,
  1268.             /* [iid_is][out] */ void **ppvObject);
  1269.         
  1270.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1271.             IXMLDocument2 * This);
  1272.         
  1273.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1274.             IXMLDocument2 * This);
  1275.         
  1276.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1277.             IXMLDocument2 * This,
  1278.             /* [out] */ UINT *pctinfo);
  1279.         
  1280.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1281.             IXMLDocument2 * This,
  1282.             /* [in] */ UINT iTInfo,
  1283.             /* [in] */ LCID lcid,
  1284.             /* [out] */ ITypeInfo **ppTInfo);
  1285.         
  1286.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1287.             IXMLDocument2 * This,
  1288.             /* [in] */ REFIID riid,
  1289.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1290.             /* [in] */ UINT cNames,
  1291.             /* [in] */ LCID lcid,
  1292.             /* [size_is][out] */ DISPID *rgDispId);
  1293.         
  1294.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1295.             IXMLDocument2 * This,
  1296.             /* [in] */ DISPID dispIdMember,
  1297.             /* [in] */ REFIID riid,
  1298.             /* [in] */ LCID lcid,
  1299.             /* [in] */ WORD wFlags,
  1300.             /* [out][in] */ DISPPARAMS *pDispParams,
  1301.             /* [out] */ VARIANT *pVarResult,
  1302.             /* [out] */ EXCEPINFO *pExcepInfo,
  1303.             /* [out] */ UINT *puArgErr);
  1304.         
  1305.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_root )( 
  1306.             IXMLDocument2 * This,
  1307.             /* [out][retval] */ IXMLElement2 **p);
  1308.         
  1309.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileSize )( 
  1310.             IXMLDocument2 * This,
  1311.             /* [out][retval] */ BSTR *p);
  1312.         
  1313.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileModifiedDate )( 
  1314.             IXMLDocument2 * This,
  1315.             /* [out][retval] */ BSTR *p);
  1316.         
  1317.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileUpdatedDate )( 
  1318.             IXMLDocument2 * This,
  1319.             /* [out][retval] */ BSTR *p);
  1320.         
  1321.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_URL )( 
  1322.             IXMLDocument2 * This,
  1323.             /* [out][retval] */ BSTR *p);
  1324.         
  1325.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_URL )( 
  1326.             IXMLDocument2 * This,
  1327.             /* [in] */ BSTR p);
  1328.         
  1329.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_mimeType )( 
  1330.             IXMLDocument2 * This,
  1331.             /* [out][retval] */ BSTR *p);
  1332.         
  1333.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  1334.             IXMLDocument2 * This,
  1335.             /* [out][retval] */ long *pl);
  1336.         
  1337.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_charset )( 
  1338.             IXMLDocument2 * This,
  1339.             /* [out][retval] */ BSTR *p);
  1340.         
  1341.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_charset )( 
  1342.             IXMLDocument2 * This,
  1343.             /* [in] */ BSTR p);
  1344.         
  1345.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_version )( 
  1346.             IXMLDocument2 * This,
  1347.             /* [out][retval] */ BSTR *p);
  1348.         
  1349.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_doctype )( 
  1350.             IXMLDocument2 * This,
  1351.             /* [out][retval] */ BSTR *p);
  1352.         
  1353.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_dtdURL )( 
  1354.             IXMLDocument2 * This,
  1355.             /* [out][retval] */ BSTR *p);
  1356.         
  1357.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *createElement )( 
  1358.             IXMLDocument2 * This,
  1359.             /* [in] */ VARIANT vType,
  1360.             /* [in][optional] */ VARIANT var1,
  1361.             /* [out][retval] */ IXMLElement2 **ppElem);
  1362.         
  1363.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_async )( 
  1364.             IXMLDocument2 * This,
  1365.             /* [out][retval] */ VARIANT_BOOL *pf);
  1366.         
  1367.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_async )( 
  1368.             IXMLDocument2 * This,
  1369.             /* [in] */ VARIANT_BOOL f);
  1370.         
  1371.         END_INTERFACE
  1372.     } IXMLDocument2Vtbl;
  1373.     interface IXMLDocument2
  1374.     {
  1375.         CONST_VTBL struct IXMLDocument2Vtbl *lpVtbl;
  1376.     };
  1377.     
  1378. #ifdef COBJMACROS
  1379. #define IXMLDocument2_QueryInterface(This,riid,ppvObject)
  1380.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1381. #define IXMLDocument2_AddRef(This)
  1382.     (This)->lpVtbl -> AddRef(This)
  1383. #define IXMLDocument2_Release(This)
  1384.     (This)->lpVtbl -> Release(This)
  1385. #define IXMLDocument2_GetTypeInfoCount(This,pctinfo)
  1386.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1387. #define IXMLDocument2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1388.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1389. #define IXMLDocument2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1390.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1391. #define IXMLDocument2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1392.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1393. #define IXMLDocument2_get_root(This,p)
  1394.     (This)->lpVtbl -> get_root(This,p)
  1395. #define IXMLDocument2_get_fileSize(This,p)
  1396.     (This)->lpVtbl -> get_fileSize(This,p)
  1397. #define IXMLDocument2_get_fileModifiedDate(This,p)
  1398.     (This)->lpVtbl -> get_fileModifiedDate(This,p)
  1399. #define IXMLDocument2_get_fileUpdatedDate(This,p)
  1400.     (This)->lpVtbl -> get_fileUpdatedDate(This,p)
  1401. #define IXMLDocument2_get_URL(This,p)
  1402.     (This)->lpVtbl -> get_URL(This,p)
  1403. #define IXMLDocument2_put_URL(This,p)
  1404.     (This)->lpVtbl -> put_URL(This,p)
  1405. #define IXMLDocument2_get_mimeType(This,p)
  1406.     (This)->lpVtbl -> get_mimeType(This,p)
  1407. #define IXMLDocument2_get_readyState(This,pl)
  1408.     (This)->lpVtbl -> get_readyState(This,pl)
  1409. #define IXMLDocument2_get_charset(This,p)
  1410.     (This)->lpVtbl -> get_charset(This,p)
  1411. #define IXMLDocument2_put_charset(This,p)
  1412.     (This)->lpVtbl -> put_charset(This,p)
  1413. #define IXMLDocument2_get_version(This,p)
  1414.     (This)->lpVtbl -> get_version(This,p)
  1415. #define IXMLDocument2_get_doctype(This,p)
  1416.     (This)->lpVtbl -> get_doctype(This,p)
  1417. #define IXMLDocument2_get_dtdURL(This,p)
  1418.     (This)->lpVtbl -> get_dtdURL(This,p)
  1419. #define IXMLDocument2_createElement(This,vType,var1,ppElem)
  1420.     (This)->lpVtbl -> createElement(This,vType,var1,ppElem)
  1421. #define IXMLDocument2_get_async(This,pf)
  1422.     (This)->lpVtbl -> get_async(This,pf)
  1423. #define IXMLDocument2_put_async(This,f)
  1424.     (This)->lpVtbl -> put_async(This,f)
  1425. #endif /* COBJMACROS */
  1426. #endif  /* C style interface */
  1427. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_root_Proxy( 
  1428.     IXMLDocument2 * This,
  1429.     /* [out][retval] */ IXMLElement2 **p);
  1430. void __RPC_STUB IXMLDocument2_get_root_Stub(
  1431.     IRpcStubBuffer *This,
  1432.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1433.     PRPC_MESSAGE _pRpcMessage,
  1434.     DWORD *_pdwStubPhase);
  1435. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_fileSize_Proxy( 
  1436.     IXMLDocument2 * This,
  1437.     /* [out][retval] */ BSTR *p);
  1438. void __RPC_STUB IXMLDocument2_get_fileSize_Stub(
  1439.     IRpcStubBuffer *This,
  1440.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1441.     PRPC_MESSAGE _pRpcMessage,
  1442.     DWORD *_pdwStubPhase);
  1443. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_fileModifiedDate_Proxy( 
  1444.     IXMLDocument2 * This,
  1445.     /* [out][retval] */ BSTR *p);
  1446. void __RPC_STUB IXMLDocument2_get_fileModifiedDate_Stub(
  1447.     IRpcStubBuffer *This,
  1448.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1449.     PRPC_MESSAGE _pRpcMessage,
  1450.     DWORD *_pdwStubPhase);
  1451. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_fileUpdatedDate_Proxy( 
  1452.     IXMLDocument2 * This,
  1453.     /* [out][retval] */ BSTR *p);
  1454. void __RPC_STUB IXMLDocument2_get_fileUpdatedDate_Stub(
  1455.     IRpcStubBuffer *This,
  1456.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1457.     PRPC_MESSAGE _pRpcMessage,
  1458.     DWORD *_pdwStubPhase);
  1459. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_URL_Proxy( 
  1460.     IXMLDocument2 * This,
  1461.     /* [out][retval] */ BSTR *p);
  1462. void __RPC_STUB IXMLDocument2_get_URL_Stub(
  1463.     IRpcStubBuffer *This,
  1464.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1465.     PRPC_MESSAGE _pRpcMessage,
  1466.     DWORD *_pdwStubPhase);
  1467. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_put_URL_Proxy( 
  1468.     IXMLDocument2 * This,
  1469.     /* [in] */ BSTR p);
  1470. void __RPC_STUB IXMLDocument2_put_URL_Stub(
  1471.     IRpcStubBuffer *This,
  1472.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1473.     PRPC_MESSAGE _pRpcMessage,
  1474.     DWORD *_pdwStubPhase);
  1475. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_mimeType_Proxy( 
  1476.     IXMLDocument2 * This,
  1477.     /* [out][retval] */ BSTR *p);
  1478. void __RPC_STUB IXMLDocument2_get_mimeType_Stub(
  1479.     IRpcStubBuffer *This,
  1480.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1481.     PRPC_MESSAGE _pRpcMessage,
  1482.     DWORD *_pdwStubPhase);
  1483. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_readyState_Proxy( 
  1484.     IXMLDocument2 * This,
  1485.     /* [out][retval] */ long *pl);
  1486. void __RPC_STUB IXMLDocument2_get_readyState_Stub(
  1487.     IRpcStubBuffer *This,
  1488.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1489.     PRPC_MESSAGE _pRpcMessage,
  1490.     DWORD *_pdwStubPhase);
  1491. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_charset_Proxy( 
  1492.     IXMLDocument2 * This,
  1493.     /* [out][retval] */ BSTR *p);
  1494. void __RPC_STUB IXMLDocument2_get_charset_Stub(
  1495.     IRpcStubBuffer *This,
  1496.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1497.     PRPC_MESSAGE _pRpcMessage,
  1498.     DWORD *_pdwStubPhase);
  1499. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_put_charset_Proxy( 
  1500.     IXMLDocument2 * This,
  1501.     /* [in] */ BSTR p);
  1502. void __RPC_STUB IXMLDocument2_put_charset_Stub(
  1503.     IRpcStubBuffer *This,
  1504.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1505.     PRPC_MESSAGE _pRpcMessage,
  1506.     DWORD *_pdwStubPhase);
  1507. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_version_Proxy( 
  1508.     IXMLDocument2 * This,
  1509.     /* [out][retval] */ BSTR *p);
  1510. void __RPC_STUB IXMLDocument2_get_version_Stub(
  1511.     IRpcStubBuffer *This,
  1512.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1513.     PRPC_MESSAGE _pRpcMessage,
  1514.     DWORD *_pdwStubPhase);
  1515. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_doctype_Proxy( 
  1516.     IXMLDocument2 * This,
  1517.     /* [out][retval] */ BSTR *p);
  1518. void __RPC_STUB IXMLDocument2_get_doctype_Stub(
  1519.     IRpcStubBuffer *This,
  1520.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1521.     PRPC_MESSAGE _pRpcMessage,
  1522.     DWORD *_pdwStubPhase);
  1523. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_dtdURL_Proxy( 
  1524.     IXMLDocument2 * This,
  1525.     /* [out][retval] */ BSTR *p);
  1526. void __RPC_STUB IXMLDocument2_get_dtdURL_Stub(
  1527.     IRpcStubBuffer *This,
  1528.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1529.     PRPC_MESSAGE _pRpcMessage,
  1530.     DWORD *_pdwStubPhase);
  1531. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_createElement_Proxy( 
  1532.     IXMLDocument2 * This,
  1533.     /* [in] */ VARIANT vType,
  1534.     /* [in][optional] */ VARIANT var1,
  1535.     /* [out][retval] */ IXMLElement2 **ppElem);
  1536. void __RPC_STUB IXMLDocument2_createElement_Stub(
  1537.     IRpcStubBuffer *This,
  1538.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1539.     PRPC_MESSAGE _pRpcMessage,
  1540.     DWORD *_pdwStubPhase);
  1541. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_async_Proxy( 
  1542.     IXMLDocument2 * This,
  1543.     /* [out][retval] */ VARIANT_BOOL *pf);
  1544. void __RPC_STUB IXMLDocument2_get_async_Stub(
  1545.     IRpcStubBuffer *This,
  1546.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1547.     PRPC_MESSAGE _pRpcMessage,
  1548.     DWORD *_pdwStubPhase);
  1549. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_put_async_Proxy( 
  1550.     IXMLDocument2 * This,
  1551.     /* [in] */ VARIANT_BOOL f);
  1552. void __RPC_STUB IXMLDocument2_put_async_Stub(
  1553.     IRpcStubBuffer *This,
  1554.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1555.     PRPC_MESSAGE _pRpcMessage,
  1556.     DWORD *_pdwStubPhase);
  1557. #endif  /* __IXMLDocument2_INTERFACE_DEFINED__ */
  1558. #ifndef __IXMLElement_INTERFACE_DEFINED__
  1559. #define __IXMLElement_INTERFACE_DEFINED__
  1560. /* interface IXMLElement */
  1561. /* [helpstring][hidden][oleautomation][dual][uuid][object][local] */ 
  1562. EXTERN_C const IID IID_IXMLElement;
  1563. #if defined(__cplusplus) && !defined(CINTERFACE)
  1564.     
  1565.     MIDL_INTERFACE("3F7F31AC-E15F-11d0-9C25-00C04FC99C8E")
  1566.     IXMLElement : public IDispatch
  1567.     {
  1568.     public:
  1569.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_tagName( 
  1570.             /* [out][retval] */ BSTR *p) = 0;
  1571.         
  1572.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_tagName( 
  1573.             /* [in] */ BSTR p) = 0;
  1574.         
  1575.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_parent( 
  1576.             /* [out][retval] */ IXMLElement **ppParent) = 0;
  1577.         
  1578.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setAttribute( 
  1579.             /* [in] */ BSTR strPropertyName,
  1580.             /* [in] */ VARIANT PropertyValue) = 0;
  1581.         
  1582.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getAttribute( 
  1583.             /* [in] */ BSTR strPropertyName,
  1584.             /* [out][retval] */ VARIANT *PropertyValue) = 0;
  1585.         
  1586.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeAttribute( 
  1587.             /* [in] */ BSTR strPropertyName) = 0;
  1588.         
  1589.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_children( 
  1590.             /* [out][retval] */ IXMLElementCollection **pp) = 0;
  1591.         
  1592.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_type( 
  1593.             /* [out][retval] */ long *plType) = 0;
  1594.         
  1595.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_text( 
  1596.             /* [out][retval] */ BSTR *p) = 0;
  1597.         
  1598.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_text( 
  1599.             /* [in] */ BSTR p) = 0;
  1600.         
  1601.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE addChild( 
  1602.             /* [in] */ IXMLElement *pChildElem,
  1603.             long lIndex,
  1604.             long lReserved) = 0;
  1605.         
  1606.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeChild( 
  1607.             /* [in] */ IXMLElement *pChildElem) = 0;
  1608.         
  1609.     };
  1610.     
  1611. #else  /* C style interface */
  1612.     typedef struct IXMLElementVtbl
  1613.     {
  1614.         BEGIN_INTERFACE
  1615.         
  1616.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1617.             IXMLElement * This,
  1618.             /* [in] */ REFIID riid,
  1619.             /* [iid_is][out] */ void **ppvObject);
  1620.         
  1621.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1622.             IXMLElement * This);
  1623.         
  1624.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1625.             IXMLElement * This);
  1626.         
  1627.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1628.             IXMLElement * This,
  1629.             /* [out] */ UINT *pctinfo);
  1630.         
  1631.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1632.             IXMLElement * This,
  1633.             /* [in] */ UINT iTInfo,
  1634.             /* [in] */ LCID lcid,
  1635.             /* [out] */ ITypeInfo **ppTInfo);
  1636.         
  1637.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1638.             IXMLElement * This,
  1639.             /* [in] */ REFIID riid,
  1640.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1641.             /* [in] */ UINT cNames,
  1642.             /* [in] */ LCID lcid,
  1643.             /* [size_is][out] */ DISPID *rgDispId);
  1644.         
  1645.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1646.             IXMLElement * This,
  1647.             /* [in] */ DISPID dispIdMember,
  1648.             /* [in] */ REFIID riid,
  1649.             /* [in] */ LCID lcid,
  1650.             /* [in] */ WORD wFlags,
  1651.             /* [out][in] */ DISPPARAMS *pDispParams,
  1652.             /* [out] */ VARIANT *pVarResult,
  1653.             /* [out] */ EXCEPINFO *pExcepInfo,
  1654.             /* [out] */ UINT *puArgErr);
  1655.         
  1656.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_tagName )( 
  1657.             IXMLElement * This,
  1658.             /* [out][retval] */ BSTR *p);
  1659.         
  1660.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_tagName )( 
  1661.             IXMLElement * This,
  1662.             /* [in] */ BSTR p);
  1663.         
  1664.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_parent )( 
  1665.             IXMLElement * This,
  1666.             /* [out][retval] */ IXMLElement **ppParent);
  1667.         
  1668.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setAttribute )( 
  1669.             IXMLElement * This,
  1670.             /* [in] */ BSTR strPropertyName,
  1671.             /* [in] */ VARIANT PropertyValue);
  1672.         
  1673.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getAttribute )( 
  1674.             IXMLElement * This,
  1675.             /* [in] */ BSTR strPropertyName,
  1676.             /* [out][retval] */ VARIANT *PropertyValue);
  1677.         
  1678.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeAttribute )( 
  1679.             IXMLElement * This,
  1680.             /* [in] */ BSTR strPropertyName);
  1681.         
  1682.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_children )( 
  1683.             IXMLElement * This,
  1684.             /* [out][retval] */ IXMLElementCollection **pp);
  1685.         
  1686.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_type )( 
  1687.             IXMLElement * This,
  1688.             /* [out][retval] */ long *plType);
  1689.         
  1690.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_text )( 
  1691.             IXMLElement * This,
  1692.             /* [out][retval] */ BSTR *p);
  1693.         
  1694.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_text )( 
  1695.             IXMLElement * This,
  1696.             /* [in] */ BSTR p);
  1697.         
  1698.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *addChild )( 
  1699.             IXMLElement * This,
  1700.             /* [in] */ IXMLElement *pChildElem,
  1701.             long lIndex,
  1702.             long lReserved);
  1703.         
  1704.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeChild )( 
  1705.             IXMLElement * This,
  1706.             /* [in] */ IXMLElement *pChildElem);
  1707.         
  1708.         END_INTERFACE
  1709.     } IXMLElementVtbl;
  1710.     interface IXMLElement
  1711.     {
  1712.         CONST_VTBL struct IXMLElementVtbl *lpVtbl;
  1713.     };
  1714.     
  1715. #ifdef COBJMACROS
  1716. #define IXMLElement_QueryInterface(This,riid,ppvObject)
  1717.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1718. #define IXMLElement_AddRef(This)
  1719.     (This)->lpVtbl -> AddRef(This)
  1720. #define IXMLElement_Release(This)
  1721.     (This)->lpVtbl -> Release(This)
  1722. #define IXMLElement_GetTypeInfoCount(This,pctinfo)
  1723.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1724. #define IXMLElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1725.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1726. #define IXMLElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1727.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1728. #define IXMLElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1729.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1730. #define IXMLElement_get_tagName(This,p)
  1731.     (This)->lpVtbl -> get_tagName(This,p)
  1732. #define IXMLElement_put_tagName(This,p)
  1733.     (This)->lpVtbl -> put_tagName(This,p)
  1734. #define IXMLElement_get_parent(This,ppParent)
  1735.     (This)->lpVtbl -> get_parent(This,ppParent)
  1736. #define IXMLElement_setAttribute(This,strPropertyName,PropertyValue)
  1737.     (This)->lpVtbl -> setAttribute(This,strPropertyName,PropertyValue)
  1738. #define IXMLElement_getAttribute(This,strPropertyName,PropertyValue)
  1739.     (This)->lpVtbl -> getAttribute(This,strPropertyName,PropertyValue)
  1740. #define IXMLElement_removeAttribute(This,strPropertyName)
  1741.     (This)->lpVtbl -> removeAttribute(This,strPropertyName)
  1742. #define IXMLElement_get_children(This,pp)
  1743.     (This)->lpVtbl -> get_children(This,pp)
  1744. #define IXMLElement_get_type(This,plType)
  1745.     (This)->lpVtbl -> get_type(This,plType)
  1746. #define IXMLElement_get_text(This,p)
  1747.     (This)->lpVtbl -> get_text(This,p)
  1748. #define IXMLElement_put_text(This,p)
  1749.     (This)->lpVtbl -> put_text(This,p)
  1750. #define IXMLElement_addChild(This,pChildElem,lIndex,lReserved)
  1751.     (This)->lpVtbl -> addChild(This,pChildElem,lIndex,lReserved)
  1752. #define IXMLElement_removeChild(This,pChildElem)
  1753.     (This)->lpVtbl -> removeChild(This,pChildElem)
  1754. #endif /* COBJMACROS */
  1755. #endif  /* C style interface */
  1756. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_tagName_Proxy( 
  1757.     IXMLElement * This,
  1758.     /* [out][retval] */ BSTR *p);
  1759. void __RPC_STUB IXMLElement_get_tagName_Stub(
  1760.     IRpcStubBuffer *This,
  1761.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1762.     PRPC_MESSAGE _pRpcMessage,
  1763.     DWORD *_pdwStubPhase);
  1764. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLElement_put_tagName_Proxy( 
  1765.     IXMLElement * This,
  1766.     /* [in] */ BSTR p);
  1767. void __RPC_STUB IXMLElement_put_tagName_Stub(
  1768.     IRpcStubBuffer *This,
  1769.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1770.     PRPC_MESSAGE _pRpcMessage,
  1771.     DWORD *_pdwStubPhase);
  1772. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_parent_Proxy( 
  1773.     IXMLElement * This,
  1774.     /* [out][retval] */ IXMLElement **ppParent);
  1775. void __RPC_STUB IXMLElement_get_parent_Stub(
  1776.     IRpcStubBuffer *This,
  1777.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1778.     PRPC_MESSAGE _pRpcMessage,
  1779.     DWORD *_pdwStubPhase);
  1780. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_setAttribute_Proxy( 
  1781.     IXMLElement * This,
  1782.     /* [in] */ BSTR strPropertyName,
  1783.     /* [in] */ VARIANT PropertyValue);
  1784. void __RPC_STUB IXMLElement_setAttribute_Stub(
  1785.     IRpcStubBuffer *This,
  1786.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1787.     PRPC_MESSAGE _pRpcMessage,
  1788.     DWORD *_pdwStubPhase);
  1789. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_getAttribute_Proxy( 
  1790.     IXMLElement * This,
  1791.     /* [in] */ BSTR strPropertyName,
  1792.     /* [out][retval] */ VARIANT *PropertyValue);
  1793. void __RPC_STUB IXMLElement_getAttribute_Stub(
  1794.     IRpcStubBuffer *This,
  1795.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1796.     PRPC_MESSAGE _pRpcMessage,
  1797.     DWORD *_pdwStubPhase);
  1798. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_removeAttribute_Proxy( 
  1799.     IXMLElement * This,
  1800.     /* [in] */ BSTR strPropertyName);
  1801. void __RPC_STUB IXMLElement_removeAttribute_Stub(
  1802.     IRpcStubBuffer *This,
  1803.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1804.     PRPC_MESSAGE _pRpcMessage,
  1805.     DWORD *_pdwStubPhase);
  1806. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_children_Proxy( 
  1807.     IXMLElement * This,
  1808.     /* [out][retval] */ IXMLElementCollection **pp);
  1809. void __RPC_STUB IXMLElement_get_children_Stub(
  1810.     IRpcStubBuffer *This,
  1811.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1812.     PRPC_MESSAGE _pRpcMessage,
  1813.     DWORD *_pdwStubPhase);
  1814. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_type_Proxy( 
  1815.     IXMLElement * This,
  1816.     /* [out][retval] */ long *plType);
  1817. void __RPC_STUB IXMLElement_get_type_Stub(
  1818.     IRpcStubBuffer *This,
  1819.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1820.     PRPC_MESSAGE _pRpcMessage,
  1821.     DWORD *_pdwStubPhase);
  1822. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_text_Proxy( 
  1823.     IXMLElement * This,
  1824.     /* [out][retval] */ BSTR *p);
  1825. void __RPC_STUB IXMLElement_get_text_Stub(
  1826.     IRpcStubBuffer *This,
  1827.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1828.     PRPC_MESSAGE _pRpcMessage,
  1829.     DWORD *_pdwStubPhase);
  1830. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLElement_put_text_Proxy( 
  1831.     IXMLElement * This,
  1832.     /* [in] */ BSTR p);
  1833. void __RPC_STUB IXMLElement_put_text_Stub(
  1834.     IRpcStubBuffer *This,
  1835.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1836.     PRPC_MESSAGE _pRpcMessage,
  1837.     DWORD *_pdwStubPhase);
  1838. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_addChild_Proxy( 
  1839.     IXMLElement * This,
  1840.     /* [in] */ IXMLElement *pChildElem,
  1841.     long lIndex,
  1842.     long lReserved);
  1843. void __RPC_STUB IXMLElement_addChild_Stub(
  1844.     IRpcStubBuffer *This,
  1845.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1846.     PRPC_MESSAGE _pRpcMessage,
  1847.     DWORD *_pdwStubPhase);
  1848. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_removeChild_Proxy( 
  1849.     IXMLElement * This,
  1850.     /* [in] */ IXMLElement *pChildElem);
  1851. void __RPC_STUB IXMLElement_removeChild_Stub(
  1852.     IRpcStubBuffer *This,
  1853.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1854.     PRPC_MESSAGE _pRpcMessage,
  1855.     DWORD *_pdwStubPhase);
  1856. #endif  /* __IXMLElement_INTERFACE_DEFINED__ */
  1857. #ifndef __IXMLElement2_INTERFACE_DEFINED__
  1858. #define __IXMLElement2_INTERFACE_DEFINED__
  1859. /* interface IXMLElement2 */
  1860. /* [helpstring][hidden][oleautomation][dual][uuid][object][local] */ 
  1861. EXTERN_C const IID IID_IXMLElement2;
  1862. #if defined(__cplusplus) && !defined(CINTERFACE)
  1863.     
  1864.     MIDL_INTERFACE("2B8DE2FF-8D2D-11d1-B2FC-00C04FD915A9")
  1865.     IXMLElement2 : public IDispatch
  1866.     {
  1867.     public:
  1868.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_tagName( 
  1869.             /* [out][retval] */ BSTR *p) = 0;
  1870.         
  1871.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_tagName( 
  1872.             /* [in] */ BSTR p) = 0;
  1873.         
  1874.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_parent( 
  1875.             /* [out][retval] */ IXMLElement2 **ppParent) = 0;
  1876.         
  1877.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setAttribute( 
  1878.             /* [in] */ BSTR strPropertyName,
  1879.             /* [in] */ VARIANT PropertyValue) = 0;
  1880.         
  1881.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getAttribute( 
  1882.             /* [in] */ BSTR strPropertyName,
  1883.             /* [out][retval] */ VARIANT *PropertyValue) = 0;
  1884.         
  1885.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeAttribute( 
  1886.             /* [in] */ BSTR strPropertyName) = 0;
  1887.         
  1888.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_children( 
  1889.             /* [out][retval] */ IXMLElementCollection **pp) = 0;
  1890.         
  1891.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_type( 
  1892.             /* [out][retval] */ long *plType) = 0;
  1893.         
  1894.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_text( 
  1895.             /* [out][retval] */ BSTR *p) = 0;
  1896.         
  1897.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_text( 
  1898.             /* [in] */ BSTR p) = 0;
  1899.         
  1900.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE addChild( 
  1901.             /* [in] */ IXMLElement2 *pChildElem,
  1902.             long lIndex,
  1903.             long lReserved) = 0;
  1904.         
  1905.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeChild( 
  1906.             /* [in] */ IXMLElement2 *pChildElem) = 0;
  1907.         
  1908.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_attributes( 
  1909.             /* [out][retval] */ IXMLElementCollection **pp) = 0;
  1910.         
  1911.     };
  1912.     
  1913. #else  /* C style interface */
  1914.     typedef struct IXMLElement2Vtbl
  1915.     {
  1916.         BEGIN_INTERFACE
  1917.         
  1918.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1919.             IXMLElement2 * This,
  1920.             /* [in] */ REFIID riid,
  1921.             /* [iid_is][out] */ void **ppvObject);
  1922.         
  1923.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1924.             IXMLElement2 * This);
  1925.         
  1926.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1927.             IXMLElement2 * This);
  1928.         
  1929.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1930.             IXMLElement2 * This,
  1931.             /* [out] */ UINT *pctinfo);
  1932.         
  1933.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1934.             IXMLElement2 * This,
  1935.             /* [in] */ UINT iTInfo,
  1936.             /* [in] */ LCID lcid,
  1937.             /* [out] */ ITypeInfo **ppTInfo);
  1938.         
  1939.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1940.             IXMLElement2 * This,
  1941.             /* [in] */ REFIID riid,
  1942.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1943.             /* [in] */ UINT cNames,
  1944.             /* [in] */ LCID lcid,
  1945.             /* [size_is][out] */ DISPID *rgDispId);
  1946.         
  1947.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1948.             IXMLElement2 * This,
  1949.             /* [in] */ DISPID dispIdMember,
  1950.             /* [in] */ REFIID riid,
  1951.             /* [in] */ LCID lcid,
  1952.             /* [in] */ WORD wFlags,
  1953.             /* [out][in] */ DISPPARAMS *pDispParams,
  1954.             /* [out] */ VARIANT *pVarResult,
  1955.             /* [out] */ EXCEPINFO *pExcepInfo,
  1956.             /* [out] */ UINT *puArgErr);
  1957.         
  1958.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_tagName )( 
  1959.             IXMLElement2 * This,
  1960.             /* [out][retval] */ BSTR *p);
  1961.         
  1962.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_tagName )( 
  1963.             IXMLElement2 * This,
  1964.             /* [in] */ BSTR p);
  1965.         
  1966.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_parent )( 
  1967.             IXMLElement2 * This,
  1968.             /* [out][retval] */ IXMLElement2 **ppParent);
  1969.         
  1970.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setAttribute )( 
  1971.             IXMLElement2 * This,
  1972.             /* [in] */ BSTR strPropertyName,
  1973.             /* [in] */ VARIANT PropertyValue);
  1974.         
  1975.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getAttribute )( 
  1976.             IXMLElement2 * This,
  1977.             /* [in] */ BSTR strPropertyName,
  1978.             /* [out][retval] */ VARIANT *PropertyValue);
  1979.         
  1980.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeAttribute )( 
  1981.             IXMLElement2 * This,
  1982.             /* [in] */ BSTR strPropertyName);
  1983.         
  1984.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_children )( 
  1985.             IXMLElement2 * This,
  1986.             /* [out][retval] */ IXMLElementCollection **pp);
  1987.         
  1988.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_type )( 
  1989.             IXMLElement2 * This,
  1990.             /* [out][retval] */ long *plType);
  1991.         
  1992.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_text )( 
  1993.             IXMLElement2 * This,
  1994.             /* [out][retval] */ BSTR *p);
  1995.         
  1996.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_text )( 
  1997.             IXMLElement2 * This,
  1998.             /* [in] */ BSTR p);
  1999.         
  2000.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *addChild )( 
  2001.             IXMLElement2 * This,
  2002.             /* [in] */ IXMLElement2 *pChildElem,
  2003.             long lIndex,
  2004.             long lReserved);
  2005.         
  2006.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeChild )( 
  2007.             IXMLElement2 * This,
  2008.             /* [in] */ IXMLElement2 *pChildElem);
  2009.         
  2010.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_attributes )( 
  2011.             IXMLElement2 * This,
  2012.             /* [out][retval] */ IXMLElementCollection **pp);
  2013.         
  2014.         END_INTERFACE
  2015.     } IXMLElement2Vtbl;
  2016.     interface IXMLElement2
  2017.     {
  2018.         CONST_VTBL struct IXMLElement2Vtbl *lpVtbl;
  2019.     };
  2020.     
  2021. #ifdef COBJMACROS
  2022. #define IXMLElement2_QueryInterface(This,riid,ppvObject)
  2023.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2024. #define IXMLElement2_AddRef(This)
  2025.     (This)->lpVtbl -> AddRef(This)
  2026. #define IXMLElement2_Release(This)
  2027.     (This)->lpVtbl -> Release(This)
  2028. #define IXMLElement2_GetTypeInfoCount(This,pctinfo)
  2029.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2030. #define IXMLElement2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2031.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2032. #define IXMLElement2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2033.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2034. #define IXMLElement2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2035.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2036. #define IXMLElement2_get_tagName(This,p)
  2037.     (This)->lpVtbl -> get_tagName(This,p)
  2038. #define IXMLElement2_put_tagName(This,p)
  2039.     (This)->lpVtbl -> put_tagName(This,p)
  2040. #define IXMLElement2_get_parent(This,ppParent)
  2041.     (This)->lpVtbl -> get_parent(This,ppParent)
  2042. #define IXMLElement2_setAttribute(This,strPropertyName,PropertyValue)
  2043.     (This)->lpVtbl -> setAttribute(This,strPropertyName,PropertyValue)
  2044. #define IXMLElement2_getAttribute(This,strPropertyName,PropertyValue)
  2045.     (This)->lpVtbl -> getAttribute(This,strPropertyName,PropertyValue)
  2046. #define IXMLElement2_removeAttribute(This,strPropertyName)
  2047.     (This)->lpVtbl -> removeAttribute(This,strPropertyName)
  2048. #define IXMLElement2_get_children(This,pp)
  2049.     (This)->lpVtbl -> get_children(This,pp)
  2050. #define IXMLElement2_get_type(This,plType)
  2051.     (This)->lpVtbl -> get_type(This,plType)
  2052. #define IXMLElement2_get_text(This,p)
  2053.     (This)->lpVtbl -> get_text(This,p)
  2054. #define IXMLElement2_put_text(This,p)
  2055.     (This)->lpVtbl -> put_text(This,p)
  2056. #define IXMLElement2_addChild(This,pChildElem,lIndex,lReserved)
  2057.     (This)->lpVtbl -> addChild(This,pChildElem,lIndex,lReserved)
  2058. #define IXMLElement2_removeChild(This,pChildElem)
  2059.     (This)->lpVtbl -> removeChild(This,pChildElem)
  2060. #define IXMLElement2_get_attributes(This,pp)
  2061.     (This)->lpVtbl -> get_attributes(This,pp)
  2062. #endif /* COBJMACROS */
  2063. #endif  /* C style interface */
  2064. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_tagName_Proxy( 
  2065.     IXMLElement2 * This,
  2066.     /* [out][retval] */ BSTR *p);
  2067. void __RPC_STUB IXMLElement2_get_tagName_Stub(
  2068.     IRpcStubBuffer *This,
  2069.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2070.     PRPC_MESSAGE _pRpcMessage,
  2071.     DWORD *_pdwStubPhase);
  2072. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLElement2_put_tagName_Proxy( 
  2073.     IXMLElement2 * This,
  2074.     /* [in] */ BSTR p);
  2075. void __RPC_STUB IXMLElement2_put_tagName_Stub(
  2076.     IRpcStubBuffer *This,
  2077.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2078.     PRPC_MESSAGE _pRpcMessage,
  2079.     DWORD *_pdwStubPhase);
  2080. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_parent_Proxy( 
  2081.     IXMLElement2 * This,
  2082.     /* [out][retval] */ IXMLElement2 **ppParent);
  2083. void __RPC_STUB IXMLElement2_get_parent_Stub(
  2084.     IRpcStubBuffer *This,
  2085.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2086.     PRPC_MESSAGE _pRpcMessage,
  2087.     DWORD *_pdwStubPhase);
  2088. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_setAttribute_Proxy( 
  2089.     IXMLElement2 * This,
  2090.     /* [in] */ BSTR strPropertyName,
  2091.     /* [in] */ VARIANT PropertyValue);
  2092. void __RPC_STUB IXMLElement2_setAttribute_Stub(
  2093.     IRpcStubBuffer *This,
  2094.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2095.     PRPC_MESSAGE _pRpcMessage,
  2096.     DWORD *_pdwStubPhase);
  2097. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_getAttribute_Proxy( 
  2098.     IXMLElement2 * This,
  2099.     /* [in] */ BSTR strPropertyName,
  2100.     /* [out][retval] */ VARIANT *PropertyValue);
  2101. void __RPC_STUB IXMLElement2_getAttribute_Stub(
  2102.     IRpcStubBuffer *This,
  2103.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2104.     PRPC_MESSAGE _pRpcMessage,
  2105.     DWORD *_pdwStubPhase);
  2106. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_removeAttribute_Proxy( 
  2107.     IXMLElement2 * This,
  2108.     /* [in] */ BSTR strPropertyName);
  2109. void __RPC_STUB IXMLElement2_removeAttribute_Stub(
  2110.     IRpcStubBuffer *This,
  2111.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2112.     PRPC_MESSAGE _pRpcMessage,
  2113.     DWORD *_pdwStubPhase);
  2114. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_children_Proxy( 
  2115.     IXMLElement2 * This,
  2116.     /* [out][retval] */ IXMLElementCollection **pp);
  2117. void __RPC_STUB IXMLElement2_get_children_Stub(
  2118.     IRpcStubBuffer *This,
  2119.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2120.     PRPC_MESSAGE _pRpcMessage,
  2121.     DWORD *_pdwStubPhase);
  2122. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_type_Proxy( 
  2123.     IXMLElement2 * This,
  2124.     /* [out][retval] */ long *plType);
  2125. void __RPC_STUB IXMLElement2_get_type_Stub(
  2126.     IRpcStubBuffer *This,
  2127.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2128.     PRPC_MESSAGE _pRpcMessage,
  2129.     DWORD *_pdwStubPhase);
  2130. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_text_Proxy( 
  2131.     IXMLElement2 * This,
  2132.     /* [out][retval] */ BSTR *p);
  2133. void __RPC_STUB IXMLElement2_get_text_Stub(
  2134.     IRpcStubBuffer *This,
  2135.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2136.     PRPC_MESSAGE _pRpcMessage,
  2137.     DWORD *_pdwStubPhase);
  2138. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLElement2_put_text_Proxy( 
  2139.     IXMLElement2 * This,
  2140.     /* [in] */ BSTR p);
  2141. void __RPC_STUB IXMLElement2_put_text_Stub(
  2142.     IRpcStubBuffer *This,
  2143.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2144.     PRPC_MESSAGE _pRpcMessage,
  2145.     DWORD *_pdwStubPhase);
  2146. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_addChild_Proxy( 
  2147.     IXMLElement2 * This,
  2148.     /* [in] */ IXMLElement2 *pChildElem,
  2149.     long lIndex,
  2150.     long lReserved);
  2151. void __RPC_STUB IXMLElement2_addChild_Stub(
  2152.     IRpcStubBuffer *This,
  2153.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2154.     PRPC_MESSAGE _pRpcMessage,
  2155.     DWORD *_pdwStubPhase);
  2156. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_removeChild_Proxy( 
  2157.     IXMLElement2 * This,
  2158.     /* [in] */ IXMLElement2 *pChildElem);
  2159. void __RPC_STUB IXMLElement2_removeChild_Stub(
  2160.     IRpcStubBuffer *This,
  2161.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2162.     PRPC_MESSAGE _pRpcMessage,
  2163.     DWORD *_pdwStubPhase);
  2164. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_attributes_Proxy( 
  2165.     IXMLElement2 * This,
  2166.     /* [out][retval] */ IXMLElementCollection **pp);
  2167. void __RPC_STUB IXMLElement2_get_attributes_Stub(
  2168.     IRpcStubBuffer *This,
  2169.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2170.     PRPC_MESSAGE _pRpcMessage,
  2171.     DWORD *_pdwStubPhase);
  2172. #endif  /* __IXMLElement2_INTERFACE_DEFINED__ */
  2173. #ifndef __IXMLAttribute_INTERFACE_DEFINED__
  2174. #define __IXMLAttribute_INTERFACE_DEFINED__
  2175. /* interface IXMLAttribute */
  2176. /* [helpstring][hidden][oleautomation][dual][uuid][object][local] */ 
  2177. EXTERN_C const IID IID_IXMLAttribute;
  2178. #if defined(__cplusplus) && !defined(CINTERFACE)
  2179.     
  2180.     MIDL_INTERFACE("D4D4A0FC-3B73-11d1-B2B4-00C04FB92596")
  2181.     IXMLAttribute : public IDispatch
  2182.     {
  2183.     public:
  2184.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_name( 
  2185.             /* [out][retval] */ BSTR *n) = 0;
  2186.         
  2187.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_value( 
  2188.             /* [out][retval] */ BSTR *v) = 0;
  2189.         
  2190.     };
  2191.     
  2192. #else  /* C style interface */
  2193.     typedef struct IXMLAttributeVtbl
  2194.     {
  2195.         BEGIN_INTERFACE
  2196.         
  2197.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2198.             IXMLAttribute * This,
  2199.             /* [in] */ REFIID riid,
  2200.             /* [iid_is][out] */ void **ppvObject);
  2201.         
  2202.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2203.             IXMLAttribute * This);
  2204.         
  2205.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2206.             IXMLAttribute * This);
  2207.         
  2208.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2209.             IXMLAttribute * This,
  2210.             /* [out] */ UINT *pctinfo);
  2211.         
  2212.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2213.             IXMLAttribute * This,
  2214.             /* [in] */ UINT iTInfo,
  2215.             /* [in] */ LCID lcid,
  2216.             /* [out] */ ITypeInfo **ppTInfo);
  2217.         
  2218.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2219.             IXMLAttribute * This,
  2220.             /* [in] */ REFIID riid,
  2221.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2222.             /* [in] */ UINT cNames,
  2223.             /* [in] */ LCID lcid,
  2224.             /* [size_is][out] */ DISPID *rgDispId);
  2225.         
  2226.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2227.             IXMLAttribute * This,
  2228.             /* [in] */ DISPID dispIdMember,
  2229.             /* [in] */ REFIID riid,
  2230.             /* [in] */ LCID lcid,
  2231.             /* [in] */ WORD wFlags,
  2232.             /* [out][in] */ DISPPARAMS *pDispParams,
  2233.             /* [out] */ VARIANT *pVarResult,
  2234.             /* [out] */ EXCEPINFO *pExcepInfo,
  2235.             /* [out] */ UINT *puArgErr);
  2236.         
  2237.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_name )( 
  2238.             IXMLAttribute * This,
  2239.             /* [out][retval] */ BSTR *n);
  2240.         
  2241.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_value )( 
  2242.             IXMLAttribute * This,
  2243.             /* [out][retval] */ BSTR *v);
  2244.         
  2245.         END_INTERFACE
  2246.     } IXMLAttributeVtbl;
  2247.     interface IXMLAttribute
  2248.     {
  2249.         CONST_VTBL struct IXMLAttributeVtbl *lpVtbl;
  2250.     };
  2251.     
  2252. #ifdef COBJMACROS
  2253. #define IXMLAttribute_QueryInterface(This,riid,ppvObject)
  2254.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2255. #define IXMLAttribute_AddRef(This)
  2256.     (This)->lpVtbl -> AddRef(This)
  2257. #define IXMLAttribute_Release(This)
  2258.     (This)->lpVtbl -> Release(This)
  2259. #define IXMLAttribute_GetTypeInfoCount(This,pctinfo)
  2260.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2261. #define IXMLAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2262.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2263. #define IXMLAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2264.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2265. #define IXMLAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2266.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2267. #define IXMLAttribute_get_name(This,n)
  2268.     (This)->lpVtbl -> get_name(This,n)
  2269. #define IXMLAttribute_get_value(This,v)
  2270.     (This)->lpVtbl -> get_value(This,v)
  2271. #endif /* COBJMACROS */
  2272. #endif  /* C style interface */
  2273. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLAttribute_get_name_Proxy( 
  2274.     IXMLAttribute * This,
  2275.     /* [out][retval] */ BSTR *n);
  2276. void __RPC_STUB IXMLAttribute_get_name_Stub(
  2277.     IRpcStubBuffer *This,
  2278.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2279.     PRPC_MESSAGE _pRpcMessage,
  2280.     DWORD *_pdwStubPhase);
  2281. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLAttribute_get_value_Proxy( 
  2282.     IXMLAttribute * This,
  2283.     /* [out][retval] */ BSTR *v);
  2284. void __RPC_STUB IXMLAttribute_get_value_Stub(
  2285.     IRpcStubBuffer *This,
  2286.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2287.     PRPC_MESSAGE _pRpcMessage,
  2288.     DWORD *_pdwStubPhase);
  2289. #endif  /* __IXMLAttribute_INTERFACE_DEFINED__ */
  2290. #ifndef __IXMLError_INTERFACE_DEFINED__
  2291. #define __IXMLError_INTERFACE_DEFINED__
  2292. /* interface IXMLError */
  2293. /* [helpstring][hidden][uuid][object][local] */ 
  2294. EXTERN_C const IID IID_IXMLError;
  2295. #if defined(__cplusplus) && !defined(CINTERFACE)
  2296.     
  2297.     MIDL_INTERFACE("948C5AD3-C58D-11d0-9C0B-00C04FC99C8E")
  2298.     IXMLError : public IUnknown
  2299.     {
  2300.     public:
  2301.         virtual HRESULT STDMETHODCALLTYPE GetErrorInfo( 
  2302.             XML_ERROR *pErrorReturn) = 0;
  2303.         
  2304.     };
  2305.     
  2306. #else  /* C style interface */
  2307.     typedef struct IXMLErrorVtbl
  2308.     {
  2309.         BEGIN_INTERFACE
  2310.         
  2311.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2312.             IXMLError * This,
  2313.             /* [in] */ REFIID riid,
  2314.             /* [iid_is][out] */ void **ppvObject);
  2315.         
  2316.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2317.             IXMLError * This);
  2318.         
  2319.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2320.             IXMLError * This);
  2321.         
  2322.         HRESULT ( STDMETHODCALLTYPE *GetErrorInfo )( 
  2323.             IXMLError * This,
  2324.             XML_ERROR *pErrorReturn);
  2325.         
  2326.         END_INTERFACE
  2327.     } IXMLErrorVtbl;
  2328.     interface IXMLError
  2329.     {
  2330.         CONST_VTBL struct IXMLErrorVtbl *lpVtbl;
  2331.     };
  2332.     
  2333. #ifdef COBJMACROS
  2334. #define IXMLError_QueryInterface(This,riid,ppvObject)
  2335.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2336. #define IXMLError_AddRef(This)
  2337.     (This)->lpVtbl -> AddRef(This)
  2338. #define IXMLError_Release(This)
  2339.     (This)->lpVtbl -> Release(This)
  2340. #define IXMLError_GetErrorInfo(This,pErrorReturn)
  2341.     (This)->lpVtbl -> GetErrorInfo(This,pErrorReturn)
  2342. #endif /* COBJMACROS */
  2343. #endif  /* C style interface */
  2344. HRESULT STDMETHODCALLTYPE IXMLError_GetErrorInfo_Proxy( 
  2345.     IXMLError * This,
  2346.     XML_ERROR *pErrorReturn);
  2347. void __RPC_STUB IXMLError_GetErrorInfo_Stub(
  2348.     IRpcStubBuffer *This,
  2349.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2350.     PRPC_MESSAGE _pRpcMessage,
  2351.     DWORD *_pdwStubPhase);
  2352. #endif  /* __IXMLError_INTERFACE_DEFINED__ */
  2353. EXTERN_C const CLSID CLSID_XMLDocument;
  2354. #ifdef __cplusplus
  2355. class DECLSPEC_UUID("CFC399AF-D876-11d0-9C10-00C04FC99C8E")
  2356. XMLDocument;
  2357. #endif
  2358. #endif /* __MSXML_LIBRARY_DEFINED__ */
  2359. /* Additional Prototypes for ALL interfaces */
  2360. /* end of Additional Prototypes */
  2361. #ifdef __cplusplus
  2362. }
  2363. #endif
  2364. #endif