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

模拟服务器

开发平台:

C/C++

  1.         
  2.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_charset( 
  3.             /* [out][retval] */ BSTR *p) = 0;
  4.         
  5.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_charset( 
  6.             /* [in] */ BSTR p) = 0;
  7.         
  8.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_version( 
  9.             /* [out][retval] */ BSTR *p) = 0;
  10.         
  11.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_doctype( 
  12.             /* [out][retval] */ BSTR *p) = 0;
  13.         
  14.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_dtdURL( 
  15.             /* [out][retval] */ BSTR *p) = 0;
  16.         
  17.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE createElement( 
  18.             /* [in] */ VARIANT vType,
  19.             /* [in][optional] */ VARIANT var1,
  20.             /* [out][retval] */ IXMLElement **ppElem) = 0;
  21.         
  22.     };
  23.     
  24. #else  /* C style interface */
  25.     typedef struct IXMLDocumentVtbl
  26.     {
  27.         BEGIN_INTERFACE
  28.         
  29.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  30.             IXMLDocument * This,
  31.             /* [in] */ REFIID riid,
  32.             /* [iid_is][out] */ void **ppvObject);
  33.         
  34.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  35.             IXMLDocument * This);
  36.         
  37.         ULONG ( STDMETHODCALLTYPE *Release )( 
  38.             IXMLDocument * This);
  39.         
  40.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  41.             IXMLDocument * This,
  42.             /* [out] */ UINT *pctinfo);
  43.         
  44.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  45.             IXMLDocument * This,
  46.             /* [in] */ UINT iTInfo,
  47.             /* [in] */ LCID lcid,
  48.             /* [out] */ ITypeInfo **ppTInfo);
  49.         
  50.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  51.             IXMLDocument * This,
  52.             /* [in] */ REFIID riid,
  53.             /* [size_is][in] */ LPOLESTR *rgszNames,
  54.             /* [in] */ UINT cNames,
  55.             /* [in] */ LCID lcid,
  56.             /* [size_is][out] */ DISPID *rgDispId);
  57.         
  58.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  59.             IXMLDocument * This,
  60.             /* [in] */ DISPID dispIdMember,
  61.             /* [in] */ REFIID riid,
  62.             /* [in] */ LCID lcid,
  63.             /* [in] */ WORD wFlags,
  64.             /* [out][in] */ DISPPARAMS *pDispParams,
  65.             /* [out] */ VARIANT *pVarResult,
  66.             /* [out] */ EXCEPINFO *pExcepInfo,
  67.             /* [out] */ UINT *puArgErr);
  68.         
  69.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_root )( 
  70.             IXMLDocument * This,
  71.             /* [out][retval] */ IXMLElement **p);
  72.         
  73.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileSize )( 
  74.             IXMLDocument * This,
  75.             /* [out][retval] */ BSTR *p);
  76.         
  77.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileModifiedDate )( 
  78.             IXMLDocument * This,
  79.             /* [out][retval] */ BSTR *p);
  80.         
  81.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileUpdatedDate )( 
  82.             IXMLDocument * This,
  83.             /* [out][retval] */ BSTR *p);
  84.         
  85.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_URL )( 
  86.             IXMLDocument * This,
  87.             /* [out][retval] */ BSTR *p);
  88.         
  89.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_URL )( 
  90.             IXMLDocument * This,
  91.             /* [in] */ BSTR p);
  92.         
  93.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_mimeType )( 
  94.             IXMLDocument * This,
  95.             /* [out][retval] */ BSTR *p);
  96.         
  97.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  98.             IXMLDocument * This,
  99.             /* [out][retval] */ long *pl);
  100.         
  101.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_charset )( 
  102.             IXMLDocument * This,
  103.             /* [out][retval] */ BSTR *p);
  104.         
  105.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_charset )( 
  106.             IXMLDocument * This,
  107.             /* [in] */ BSTR p);
  108.         
  109.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_version )( 
  110.             IXMLDocument * This,
  111.             /* [out][retval] */ BSTR *p);
  112.         
  113.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_doctype )( 
  114.             IXMLDocument * This,
  115.             /* [out][retval] */ BSTR *p);
  116.         
  117.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_dtdURL )( 
  118.             IXMLDocument * This,
  119.             /* [out][retval] */ BSTR *p);
  120.         
  121.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *createElement )( 
  122.             IXMLDocument * This,
  123.             /* [in] */ VARIANT vType,
  124.             /* [in][optional] */ VARIANT var1,
  125.             /* [out][retval] */ IXMLElement **ppElem);
  126.         
  127.         END_INTERFACE
  128.     } IXMLDocumentVtbl;
  129.     interface IXMLDocument
  130.     {
  131.         CONST_VTBL struct IXMLDocumentVtbl *lpVtbl;
  132.     };
  133.     
  134. #ifdef COBJMACROS
  135. #define IXMLDocument_QueryInterface(This,riid,ppvObject)
  136.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  137. #define IXMLDocument_AddRef(This)
  138.     (This)->lpVtbl -> AddRef(This)
  139. #define IXMLDocument_Release(This)
  140.     (This)->lpVtbl -> Release(This)
  141. #define IXMLDocument_GetTypeInfoCount(This,pctinfo)
  142.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  143. #define IXMLDocument_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  144.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  145. #define IXMLDocument_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  146.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  147. #define IXMLDocument_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  148.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  149. #define IXMLDocument_get_root(This,p)
  150.     (This)->lpVtbl -> get_root(This,p)
  151. #define IXMLDocument_get_fileSize(This,p)
  152.     (This)->lpVtbl -> get_fileSize(This,p)
  153. #define IXMLDocument_get_fileModifiedDate(This,p)
  154.     (This)->lpVtbl -> get_fileModifiedDate(This,p)
  155. #define IXMLDocument_get_fileUpdatedDate(This,p)
  156.     (This)->lpVtbl -> get_fileUpdatedDate(This,p)
  157. #define IXMLDocument_get_URL(This,p)
  158.     (This)->lpVtbl -> get_URL(This,p)
  159. #define IXMLDocument_put_URL(This,p)
  160.     (This)->lpVtbl -> put_URL(This,p)
  161. #define IXMLDocument_get_mimeType(This,p)
  162.     (This)->lpVtbl -> get_mimeType(This,p)
  163. #define IXMLDocument_get_readyState(This,pl)
  164.     (This)->lpVtbl -> get_readyState(This,pl)
  165. #define IXMLDocument_get_charset(This,p)
  166.     (This)->lpVtbl -> get_charset(This,p)
  167. #define IXMLDocument_put_charset(This,p)
  168.     (This)->lpVtbl -> put_charset(This,p)
  169. #define IXMLDocument_get_version(This,p)
  170.     (This)->lpVtbl -> get_version(This,p)
  171. #define IXMLDocument_get_doctype(This,p)
  172.     (This)->lpVtbl -> get_doctype(This,p)
  173. #define IXMLDocument_get_dtdURL(This,p)
  174.     (This)->lpVtbl -> get_dtdURL(This,p)
  175. #define IXMLDocument_createElement(This,vType,var1,ppElem)
  176.     (This)->lpVtbl -> createElement(This,vType,var1,ppElem)
  177. #endif /* COBJMACROS */
  178. #endif  /* C style interface */
  179. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_root_Proxy( 
  180.     IXMLDocument * This,
  181.     /* [out][retval] */ IXMLElement **p);
  182. void __RPC_STUB IXMLDocument_get_root_Stub(
  183.     IRpcStubBuffer *This,
  184.     IRpcChannelBuffer *_pRpcChannelBuffer,
  185.     PRPC_MESSAGE _pRpcMessage,
  186.     DWORD *_pdwStubPhase);
  187. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_fileSize_Proxy( 
  188.     IXMLDocument * This,
  189.     /* [out][retval] */ BSTR *p);
  190. void __RPC_STUB IXMLDocument_get_fileSize_Stub(
  191.     IRpcStubBuffer *This,
  192.     IRpcChannelBuffer *_pRpcChannelBuffer,
  193.     PRPC_MESSAGE _pRpcMessage,
  194.     DWORD *_pdwStubPhase);
  195. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_fileModifiedDate_Proxy( 
  196.     IXMLDocument * This,
  197.     /* [out][retval] */ BSTR *p);
  198. void __RPC_STUB IXMLDocument_get_fileModifiedDate_Stub(
  199.     IRpcStubBuffer *This,
  200.     IRpcChannelBuffer *_pRpcChannelBuffer,
  201.     PRPC_MESSAGE _pRpcMessage,
  202.     DWORD *_pdwStubPhase);
  203. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_fileUpdatedDate_Proxy( 
  204.     IXMLDocument * This,
  205.     /* [out][retval] */ BSTR *p);
  206. void __RPC_STUB IXMLDocument_get_fileUpdatedDate_Stub(
  207.     IRpcStubBuffer *This,
  208.     IRpcChannelBuffer *_pRpcChannelBuffer,
  209.     PRPC_MESSAGE _pRpcMessage,
  210.     DWORD *_pdwStubPhase);
  211. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_URL_Proxy( 
  212.     IXMLDocument * This,
  213.     /* [out][retval] */ BSTR *p);
  214. void __RPC_STUB IXMLDocument_get_URL_Stub(
  215.     IRpcStubBuffer *This,
  216.     IRpcChannelBuffer *_pRpcChannelBuffer,
  217.     PRPC_MESSAGE _pRpcMessage,
  218.     DWORD *_pdwStubPhase);
  219. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument_put_URL_Proxy( 
  220.     IXMLDocument * This,
  221.     /* [in] */ BSTR p);
  222. void __RPC_STUB IXMLDocument_put_URL_Stub(
  223.     IRpcStubBuffer *This,
  224.     IRpcChannelBuffer *_pRpcChannelBuffer,
  225.     PRPC_MESSAGE _pRpcMessage,
  226.     DWORD *_pdwStubPhase);
  227. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_mimeType_Proxy( 
  228.     IXMLDocument * This,
  229.     /* [out][retval] */ BSTR *p);
  230. void __RPC_STUB IXMLDocument_get_mimeType_Stub(
  231.     IRpcStubBuffer *This,
  232.     IRpcChannelBuffer *_pRpcChannelBuffer,
  233.     PRPC_MESSAGE _pRpcMessage,
  234.     DWORD *_pdwStubPhase);
  235. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_readyState_Proxy( 
  236.     IXMLDocument * This,
  237.     /* [out][retval] */ long *pl);
  238. void __RPC_STUB IXMLDocument_get_readyState_Stub(
  239.     IRpcStubBuffer *This,
  240.     IRpcChannelBuffer *_pRpcChannelBuffer,
  241.     PRPC_MESSAGE _pRpcMessage,
  242.     DWORD *_pdwStubPhase);
  243. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_charset_Proxy( 
  244.     IXMLDocument * This,
  245.     /* [out][retval] */ BSTR *p);
  246. void __RPC_STUB IXMLDocument_get_charset_Stub(
  247.     IRpcStubBuffer *This,
  248.     IRpcChannelBuffer *_pRpcChannelBuffer,
  249.     PRPC_MESSAGE _pRpcMessage,
  250.     DWORD *_pdwStubPhase);
  251. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument_put_charset_Proxy( 
  252.     IXMLDocument * This,
  253.     /* [in] */ BSTR p);
  254. void __RPC_STUB IXMLDocument_put_charset_Stub(
  255.     IRpcStubBuffer *This,
  256.     IRpcChannelBuffer *_pRpcChannelBuffer,
  257.     PRPC_MESSAGE _pRpcMessage,
  258.     DWORD *_pdwStubPhase);
  259. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_version_Proxy( 
  260.     IXMLDocument * This,
  261.     /* [out][retval] */ BSTR *p);
  262. void __RPC_STUB IXMLDocument_get_version_Stub(
  263.     IRpcStubBuffer *This,
  264.     IRpcChannelBuffer *_pRpcChannelBuffer,
  265.     PRPC_MESSAGE _pRpcMessage,
  266.     DWORD *_pdwStubPhase);
  267. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_doctype_Proxy( 
  268.     IXMLDocument * This,
  269.     /* [out][retval] */ BSTR *p);
  270. void __RPC_STUB IXMLDocument_get_doctype_Stub(
  271.     IRpcStubBuffer *This,
  272.     IRpcChannelBuffer *_pRpcChannelBuffer,
  273.     PRPC_MESSAGE _pRpcMessage,
  274.     DWORD *_pdwStubPhase);
  275. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument_get_dtdURL_Proxy( 
  276.     IXMLDocument * This,
  277.     /* [out][retval] */ BSTR *p);
  278. void __RPC_STUB IXMLDocument_get_dtdURL_Stub(
  279.     IRpcStubBuffer *This,
  280.     IRpcChannelBuffer *_pRpcChannelBuffer,
  281.     PRPC_MESSAGE _pRpcMessage,
  282.     DWORD *_pdwStubPhase);
  283. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDocument_createElement_Proxy( 
  284.     IXMLDocument * This,
  285.     /* [in] */ VARIANT vType,
  286.     /* [in][optional] */ VARIANT var1,
  287.     /* [out][retval] */ IXMLElement **ppElem);
  288. void __RPC_STUB IXMLDocument_createElement_Stub(
  289.     IRpcStubBuffer *This,
  290.     IRpcChannelBuffer *_pRpcChannelBuffer,
  291.     PRPC_MESSAGE _pRpcMessage,
  292.     DWORD *_pdwStubPhase);
  293. #endif  /* __IXMLDocument_INTERFACE_DEFINED__ */
  294. #ifndef __IXMLDocument2_INTERFACE_DEFINED__
  295. #define __IXMLDocument2_INTERFACE_DEFINED__
  296. /* interface IXMLDocument2 */
  297. /* [hidden][uuid][object][local] */ 
  298. EXTERN_C const IID IID_IXMLDocument2;
  299. #if defined(__cplusplus) && !defined(CINTERFACE)
  300.     
  301.     MIDL_INTERFACE("2B8DE2FE-8D2D-11d1-B2FC-00C04FD915A9")
  302.     IXMLDocument2 : public IDispatch
  303.     {
  304.     public:
  305.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_root( 
  306.             /* [out][retval] */ IXMLElement2 **p) = 0;
  307.         
  308.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileSize( 
  309.             /* [out][retval] */ BSTR *p) = 0;
  310.         
  311.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileModifiedDate( 
  312.             /* [out][retval] */ BSTR *p) = 0;
  313.         
  314.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_fileUpdatedDate( 
  315.             /* [out][retval] */ BSTR *p) = 0;
  316.         
  317.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_URL( 
  318.             /* [out][retval] */ BSTR *p) = 0;
  319.         
  320.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_URL( 
  321.             /* [in] */ BSTR p) = 0;
  322.         
  323.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_mimeType( 
  324.             /* [out][retval] */ BSTR *p) = 0;
  325.         
  326.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_readyState( 
  327.             /* [out][retval] */ long *pl) = 0;
  328.         
  329.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_charset( 
  330.             /* [out][retval] */ BSTR *p) = 0;
  331.         
  332.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_charset( 
  333.             /* [in] */ BSTR p) = 0;
  334.         
  335.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_version( 
  336.             /* [out][retval] */ BSTR *p) = 0;
  337.         
  338.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_doctype( 
  339.             /* [out][retval] */ BSTR *p) = 0;
  340.         
  341.         virtual /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE get_dtdURL( 
  342.             /* [out][retval] */ BSTR *p) = 0;
  343.         
  344.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE createElement( 
  345.             /* [in] */ VARIANT vType,
  346.             /* [in][optional] */ VARIANT var1,
  347.             /* [out][retval] */ IXMLElement2 **ppElem) = 0;
  348.         
  349.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_async( 
  350.             /* [out][retval] */ VARIANT_BOOL *pf) = 0;
  351.         
  352.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_async( 
  353.             /* [in] */ VARIANT_BOOL f) = 0;
  354.         
  355.     };
  356.     
  357. #else  /* C style interface */
  358.     typedef struct IXMLDocument2Vtbl
  359.     {
  360.         BEGIN_INTERFACE
  361.         
  362.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  363.             IXMLDocument2 * This,
  364.             /* [in] */ REFIID riid,
  365.             /* [iid_is][out] */ void **ppvObject);
  366.         
  367.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  368.             IXMLDocument2 * This);
  369.         
  370.         ULONG ( STDMETHODCALLTYPE *Release )( 
  371.             IXMLDocument2 * This);
  372.         
  373.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  374.             IXMLDocument2 * This,
  375.             /* [out] */ UINT *pctinfo);
  376.         
  377.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  378.             IXMLDocument2 * This,
  379.             /* [in] */ UINT iTInfo,
  380.             /* [in] */ LCID lcid,
  381.             /* [out] */ ITypeInfo **ppTInfo);
  382.         
  383.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  384.             IXMLDocument2 * This,
  385.             /* [in] */ REFIID riid,
  386.             /* [size_is][in] */ LPOLESTR *rgszNames,
  387.             /* [in] */ UINT cNames,
  388.             /* [in] */ LCID lcid,
  389.             /* [size_is][out] */ DISPID *rgDispId);
  390.         
  391.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  392.             IXMLDocument2 * This,
  393.             /* [in] */ DISPID dispIdMember,
  394.             /* [in] */ REFIID riid,
  395.             /* [in] */ LCID lcid,
  396.             /* [in] */ WORD wFlags,
  397.             /* [out][in] */ DISPPARAMS *pDispParams,
  398.             /* [out] */ VARIANT *pVarResult,
  399.             /* [out] */ EXCEPINFO *pExcepInfo,
  400.             /* [out] */ UINT *puArgErr);
  401.         
  402.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_root )( 
  403.             IXMLDocument2 * This,
  404.             /* [out][retval] */ IXMLElement2 **p);
  405.         
  406.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileSize )( 
  407.             IXMLDocument2 * This,
  408.             /* [out][retval] */ BSTR *p);
  409.         
  410.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileModifiedDate )( 
  411.             IXMLDocument2 * This,
  412.             /* [out][retval] */ BSTR *p);
  413.         
  414.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_fileUpdatedDate )( 
  415.             IXMLDocument2 * This,
  416.             /* [out][retval] */ BSTR *p);
  417.         
  418.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_URL )( 
  419.             IXMLDocument2 * This,
  420.             /* [out][retval] */ BSTR *p);
  421.         
  422.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_URL )( 
  423.             IXMLDocument2 * This,
  424.             /* [in] */ BSTR p);
  425.         
  426.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_mimeType )( 
  427.             IXMLDocument2 * This,
  428.             /* [out][retval] */ BSTR *p);
  429.         
  430.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  431.             IXMLDocument2 * This,
  432.             /* [out][retval] */ long *pl);
  433.         
  434.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_charset )( 
  435.             IXMLDocument2 * This,
  436.             /* [out][retval] */ BSTR *p);
  437.         
  438.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_charset )( 
  439.             IXMLDocument2 * This,
  440.             /* [in] */ BSTR p);
  441.         
  442.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_version )( 
  443.             IXMLDocument2 * This,
  444.             /* [out][retval] */ BSTR *p);
  445.         
  446.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_doctype )( 
  447.             IXMLDocument2 * This,
  448.             /* [out][retval] */ BSTR *p);
  449.         
  450.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get_dtdURL )( 
  451.             IXMLDocument2 * This,
  452.             /* [out][retval] */ BSTR *p);
  453.         
  454.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *createElement )( 
  455.             IXMLDocument2 * This,
  456.             /* [in] */ VARIANT vType,
  457.             /* [in][optional] */ VARIANT var1,
  458.             /* [out][retval] */ IXMLElement2 **ppElem);
  459.         
  460.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_async )( 
  461.             IXMLDocument2 * This,
  462.             /* [out][retval] */ VARIANT_BOOL *pf);
  463.         
  464.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_async )( 
  465.             IXMLDocument2 * This,
  466.             /* [in] */ VARIANT_BOOL f);
  467.         
  468.         END_INTERFACE
  469.     } IXMLDocument2Vtbl;
  470.     interface IXMLDocument2
  471.     {
  472.         CONST_VTBL struct IXMLDocument2Vtbl *lpVtbl;
  473.     };
  474.     
  475. #ifdef COBJMACROS
  476. #define IXMLDocument2_QueryInterface(This,riid,ppvObject)
  477.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  478. #define IXMLDocument2_AddRef(This)
  479.     (This)->lpVtbl -> AddRef(This)
  480. #define IXMLDocument2_Release(This)
  481.     (This)->lpVtbl -> Release(This)
  482. #define IXMLDocument2_GetTypeInfoCount(This,pctinfo)
  483.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  484. #define IXMLDocument2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  485.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  486. #define IXMLDocument2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  487.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  488. #define IXMLDocument2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  489.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  490. #define IXMLDocument2_get_root(This,p)
  491.     (This)->lpVtbl -> get_root(This,p)
  492. #define IXMLDocument2_get_fileSize(This,p)
  493.     (This)->lpVtbl -> get_fileSize(This,p)
  494. #define IXMLDocument2_get_fileModifiedDate(This,p)
  495.     (This)->lpVtbl -> get_fileModifiedDate(This,p)
  496. #define IXMLDocument2_get_fileUpdatedDate(This,p)
  497.     (This)->lpVtbl -> get_fileUpdatedDate(This,p)
  498. #define IXMLDocument2_get_URL(This,p)
  499.     (This)->lpVtbl -> get_URL(This,p)
  500. #define IXMLDocument2_put_URL(This,p)
  501.     (This)->lpVtbl -> put_URL(This,p)
  502. #define IXMLDocument2_get_mimeType(This,p)
  503.     (This)->lpVtbl -> get_mimeType(This,p)
  504. #define IXMLDocument2_get_readyState(This,pl)
  505.     (This)->lpVtbl -> get_readyState(This,pl)
  506. #define IXMLDocument2_get_charset(This,p)
  507.     (This)->lpVtbl -> get_charset(This,p)
  508. #define IXMLDocument2_put_charset(This,p)
  509.     (This)->lpVtbl -> put_charset(This,p)
  510. #define IXMLDocument2_get_version(This,p)
  511.     (This)->lpVtbl -> get_version(This,p)
  512. #define IXMLDocument2_get_doctype(This,p)
  513.     (This)->lpVtbl -> get_doctype(This,p)
  514. #define IXMLDocument2_get_dtdURL(This,p)
  515.     (This)->lpVtbl -> get_dtdURL(This,p)
  516. #define IXMLDocument2_createElement(This,vType,var1,ppElem)
  517.     (This)->lpVtbl -> createElement(This,vType,var1,ppElem)
  518. #define IXMLDocument2_get_async(This,pf)
  519.     (This)->lpVtbl -> get_async(This,pf)
  520. #define IXMLDocument2_put_async(This,f)
  521.     (This)->lpVtbl -> put_async(This,f)
  522. #endif /* COBJMACROS */
  523. #endif  /* C style interface */
  524. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_root_Proxy( 
  525.     IXMLDocument2 * This,
  526.     /* [out][retval] */ IXMLElement2 **p);
  527. void __RPC_STUB IXMLDocument2_get_root_Stub(
  528.     IRpcStubBuffer *This,
  529.     IRpcChannelBuffer *_pRpcChannelBuffer,
  530.     PRPC_MESSAGE _pRpcMessage,
  531.     DWORD *_pdwStubPhase);
  532. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_fileSize_Proxy( 
  533.     IXMLDocument2 * This,
  534.     /* [out][retval] */ BSTR *p);
  535. void __RPC_STUB IXMLDocument2_get_fileSize_Stub(
  536.     IRpcStubBuffer *This,
  537.     IRpcChannelBuffer *_pRpcChannelBuffer,
  538.     PRPC_MESSAGE _pRpcMessage,
  539.     DWORD *_pdwStubPhase);
  540. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_fileModifiedDate_Proxy( 
  541.     IXMLDocument2 * This,
  542.     /* [out][retval] */ BSTR *p);
  543. void __RPC_STUB IXMLDocument2_get_fileModifiedDate_Stub(
  544.     IRpcStubBuffer *This,
  545.     IRpcChannelBuffer *_pRpcChannelBuffer,
  546.     PRPC_MESSAGE _pRpcMessage,
  547.     DWORD *_pdwStubPhase);
  548. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_fileUpdatedDate_Proxy( 
  549.     IXMLDocument2 * This,
  550.     /* [out][retval] */ BSTR *p);
  551. void __RPC_STUB IXMLDocument2_get_fileUpdatedDate_Stub(
  552.     IRpcStubBuffer *This,
  553.     IRpcChannelBuffer *_pRpcChannelBuffer,
  554.     PRPC_MESSAGE _pRpcMessage,
  555.     DWORD *_pdwStubPhase);
  556. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_URL_Proxy( 
  557.     IXMLDocument2 * This,
  558.     /* [out][retval] */ BSTR *p);
  559. void __RPC_STUB IXMLDocument2_get_URL_Stub(
  560.     IRpcStubBuffer *This,
  561.     IRpcChannelBuffer *_pRpcChannelBuffer,
  562.     PRPC_MESSAGE _pRpcMessage,
  563.     DWORD *_pdwStubPhase);
  564. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_put_URL_Proxy( 
  565.     IXMLDocument2 * This,
  566.     /* [in] */ BSTR p);
  567. void __RPC_STUB IXMLDocument2_put_URL_Stub(
  568.     IRpcStubBuffer *This,
  569.     IRpcChannelBuffer *_pRpcChannelBuffer,
  570.     PRPC_MESSAGE _pRpcMessage,
  571.     DWORD *_pdwStubPhase);
  572. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_mimeType_Proxy( 
  573.     IXMLDocument2 * This,
  574.     /* [out][retval] */ BSTR *p);
  575. void __RPC_STUB IXMLDocument2_get_mimeType_Stub(
  576.     IRpcStubBuffer *This,
  577.     IRpcChannelBuffer *_pRpcChannelBuffer,
  578.     PRPC_MESSAGE _pRpcMessage,
  579.     DWORD *_pdwStubPhase);
  580. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_readyState_Proxy( 
  581.     IXMLDocument2 * This,
  582.     /* [out][retval] */ long *pl);
  583. void __RPC_STUB IXMLDocument2_get_readyState_Stub(
  584.     IRpcStubBuffer *This,
  585.     IRpcChannelBuffer *_pRpcChannelBuffer,
  586.     PRPC_MESSAGE _pRpcMessage,
  587.     DWORD *_pdwStubPhase);
  588. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_charset_Proxy( 
  589.     IXMLDocument2 * This,
  590.     /* [out][retval] */ BSTR *p);
  591. void __RPC_STUB IXMLDocument2_get_charset_Stub(
  592.     IRpcStubBuffer *This,
  593.     IRpcChannelBuffer *_pRpcChannelBuffer,
  594.     PRPC_MESSAGE _pRpcMessage,
  595.     DWORD *_pdwStubPhase);
  596. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_put_charset_Proxy( 
  597.     IXMLDocument2 * This,
  598.     /* [in] */ BSTR p);
  599. void __RPC_STUB IXMLDocument2_put_charset_Stub(
  600.     IRpcStubBuffer *This,
  601.     IRpcChannelBuffer *_pRpcChannelBuffer,
  602.     PRPC_MESSAGE _pRpcMessage,
  603.     DWORD *_pdwStubPhase);
  604. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_version_Proxy( 
  605.     IXMLDocument2 * This,
  606.     /* [out][retval] */ BSTR *p);
  607. void __RPC_STUB IXMLDocument2_get_version_Stub(
  608.     IRpcStubBuffer *This,
  609.     IRpcChannelBuffer *_pRpcChannelBuffer,
  610.     PRPC_MESSAGE _pRpcMessage,
  611.     DWORD *_pdwStubPhase);
  612. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_doctype_Proxy( 
  613.     IXMLDocument2 * This,
  614.     /* [out][retval] */ BSTR *p);
  615. void __RPC_STUB IXMLDocument2_get_doctype_Stub(
  616.     IRpcStubBuffer *This,
  617.     IRpcChannelBuffer *_pRpcChannelBuffer,
  618.     PRPC_MESSAGE _pRpcMessage,
  619.     DWORD *_pdwStubPhase);
  620. /* [id][hidden][restricted][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_dtdURL_Proxy( 
  621.     IXMLDocument2 * This,
  622.     /* [out][retval] */ BSTR *p);
  623. void __RPC_STUB IXMLDocument2_get_dtdURL_Stub(
  624.     IRpcStubBuffer *This,
  625.     IRpcChannelBuffer *_pRpcChannelBuffer,
  626.     PRPC_MESSAGE _pRpcMessage,
  627.     DWORD *_pdwStubPhase);
  628. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_createElement_Proxy( 
  629.     IXMLDocument2 * This,
  630.     /* [in] */ VARIANT vType,
  631.     /* [in][optional] */ VARIANT var1,
  632.     /* [out][retval] */ IXMLElement2 **ppElem);
  633. void __RPC_STUB IXMLDocument2_createElement_Stub(
  634.     IRpcStubBuffer *This,
  635.     IRpcChannelBuffer *_pRpcChannelBuffer,
  636.     PRPC_MESSAGE _pRpcMessage,
  637.     DWORD *_pdwStubPhase);
  638. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_get_async_Proxy( 
  639.     IXMLDocument2 * This,
  640.     /* [out][retval] */ VARIANT_BOOL *pf);
  641. void __RPC_STUB IXMLDocument2_get_async_Stub(
  642.     IRpcStubBuffer *This,
  643.     IRpcChannelBuffer *_pRpcChannelBuffer,
  644.     PRPC_MESSAGE _pRpcMessage,
  645.     DWORD *_pdwStubPhase);
  646. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDocument2_put_async_Proxy( 
  647.     IXMLDocument2 * This,
  648.     /* [in] */ VARIANT_BOOL f);
  649. void __RPC_STUB IXMLDocument2_put_async_Stub(
  650.     IRpcStubBuffer *This,
  651.     IRpcChannelBuffer *_pRpcChannelBuffer,
  652.     PRPC_MESSAGE _pRpcMessage,
  653.     DWORD *_pdwStubPhase);
  654. #endif  /* __IXMLDocument2_INTERFACE_DEFINED__ */
  655. #ifndef __IXMLElement_INTERFACE_DEFINED__
  656. #define __IXMLElement_INTERFACE_DEFINED__
  657. /* interface IXMLElement */
  658. /* [helpstring][hidden][oleautomation][dual][uuid][object][local] */ 
  659. EXTERN_C const IID IID_IXMLElement;
  660. #if defined(__cplusplus) && !defined(CINTERFACE)
  661.     
  662.     MIDL_INTERFACE("3F7F31AC-E15F-11d0-9C25-00C04FC99C8E")
  663.     IXMLElement : public IDispatch
  664.     {
  665.     public:
  666.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_tagName( 
  667.             /* [out][retval] */ BSTR *p) = 0;
  668.         
  669.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_tagName( 
  670.             /* [in] */ BSTR p) = 0;
  671.         
  672.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_parent( 
  673.             /* [out][retval] */ IXMLElement **ppParent) = 0;
  674.         
  675.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setAttribute( 
  676.             /* [in] */ BSTR strPropertyName,
  677.             /* [in] */ VARIANT PropertyValue) = 0;
  678.         
  679.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getAttribute( 
  680.             /* [in] */ BSTR strPropertyName,
  681.             /* [out][retval] */ VARIANT *PropertyValue) = 0;
  682.         
  683.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeAttribute( 
  684.             /* [in] */ BSTR strPropertyName) = 0;
  685.         
  686.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_children( 
  687.             /* [out][retval] */ IXMLElementCollection **pp) = 0;
  688.         
  689.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_type( 
  690.             /* [out][retval] */ long *plType) = 0;
  691.         
  692.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_text( 
  693.             /* [out][retval] */ BSTR *p) = 0;
  694.         
  695.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_text( 
  696.             /* [in] */ BSTR p) = 0;
  697.         
  698.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE addChild( 
  699.             /* [in] */ IXMLElement *pChildElem,
  700.             long lIndex,
  701.             long lReserved) = 0;
  702.         
  703.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeChild( 
  704.             /* [in] */ IXMLElement *pChildElem) = 0;
  705.         
  706.     };
  707.     
  708. #else  /* C style interface */
  709.     typedef struct IXMLElementVtbl
  710.     {
  711.         BEGIN_INTERFACE
  712.         
  713.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  714.             IXMLElement * This,
  715.             /* [in] */ REFIID riid,
  716.             /* [iid_is][out] */ void **ppvObject);
  717.         
  718.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  719.             IXMLElement * This);
  720.         
  721.         ULONG ( STDMETHODCALLTYPE *Release )( 
  722.             IXMLElement * This);
  723.         
  724.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  725.             IXMLElement * This,
  726.             /* [out] */ UINT *pctinfo);
  727.         
  728.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  729.             IXMLElement * This,
  730.             /* [in] */ UINT iTInfo,
  731.             /* [in] */ LCID lcid,
  732.             /* [out] */ ITypeInfo **ppTInfo);
  733.         
  734.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  735.             IXMLElement * This,
  736.             /* [in] */ REFIID riid,
  737.             /* [size_is][in] */ LPOLESTR *rgszNames,
  738.             /* [in] */ UINT cNames,
  739.             /* [in] */ LCID lcid,
  740.             /* [size_is][out] */ DISPID *rgDispId);
  741.         
  742.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  743.             IXMLElement * This,
  744.             /* [in] */ DISPID dispIdMember,
  745.             /* [in] */ REFIID riid,
  746.             /* [in] */ LCID lcid,
  747.             /* [in] */ WORD wFlags,
  748.             /* [out][in] */ DISPPARAMS *pDispParams,
  749.             /* [out] */ VARIANT *pVarResult,
  750.             /* [out] */ EXCEPINFO *pExcepInfo,
  751.             /* [out] */ UINT *puArgErr);
  752.         
  753.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_tagName )( 
  754.             IXMLElement * This,
  755.             /* [out][retval] */ BSTR *p);
  756.         
  757.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_tagName )( 
  758.             IXMLElement * This,
  759.             /* [in] */ BSTR p);
  760.         
  761.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_parent )( 
  762.             IXMLElement * This,
  763.             /* [out][retval] */ IXMLElement **ppParent);
  764.         
  765.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setAttribute )( 
  766.             IXMLElement * This,
  767.             /* [in] */ BSTR strPropertyName,
  768.             /* [in] */ VARIANT PropertyValue);
  769.         
  770.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getAttribute )( 
  771.             IXMLElement * This,
  772.             /* [in] */ BSTR strPropertyName,
  773.             /* [out][retval] */ VARIANT *PropertyValue);
  774.         
  775.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeAttribute )( 
  776.             IXMLElement * This,
  777.             /* [in] */ BSTR strPropertyName);
  778.         
  779.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_children )( 
  780.             IXMLElement * This,
  781.             /* [out][retval] */ IXMLElementCollection **pp);
  782.         
  783.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_type )( 
  784.             IXMLElement * This,
  785.             /* [out][retval] */ long *plType);
  786.         
  787.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_text )( 
  788.             IXMLElement * This,
  789.             /* [out][retval] */ BSTR *p);
  790.         
  791.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_text )( 
  792.             IXMLElement * This,
  793.             /* [in] */ BSTR p);
  794.         
  795.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *addChild )( 
  796.             IXMLElement * This,
  797.             /* [in] */ IXMLElement *pChildElem,
  798.             long lIndex,
  799.             long lReserved);
  800.         
  801.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeChild )( 
  802.             IXMLElement * This,
  803.             /* [in] */ IXMLElement *pChildElem);
  804.         
  805.         END_INTERFACE
  806.     } IXMLElementVtbl;
  807.     interface IXMLElement
  808.     {
  809.         CONST_VTBL struct IXMLElementVtbl *lpVtbl;
  810.     };
  811.     
  812. #ifdef COBJMACROS
  813. #define IXMLElement_QueryInterface(This,riid,ppvObject)
  814.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  815. #define IXMLElement_AddRef(This)
  816.     (This)->lpVtbl -> AddRef(This)
  817. #define IXMLElement_Release(This)
  818.     (This)->lpVtbl -> Release(This)
  819. #define IXMLElement_GetTypeInfoCount(This,pctinfo)
  820.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  821. #define IXMLElement_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  822.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  823. #define IXMLElement_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  824.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  825. #define IXMLElement_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  826.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  827. #define IXMLElement_get_tagName(This,p)
  828.     (This)->lpVtbl -> get_tagName(This,p)
  829. #define IXMLElement_put_tagName(This,p)
  830.     (This)->lpVtbl -> put_tagName(This,p)
  831. #define IXMLElement_get_parent(This,ppParent)
  832.     (This)->lpVtbl -> get_parent(This,ppParent)
  833. #define IXMLElement_setAttribute(This,strPropertyName,PropertyValue)
  834.     (This)->lpVtbl -> setAttribute(This,strPropertyName,PropertyValue)
  835. #define IXMLElement_getAttribute(This,strPropertyName,PropertyValue)
  836.     (This)->lpVtbl -> getAttribute(This,strPropertyName,PropertyValue)
  837. #define IXMLElement_removeAttribute(This,strPropertyName)
  838.     (This)->lpVtbl -> removeAttribute(This,strPropertyName)
  839. #define IXMLElement_get_children(This,pp)
  840.     (This)->lpVtbl -> get_children(This,pp)
  841. #define IXMLElement_get_type(This,plType)
  842.     (This)->lpVtbl -> get_type(This,plType)
  843. #define IXMLElement_get_text(This,p)
  844.     (This)->lpVtbl -> get_text(This,p)
  845. #define IXMLElement_put_text(This,p)
  846.     (This)->lpVtbl -> put_text(This,p)
  847. #define IXMLElement_addChild(This,pChildElem,lIndex,lReserved)
  848.     (This)->lpVtbl -> addChild(This,pChildElem,lIndex,lReserved)
  849. #define IXMLElement_removeChild(This,pChildElem)
  850.     (This)->lpVtbl -> removeChild(This,pChildElem)
  851. #endif /* COBJMACROS */
  852. #endif  /* C style interface */
  853. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_tagName_Proxy( 
  854.     IXMLElement * This,
  855.     /* [out][retval] */ BSTR *p);
  856. void __RPC_STUB IXMLElement_get_tagName_Stub(
  857.     IRpcStubBuffer *This,
  858.     IRpcChannelBuffer *_pRpcChannelBuffer,
  859.     PRPC_MESSAGE _pRpcMessage,
  860.     DWORD *_pdwStubPhase);
  861. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLElement_put_tagName_Proxy( 
  862.     IXMLElement * This,
  863.     /* [in] */ BSTR p);
  864. void __RPC_STUB IXMLElement_put_tagName_Stub(
  865.     IRpcStubBuffer *This,
  866.     IRpcChannelBuffer *_pRpcChannelBuffer,
  867.     PRPC_MESSAGE _pRpcMessage,
  868.     DWORD *_pdwStubPhase);
  869. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_parent_Proxy( 
  870.     IXMLElement * This,
  871.     /* [out][retval] */ IXMLElement **ppParent);
  872. void __RPC_STUB IXMLElement_get_parent_Stub(
  873.     IRpcStubBuffer *This,
  874.     IRpcChannelBuffer *_pRpcChannelBuffer,
  875.     PRPC_MESSAGE _pRpcMessage,
  876.     DWORD *_pdwStubPhase);
  877. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_setAttribute_Proxy( 
  878.     IXMLElement * This,
  879.     /* [in] */ BSTR strPropertyName,
  880.     /* [in] */ VARIANT PropertyValue);
  881. void __RPC_STUB IXMLElement_setAttribute_Stub(
  882.     IRpcStubBuffer *This,
  883.     IRpcChannelBuffer *_pRpcChannelBuffer,
  884.     PRPC_MESSAGE _pRpcMessage,
  885.     DWORD *_pdwStubPhase);
  886. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_getAttribute_Proxy( 
  887.     IXMLElement * This,
  888.     /* [in] */ BSTR strPropertyName,
  889.     /* [out][retval] */ VARIANT *PropertyValue);
  890. void __RPC_STUB IXMLElement_getAttribute_Stub(
  891.     IRpcStubBuffer *This,
  892.     IRpcChannelBuffer *_pRpcChannelBuffer,
  893.     PRPC_MESSAGE _pRpcMessage,
  894.     DWORD *_pdwStubPhase);
  895. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_removeAttribute_Proxy( 
  896.     IXMLElement * This,
  897.     /* [in] */ BSTR strPropertyName);
  898. void __RPC_STUB IXMLElement_removeAttribute_Stub(
  899.     IRpcStubBuffer *This,
  900.     IRpcChannelBuffer *_pRpcChannelBuffer,
  901.     PRPC_MESSAGE _pRpcMessage,
  902.     DWORD *_pdwStubPhase);
  903. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_children_Proxy( 
  904.     IXMLElement * This,
  905.     /* [out][retval] */ IXMLElementCollection **pp);
  906. void __RPC_STUB IXMLElement_get_children_Stub(
  907.     IRpcStubBuffer *This,
  908.     IRpcChannelBuffer *_pRpcChannelBuffer,
  909.     PRPC_MESSAGE _pRpcMessage,
  910.     DWORD *_pdwStubPhase);
  911. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_type_Proxy( 
  912.     IXMLElement * This,
  913.     /* [out][retval] */ long *plType);
  914. void __RPC_STUB IXMLElement_get_type_Stub(
  915.     IRpcStubBuffer *This,
  916.     IRpcChannelBuffer *_pRpcChannelBuffer,
  917.     PRPC_MESSAGE _pRpcMessage,
  918.     DWORD *_pdwStubPhase);
  919. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement_get_text_Proxy( 
  920.     IXMLElement * This,
  921.     /* [out][retval] */ BSTR *p);
  922. void __RPC_STUB IXMLElement_get_text_Stub(
  923.     IRpcStubBuffer *This,
  924.     IRpcChannelBuffer *_pRpcChannelBuffer,
  925.     PRPC_MESSAGE _pRpcMessage,
  926.     DWORD *_pdwStubPhase);
  927. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLElement_put_text_Proxy( 
  928.     IXMLElement * This,
  929.     /* [in] */ BSTR p);
  930. void __RPC_STUB IXMLElement_put_text_Stub(
  931.     IRpcStubBuffer *This,
  932.     IRpcChannelBuffer *_pRpcChannelBuffer,
  933.     PRPC_MESSAGE _pRpcMessage,
  934.     DWORD *_pdwStubPhase);
  935. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_addChild_Proxy( 
  936.     IXMLElement * This,
  937.     /* [in] */ IXMLElement *pChildElem,
  938.     long lIndex,
  939.     long lReserved);
  940. void __RPC_STUB IXMLElement_addChild_Stub(
  941.     IRpcStubBuffer *This,
  942.     IRpcChannelBuffer *_pRpcChannelBuffer,
  943.     PRPC_MESSAGE _pRpcMessage,
  944.     DWORD *_pdwStubPhase);
  945. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement_removeChild_Proxy( 
  946.     IXMLElement * This,
  947.     /* [in] */ IXMLElement *pChildElem);
  948. void __RPC_STUB IXMLElement_removeChild_Stub(
  949.     IRpcStubBuffer *This,
  950.     IRpcChannelBuffer *_pRpcChannelBuffer,
  951.     PRPC_MESSAGE _pRpcMessage,
  952.     DWORD *_pdwStubPhase);
  953. #endif  /* __IXMLElement_INTERFACE_DEFINED__ */
  954. #ifndef __IXMLElement2_INTERFACE_DEFINED__
  955. #define __IXMLElement2_INTERFACE_DEFINED__
  956. /* interface IXMLElement2 */
  957. /* [helpstring][hidden][oleautomation][dual][uuid][object][local] */ 
  958. EXTERN_C const IID IID_IXMLElement2;
  959. #if defined(__cplusplus) && !defined(CINTERFACE)
  960.     
  961.     MIDL_INTERFACE("2B8DE2FF-8D2D-11d1-B2FC-00C04FD915A9")
  962.     IXMLElement2 : public IDispatch
  963.     {
  964.     public:
  965.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_tagName( 
  966.             /* [out][retval] */ BSTR *p) = 0;
  967.         
  968.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_tagName( 
  969.             /* [in] */ BSTR p) = 0;
  970.         
  971.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_parent( 
  972.             /* [out][retval] */ IXMLElement2 **ppParent) = 0;
  973.         
  974.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setAttribute( 
  975.             /* [in] */ BSTR strPropertyName,
  976.             /* [in] */ VARIANT PropertyValue) = 0;
  977.         
  978.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getAttribute( 
  979.             /* [in] */ BSTR strPropertyName,
  980.             /* [out][retval] */ VARIANT *PropertyValue) = 0;
  981.         
  982.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeAttribute( 
  983.             /* [in] */ BSTR strPropertyName) = 0;
  984.         
  985.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_children( 
  986.             /* [out][retval] */ IXMLElementCollection **pp) = 0;
  987.         
  988.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_type( 
  989.             /* [out][retval] */ long *plType) = 0;
  990.         
  991.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_text( 
  992.             /* [out][retval] */ BSTR *p) = 0;
  993.         
  994.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_text( 
  995.             /* [in] */ BSTR p) = 0;
  996.         
  997.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE addChild( 
  998.             /* [in] */ IXMLElement2 *pChildElem,
  999.             long lIndex,
  1000.             long lReserved) = 0;
  1001.         
  1002.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeChild( 
  1003.             /* [in] */ IXMLElement2 *pChildElem) = 0;
  1004.         
  1005.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_attributes( 
  1006.             /* [out][retval] */ IXMLElementCollection **pp) = 0;
  1007.         
  1008.     };
  1009.     
  1010. #else  /* C style interface */
  1011.     typedef struct IXMLElement2Vtbl
  1012.     {
  1013.         BEGIN_INTERFACE
  1014.         
  1015.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1016.             IXMLElement2 * This,
  1017.             /* [in] */ REFIID riid,
  1018.             /* [iid_is][out] */ void **ppvObject);
  1019.         
  1020.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1021.             IXMLElement2 * This);
  1022.         
  1023.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1024.             IXMLElement2 * This);
  1025.         
  1026.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1027.             IXMLElement2 * This,
  1028.             /* [out] */ UINT *pctinfo);
  1029.         
  1030.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1031.             IXMLElement2 * This,
  1032.             /* [in] */ UINT iTInfo,
  1033.             /* [in] */ LCID lcid,
  1034.             /* [out] */ ITypeInfo **ppTInfo);
  1035.         
  1036.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1037.             IXMLElement2 * This,
  1038.             /* [in] */ REFIID riid,
  1039.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1040.             /* [in] */ UINT cNames,
  1041.             /* [in] */ LCID lcid,
  1042.             /* [size_is][out] */ DISPID *rgDispId);
  1043.         
  1044.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1045.             IXMLElement2 * This,
  1046.             /* [in] */ DISPID dispIdMember,
  1047.             /* [in] */ REFIID riid,
  1048.             /* [in] */ LCID lcid,
  1049.             /* [in] */ WORD wFlags,
  1050.             /* [out][in] */ DISPPARAMS *pDispParams,
  1051.             /* [out] */ VARIANT *pVarResult,
  1052.             /* [out] */ EXCEPINFO *pExcepInfo,
  1053.             /* [out] */ UINT *puArgErr);
  1054.         
  1055.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_tagName )( 
  1056.             IXMLElement2 * This,
  1057.             /* [out][retval] */ BSTR *p);
  1058.         
  1059.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_tagName )( 
  1060.             IXMLElement2 * This,
  1061.             /* [in] */ BSTR p);
  1062.         
  1063.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_parent )( 
  1064.             IXMLElement2 * This,
  1065.             /* [out][retval] */ IXMLElement2 **ppParent);
  1066.         
  1067.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setAttribute )( 
  1068.             IXMLElement2 * This,
  1069.             /* [in] */ BSTR strPropertyName,
  1070.             /* [in] */ VARIANT PropertyValue);
  1071.         
  1072.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getAttribute )( 
  1073.             IXMLElement2 * This,
  1074.             /* [in] */ BSTR strPropertyName,
  1075.             /* [out][retval] */ VARIANT *PropertyValue);
  1076.         
  1077.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeAttribute )( 
  1078.             IXMLElement2 * This,
  1079.             /* [in] */ BSTR strPropertyName);
  1080.         
  1081.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_children )( 
  1082.             IXMLElement2 * This,
  1083.             /* [out][retval] */ IXMLElementCollection **pp);
  1084.         
  1085.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_type )( 
  1086.             IXMLElement2 * This,
  1087.             /* [out][retval] */ long *plType);
  1088.         
  1089.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_text )( 
  1090.             IXMLElement2 * This,
  1091.             /* [out][retval] */ BSTR *p);
  1092.         
  1093.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_text )( 
  1094.             IXMLElement2 * This,
  1095.             /* [in] */ BSTR p);
  1096.         
  1097.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *addChild )( 
  1098.             IXMLElement2 * This,
  1099.             /* [in] */ IXMLElement2 *pChildElem,
  1100.             long lIndex,
  1101.             long lReserved);
  1102.         
  1103.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeChild )( 
  1104.             IXMLElement2 * This,
  1105.             /* [in] */ IXMLElement2 *pChildElem);
  1106.         
  1107.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_attributes )( 
  1108.             IXMLElement2 * This,
  1109.             /* [out][retval] */ IXMLElementCollection **pp);
  1110.         
  1111.         END_INTERFACE
  1112.     } IXMLElement2Vtbl;
  1113.     interface IXMLElement2
  1114.     {
  1115.         CONST_VTBL struct IXMLElement2Vtbl *lpVtbl;
  1116.     };
  1117.     
  1118. #ifdef COBJMACROS
  1119. #define IXMLElement2_QueryInterface(This,riid,ppvObject)
  1120.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1121. #define IXMLElement2_AddRef(This)
  1122.     (This)->lpVtbl -> AddRef(This)
  1123. #define IXMLElement2_Release(This)
  1124.     (This)->lpVtbl -> Release(This)
  1125. #define IXMLElement2_GetTypeInfoCount(This,pctinfo)
  1126.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1127. #define IXMLElement2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1128.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1129. #define IXMLElement2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1130.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1131. #define IXMLElement2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1132.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1133. #define IXMLElement2_get_tagName(This,p)
  1134.     (This)->lpVtbl -> get_tagName(This,p)
  1135. #define IXMLElement2_put_tagName(This,p)
  1136.     (This)->lpVtbl -> put_tagName(This,p)
  1137. #define IXMLElement2_get_parent(This,ppParent)
  1138.     (This)->lpVtbl -> get_parent(This,ppParent)
  1139. #define IXMLElement2_setAttribute(This,strPropertyName,PropertyValue)
  1140.     (This)->lpVtbl -> setAttribute(This,strPropertyName,PropertyValue)
  1141. #define IXMLElement2_getAttribute(This,strPropertyName,PropertyValue)
  1142.     (This)->lpVtbl -> getAttribute(This,strPropertyName,PropertyValue)
  1143. #define IXMLElement2_removeAttribute(This,strPropertyName)
  1144.     (This)->lpVtbl -> removeAttribute(This,strPropertyName)
  1145. #define IXMLElement2_get_children(This,pp)
  1146.     (This)->lpVtbl -> get_children(This,pp)
  1147. #define IXMLElement2_get_type(This,plType)
  1148.     (This)->lpVtbl -> get_type(This,plType)
  1149. #define IXMLElement2_get_text(This,p)
  1150.     (This)->lpVtbl -> get_text(This,p)
  1151. #define IXMLElement2_put_text(This,p)
  1152.     (This)->lpVtbl -> put_text(This,p)
  1153. #define IXMLElement2_addChild(This,pChildElem,lIndex,lReserved)
  1154.     (This)->lpVtbl -> addChild(This,pChildElem,lIndex,lReserved)
  1155. #define IXMLElement2_removeChild(This,pChildElem)
  1156.     (This)->lpVtbl -> removeChild(This,pChildElem)
  1157. #define IXMLElement2_get_attributes(This,pp)
  1158.     (This)->lpVtbl -> get_attributes(This,pp)
  1159. #endif /* COBJMACROS */
  1160. #endif  /* C style interface */
  1161. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_tagName_Proxy( 
  1162.     IXMLElement2 * This,
  1163.     /* [out][retval] */ BSTR *p);
  1164. void __RPC_STUB IXMLElement2_get_tagName_Stub(
  1165.     IRpcStubBuffer *This,
  1166.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1167.     PRPC_MESSAGE _pRpcMessage,
  1168.     DWORD *_pdwStubPhase);
  1169. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLElement2_put_tagName_Proxy( 
  1170.     IXMLElement2 * This,
  1171.     /* [in] */ BSTR p);
  1172. void __RPC_STUB IXMLElement2_put_tagName_Stub(
  1173.     IRpcStubBuffer *This,
  1174.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1175.     PRPC_MESSAGE _pRpcMessage,
  1176.     DWORD *_pdwStubPhase);
  1177. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_parent_Proxy( 
  1178.     IXMLElement2 * This,
  1179.     /* [out][retval] */ IXMLElement2 **ppParent);
  1180. void __RPC_STUB IXMLElement2_get_parent_Stub(
  1181.     IRpcStubBuffer *This,
  1182.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1183.     PRPC_MESSAGE _pRpcMessage,
  1184.     DWORD *_pdwStubPhase);
  1185. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_setAttribute_Proxy( 
  1186.     IXMLElement2 * This,
  1187.     /* [in] */ BSTR strPropertyName,
  1188.     /* [in] */ VARIANT PropertyValue);
  1189. void __RPC_STUB IXMLElement2_setAttribute_Stub(
  1190.     IRpcStubBuffer *This,
  1191.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1192.     PRPC_MESSAGE _pRpcMessage,
  1193.     DWORD *_pdwStubPhase);
  1194. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_getAttribute_Proxy( 
  1195.     IXMLElement2 * This,
  1196.     /* [in] */ BSTR strPropertyName,
  1197.     /* [out][retval] */ VARIANT *PropertyValue);
  1198. void __RPC_STUB IXMLElement2_getAttribute_Stub(
  1199.     IRpcStubBuffer *This,
  1200.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1201.     PRPC_MESSAGE _pRpcMessage,
  1202.     DWORD *_pdwStubPhase);
  1203. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_removeAttribute_Proxy( 
  1204.     IXMLElement2 * This,
  1205.     /* [in] */ BSTR strPropertyName);
  1206. void __RPC_STUB IXMLElement2_removeAttribute_Stub(
  1207.     IRpcStubBuffer *This,
  1208.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1209.     PRPC_MESSAGE _pRpcMessage,
  1210.     DWORD *_pdwStubPhase);
  1211. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_children_Proxy( 
  1212.     IXMLElement2 * This,
  1213.     /* [out][retval] */ IXMLElementCollection **pp);
  1214. void __RPC_STUB IXMLElement2_get_children_Stub(
  1215.     IRpcStubBuffer *This,
  1216.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1217.     PRPC_MESSAGE _pRpcMessage,
  1218.     DWORD *_pdwStubPhase);
  1219. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_type_Proxy( 
  1220.     IXMLElement2 * This,
  1221.     /* [out][retval] */ long *plType);
  1222. void __RPC_STUB IXMLElement2_get_type_Stub(
  1223.     IRpcStubBuffer *This,
  1224.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1225.     PRPC_MESSAGE _pRpcMessage,
  1226.     DWORD *_pdwStubPhase);
  1227. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_text_Proxy( 
  1228.     IXMLElement2 * This,
  1229.     /* [out][retval] */ BSTR *p);
  1230. void __RPC_STUB IXMLElement2_get_text_Stub(
  1231.     IRpcStubBuffer *This,
  1232.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1233.     PRPC_MESSAGE _pRpcMessage,
  1234.     DWORD *_pdwStubPhase);
  1235. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLElement2_put_text_Proxy( 
  1236.     IXMLElement2 * This,
  1237.     /* [in] */ BSTR p);
  1238. void __RPC_STUB IXMLElement2_put_text_Stub(
  1239.     IRpcStubBuffer *This,
  1240.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1241.     PRPC_MESSAGE _pRpcMessage,
  1242.     DWORD *_pdwStubPhase);
  1243. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_addChild_Proxy( 
  1244.     IXMLElement2 * This,
  1245.     /* [in] */ IXMLElement2 *pChildElem,
  1246.     long lIndex,
  1247.     long lReserved);
  1248. void __RPC_STUB IXMLElement2_addChild_Stub(
  1249.     IRpcStubBuffer *This,
  1250.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1251.     PRPC_MESSAGE _pRpcMessage,
  1252.     DWORD *_pdwStubPhase);
  1253. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLElement2_removeChild_Proxy( 
  1254.     IXMLElement2 * This,
  1255.     /* [in] */ IXMLElement2 *pChildElem);
  1256. void __RPC_STUB IXMLElement2_removeChild_Stub(
  1257.     IRpcStubBuffer *This,
  1258.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1259.     PRPC_MESSAGE _pRpcMessage,
  1260.     DWORD *_pdwStubPhase);
  1261. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLElement2_get_attributes_Proxy( 
  1262.     IXMLElement2 * This,
  1263.     /* [out][retval] */ IXMLElementCollection **pp);
  1264. void __RPC_STUB IXMLElement2_get_attributes_Stub(
  1265.     IRpcStubBuffer *This,
  1266.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1267.     PRPC_MESSAGE _pRpcMessage,
  1268.     DWORD *_pdwStubPhase);
  1269. #endif  /* __IXMLElement2_INTERFACE_DEFINED__ */
  1270. #ifndef __IXMLAttribute_INTERFACE_DEFINED__
  1271. #define __IXMLAttribute_INTERFACE_DEFINED__
  1272. /* interface IXMLAttribute */
  1273. /* [helpstring][hidden][oleautomation][dual][uuid][object][local] */ 
  1274. EXTERN_C const IID IID_IXMLAttribute;
  1275. #if defined(__cplusplus) && !defined(CINTERFACE)
  1276.     
  1277.     MIDL_INTERFACE("D4D4A0FC-3B73-11d1-B2B4-00C04FB92596")
  1278.     IXMLAttribute : public IDispatch
  1279.     {
  1280.     public:
  1281.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_name( 
  1282.             /* [out][retval] */ BSTR *n) = 0;
  1283.         
  1284.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_value( 
  1285.             /* [out][retval] */ BSTR *v) = 0;
  1286.         
  1287.     };
  1288.     
  1289. #else  /* C style interface */
  1290.     typedef struct IXMLAttributeVtbl
  1291.     {
  1292.         BEGIN_INTERFACE
  1293.         
  1294.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1295.             IXMLAttribute * This,
  1296.             /* [in] */ REFIID riid,
  1297.             /* [iid_is][out] */ void **ppvObject);
  1298.         
  1299.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1300.             IXMLAttribute * This);
  1301.         
  1302.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1303.             IXMLAttribute * This);
  1304.         
  1305.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1306.             IXMLAttribute * This,
  1307.             /* [out] */ UINT *pctinfo);
  1308.         
  1309.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1310.             IXMLAttribute * This,
  1311.             /* [in] */ UINT iTInfo,
  1312.             /* [in] */ LCID lcid,
  1313.             /* [out] */ ITypeInfo **ppTInfo);
  1314.         
  1315.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1316.             IXMLAttribute * This,
  1317.             /* [in] */ REFIID riid,
  1318.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1319.             /* [in] */ UINT cNames,
  1320.             /* [in] */ LCID lcid,
  1321.             /* [size_is][out] */ DISPID *rgDispId);
  1322.         
  1323.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1324.             IXMLAttribute * This,
  1325.             /* [in] */ DISPID dispIdMember,
  1326.             /* [in] */ REFIID riid,
  1327.             /* [in] */ LCID lcid,
  1328.             /* [in] */ WORD wFlags,
  1329.             /* [out][in] */ DISPPARAMS *pDispParams,
  1330.             /* [out] */ VARIANT *pVarResult,
  1331.             /* [out] */ EXCEPINFO *pExcepInfo,
  1332.             /* [out] */ UINT *puArgErr);
  1333.         
  1334.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_name )( 
  1335.             IXMLAttribute * This,
  1336.             /* [out][retval] */ BSTR *n);
  1337.         
  1338.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_value )( 
  1339.             IXMLAttribute * This,
  1340.             /* [out][retval] */ BSTR *v);
  1341.         
  1342.         END_INTERFACE
  1343.     } IXMLAttributeVtbl;
  1344.     interface IXMLAttribute
  1345.     {
  1346.         CONST_VTBL struct IXMLAttributeVtbl *lpVtbl;
  1347.     };
  1348.     
  1349. #ifdef COBJMACROS
  1350. #define IXMLAttribute_QueryInterface(This,riid,ppvObject)
  1351.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1352. #define IXMLAttribute_AddRef(This)
  1353.     (This)->lpVtbl -> AddRef(This)
  1354. #define IXMLAttribute_Release(This)
  1355.     (This)->lpVtbl -> Release(This)
  1356. #define IXMLAttribute_GetTypeInfoCount(This,pctinfo)
  1357.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1358. #define IXMLAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1359.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1360. #define IXMLAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1361.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1362. #define IXMLAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1363.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1364. #define IXMLAttribute_get_name(This,n)
  1365.     (This)->lpVtbl -> get_name(This,n)
  1366. #define IXMLAttribute_get_value(This,v)
  1367.     (This)->lpVtbl -> get_value(This,v)
  1368. #endif /* COBJMACROS */
  1369. #endif  /* C style interface */
  1370. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLAttribute_get_name_Proxy( 
  1371.     IXMLAttribute * This,
  1372.     /* [out][retval] */ BSTR *n);
  1373. void __RPC_STUB IXMLAttribute_get_name_Stub(
  1374.     IRpcStubBuffer *This,
  1375.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1376.     PRPC_MESSAGE _pRpcMessage,
  1377.     DWORD *_pdwStubPhase);
  1378. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLAttribute_get_value_Proxy( 
  1379.     IXMLAttribute * This,
  1380.     /* [out][retval] */ BSTR *v);
  1381. void __RPC_STUB IXMLAttribute_get_value_Stub(
  1382.     IRpcStubBuffer *This,
  1383.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1384.     PRPC_MESSAGE _pRpcMessage,
  1385.     DWORD *_pdwStubPhase);
  1386. #endif  /* __IXMLAttribute_INTERFACE_DEFINED__ */
  1387. #ifndef __IXMLError_INTERFACE_DEFINED__
  1388. #define __IXMLError_INTERFACE_DEFINED__
  1389. /* interface IXMLError */
  1390. /* [helpstring][hidden][uuid][object][local] */ 
  1391. EXTERN_C const IID IID_IXMLError;
  1392. #if defined(__cplusplus) && !defined(CINTERFACE)
  1393.     
  1394.     MIDL_INTERFACE("948C5AD3-C58D-11d0-9C0B-00C04FC99C8E")
  1395.     IXMLError : public IUnknown
  1396.     {
  1397.     public:
  1398.         virtual HRESULT STDMETHODCALLTYPE GetErrorInfo( 
  1399.             XML_ERROR *pErrorReturn) = 0;
  1400.         
  1401.     };
  1402.     
  1403. #else  /* C style interface */
  1404.     typedef struct IXMLErrorVtbl
  1405.     {
  1406.         BEGIN_INTERFACE
  1407.         
  1408.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1409.             IXMLError * This,
  1410.             /* [in] */ REFIID riid,
  1411.             /* [iid_is][out] */ void **ppvObject);
  1412.         
  1413.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1414.             IXMLError * This);
  1415.         
  1416.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1417.             IXMLError * This);
  1418.         
  1419.         HRESULT ( STDMETHODCALLTYPE *GetErrorInfo )( 
  1420.             IXMLError * This,
  1421.             XML_ERROR *pErrorReturn);
  1422.         
  1423.         END_INTERFACE
  1424.     } IXMLErrorVtbl;
  1425.     interface IXMLError
  1426.     {
  1427.         CONST_VTBL struct IXMLErrorVtbl *lpVtbl;
  1428.     };
  1429.     
  1430. #ifdef COBJMACROS
  1431. #define IXMLError_QueryInterface(This,riid,ppvObject)
  1432.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1433. #define IXMLError_AddRef(This)
  1434.     (This)->lpVtbl -> AddRef(This)
  1435. #define IXMLError_Release(This)
  1436.     (This)->lpVtbl -> Release(This)
  1437. #define IXMLError_GetErrorInfo(This,pErrorReturn)
  1438.     (This)->lpVtbl -> GetErrorInfo(This,pErrorReturn)
  1439. #endif /* COBJMACROS */
  1440. #endif  /* C style interface */
  1441. HRESULT STDMETHODCALLTYPE IXMLError_GetErrorInfo_Proxy( 
  1442.     IXMLError * This,
  1443.     XML_ERROR *pErrorReturn);
  1444. void __RPC_STUB IXMLError_GetErrorInfo_Stub(
  1445.     IRpcStubBuffer *This,
  1446.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1447.     PRPC_MESSAGE _pRpcMessage,
  1448.     DWORD *_pdwStubPhase);
  1449. #endif  /* __IXMLError_INTERFACE_DEFINED__ */
  1450. #ifndef __IXMLDOMSelection_INTERFACE_DEFINED__
  1451. #define __IXMLDOMSelection_INTERFACE_DEFINED__
  1452. /* interface IXMLDOMSelection */
  1453. /* [unique][nonextensible][oleautomation][dual][uuid][object][local] */ 
  1454. EXTERN_C const IID IID_IXMLDOMSelection;
  1455. #if defined(__cplusplus) && !defined(CINTERFACE)
  1456.     
  1457.     MIDL_INTERFACE("AA634FC7-5888-44a7-A257-3A47150D3A0E")
  1458.     IXMLDOMSelection : public IXMLDOMNodeList
  1459.     {
  1460.     public:
  1461.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_expr( 
  1462.             /* [retval][out] */ BSTR *expression) = 0;
  1463.         
  1464.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_expr( 
  1465.             /* [in] */ BSTR expression) = 0;
  1466.         
  1467.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_context( 
  1468.             /* [retval][out] */ IXMLDOMNode **ppNode) = 0;
  1469.         
  1470.         virtual /* [helpstring][id][propputref] */ HRESULT STDMETHODCALLTYPE putref_context( 
  1471.             /* [in] */ IXMLDOMNode *pNode) = 0;
  1472.         
  1473.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE peekNode( 
  1474.             /* [retval][out] */ IXMLDOMNode **ppNode) = 0;
  1475.         
  1476.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE matches( 
  1477.             /* [in] */ IXMLDOMNode *pNode,
  1478.             /* [retval][out] */ IXMLDOMNode **ppNode) = 0;
  1479.         
  1480.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeNext( 
  1481.             /* [retval][out] */ IXMLDOMNode **ppNode) = 0;
  1482.         
  1483.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE removeAll( void) = 0;
  1484.         
  1485.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE clone( 
  1486.             /* [retval][out] */ IXMLDOMSelection **ppNode) = 0;
  1487.         
  1488.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getProperty( 
  1489.             /* [in] */ BSTR name,
  1490.             /* [retval][out] */ VARIANT *value) = 0;
  1491.         
  1492.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setProperty( 
  1493.             /* [in] */ BSTR name,
  1494.             /* [in] */ VARIANT value) = 0;
  1495.         
  1496.     };
  1497.     
  1498. #else  /* C style interface */
  1499.     typedef struct IXMLDOMSelectionVtbl
  1500.     {
  1501.         BEGIN_INTERFACE
  1502.         
  1503.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1504.             IXMLDOMSelection * This,
  1505.             /* [in] */ REFIID riid,
  1506.             /* [iid_is][out] */ void **ppvObject);
  1507.         
  1508.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1509.             IXMLDOMSelection * This);
  1510.         
  1511.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1512.             IXMLDOMSelection * This);
  1513.         
  1514.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1515.             IXMLDOMSelection * This,
  1516.             /* [out] */ UINT *pctinfo);
  1517.         
  1518.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1519.             IXMLDOMSelection * This,
  1520.             /* [in] */ UINT iTInfo,
  1521.             /* [in] */ LCID lcid,
  1522.             /* [out] */ ITypeInfo **ppTInfo);
  1523.         
  1524.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1525.             IXMLDOMSelection * This,
  1526.             /* [in] */ REFIID riid,
  1527.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1528.             /* [in] */ UINT cNames,
  1529.             /* [in] */ LCID lcid,
  1530.             /* [size_is][out] */ DISPID *rgDispId);
  1531.         
  1532.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1533.             IXMLDOMSelection * This,
  1534.             /* [in] */ DISPID dispIdMember,
  1535.             /* [in] */ REFIID riid,
  1536.             /* [in] */ LCID lcid,
  1537.             /* [in] */ WORD wFlags,
  1538.             /* [out][in] */ DISPPARAMS *pDispParams,
  1539.             /* [out] */ VARIANT *pVarResult,
  1540.             /* [out] */ EXCEPINFO *pExcepInfo,
  1541.             /* [out] */ UINT *puArgErr);
  1542.         
  1543.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_item )( 
  1544.             IXMLDOMSelection * This,
  1545.             /* [in] */ long index,
  1546.             /* [retval][out] */ IXMLDOMNode **listItem);
  1547.         
  1548.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_length )( 
  1549.             IXMLDOMSelection * This,
  1550.             /* [retval][out] */ long *listLength);
  1551.         
  1552.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *nextNode )( 
  1553.             IXMLDOMSelection * This,
  1554.             /* [retval][out] */ IXMLDOMNode **nextItem);
  1555.         
  1556.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *reset )( 
  1557.             IXMLDOMSelection * This);
  1558.         
  1559.         /* [id][hidden][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE *get__newEnum )( 
  1560.             IXMLDOMSelection * This,
  1561.             /* [out][retval] */ IUnknown **ppUnk);
  1562.         
  1563.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_expr )( 
  1564.             IXMLDOMSelection * This,
  1565.             /* [retval][out] */ BSTR *expression);
  1566.         
  1567.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_expr )( 
  1568.             IXMLDOMSelection * This,
  1569.             /* [in] */ BSTR expression);
  1570.         
  1571.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_context )( 
  1572.             IXMLDOMSelection * This,
  1573.             /* [retval][out] */ IXMLDOMNode **ppNode);
  1574.         
  1575.         /* [helpstring][id][propputref] */ HRESULT ( STDMETHODCALLTYPE *putref_context )( 
  1576.             IXMLDOMSelection * This,
  1577.             /* [in] */ IXMLDOMNode *pNode);
  1578.         
  1579.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *peekNode )( 
  1580.             IXMLDOMSelection * This,
  1581.             /* [retval][out] */ IXMLDOMNode **ppNode);
  1582.         
  1583.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *matches )( 
  1584.             IXMLDOMSelection * This,
  1585.             /* [in] */ IXMLDOMNode *pNode,
  1586.             /* [retval][out] */ IXMLDOMNode **ppNode);
  1587.         
  1588.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeNext )( 
  1589.             IXMLDOMSelection * This,
  1590.             /* [retval][out] */ IXMLDOMNode **ppNode);
  1591.         
  1592.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *removeAll )( 
  1593.             IXMLDOMSelection * This);
  1594.         
  1595.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *clone )( 
  1596.             IXMLDOMSelection * This,
  1597.             /* [retval][out] */ IXMLDOMSelection **ppNode);
  1598.         
  1599.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getProperty )( 
  1600.             IXMLDOMSelection * This,
  1601.             /* [in] */ BSTR name,
  1602.             /* [retval][out] */ VARIANT *value);
  1603.         
  1604.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setProperty )( 
  1605.             IXMLDOMSelection * This,
  1606.             /* [in] */ BSTR name,
  1607.             /* [in] */ VARIANT value);
  1608.         
  1609.         END_INTERFACE
  1610.     } IXMLDOMSelectionVtbl;
  1611.     interface IXMLDOMSelection
  1612.     {
  1613.         CONST_VTBL struct IXMLDOMSelectionVtbl *lpVtbl;
  1614.     };
  1615.     
  1616. #ifdef COBJMACROS
  1617. #define IXMLDOMSelection_QueryInterface(This,riid,ppvObject)
  1618.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1619. #define IXMLDOMSelection_AddRef(This)
  1620.     (This)->lpVtbl -> AddRef(This)
  1621. #define IXMLDOMSelection_Release(This)
  1622.     (This)->lpVtbl -> Release(This)
  1623. #define IXMLDOMSelection_GetTypeInfoCount(This,pctinfo)
  1624.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1625. #define IXMLDOMSelection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1626.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1627. #define IXMLDOMSelection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1628.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1629. #define IXMLDOMSelection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1630.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1631. #define IXMLDOMSelection_get_item(This,index,listItem)
  1632.     (This)->lpVtbl -> get_item(This,index,listItem)
  1633. #define IXMLDOMSelection_get_length(This,listLength)
  1634.     (This)->lpVtbl -> get_length(This,listLength)
  1635. #define IXMLDOMSelection_nextNode(This,nextItem)
  1636.     (This)->lpVtbl -> nextNode(This,nextItem)
  1637. #define IXMLDOMSelection_reset(This)
  1638.     (This)->lpVtbl -> reset(This)
  1639. #define IXMLDOMSelection_get__newEnum(This,ppUnk)
  1640.     (This)->lpVtbl -> get__newEnum(This,ppUnk)
  1641. #define IXMLDOMSelection_get_expr(This,expression)
  1642.     (This)->lpVtbl -> get_expr(This,expression)
  1643. #define IXMLDOMSelection_put_expr(This,expression)
  1644.     (This)->lpVtbl -> put_expr(This,expression)
  1645. #define IXMLDOMSelection_get_context(This,ppNode)
  1646.     (This)->lpVtbl -> get_context(This,ppNode)
  1647. #define IXMLDOMSelection_putref_context(This,pNode)
  1648.     (This)->lpVtbl -> putref_context(This,pNode)
  1649. #define IXMLDOMSelection_peekNode(This,ppNode)
  1650.     (This)->lpVtbl -> peekNode(This,ppNode)
  1651. #define IXMLDOMSelection_matches(This,pNode,ppNode)
  1652.     (This)->lpVtbl -> matches(This,pNode,ppNode)
  1653. #define IXMLDOMSelection_removeNext(This,ppNode)
  1654.     (This)->lpVtbl -> removeNext(This,ppNode)
  1655. #define IXMLDOMSelection_removeAll(This)
  1656.     (This)->lpVtbl -> removeAll(This)
  1657. #define IXMLDOMSelection_clone(This,ppNode)
  1658.     (This)->lpVtbl -> clone(This,ppNode)
  1659. #define IXMLDOMSelection_getProperty(This,name,value)
  1660.     (This)->lpVtbl -> getProperty(This,name,value)
  1661. #define IXMLDOMSelection_setProperty(This,name,value)
  1662.     (This)->lpVtbl -> setProperty(This,name,value)
  1663. #endif /* COBJMACROS */
  1664. #endif  /* C style interface */
  1665. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_get_expr_Proxy( 
  1666.     IXMLDOMSelection * This,
  1667.     /* [retval][out] */ BSTR *expression);
  1668. void __RPC_STUB IXMLDOMSelection_get_expr_Stub(
  1669.     IRpcStubBuffer *This,
  1670.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1671.     PRPC_MESSAGE _pRpcMessage,
  1672.     DWORD *_pdwStubPhase);
  1673. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_put_expr_Proxy( 
  1674.     IXMLDOMSelection * This,
  1675.     /* [in] */ BSTR expression);
  1676. void __RPC_STUB IXMLDOMSelection_put_expr_Stub(
  1677.     IRpcStubBuffer *This,
  1678.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1679.     PRPC_MESSAGE _pRpcMessage,
  1680.     DWORD *_pdwStubPhase);
  1681. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_get_context_Proxy( 
  1682.     IXMLDOMSelection * This,
  1683.     /* [retval][out] */ IXMLDOMNode **ppNode);
  1684. void __RPC_STUB IXMLDOMSelection_get_context_Stub(
  1685.     IRpcStubBuffer *This,
  1686.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1687.     PRPC_MESSAGE _pRpcMessage,
  1688.     DWORD *_pdwStubPhase);
  1689. /* [helpstring][id][propputref] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_putref_context_Proxy( 
  1690.     IXMLDOMSelection * This,
  1691.     /* [in] */ IXMLDOMNode *pNode);
  1692. void __RPC_STUB IXMLDOMSelection_putref_context_Stub(
  1693.     IRpcStubBuffer *This,
  1694.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1695.     PRPC_MESSAGE _pRpcMessage,
  1696.     DWORD *_pdwStubPhase);
  1697. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_peekNode_Proxy( 
  1698.     IXMLDOMSelection * This,
  1699.     /* [retval][out] */ IXMLDOMNode **ppNode);
  1700. void __RPC_STUB IXMLDOMSelection_peekNode_Stub(
  1701.     IRpcStubBuffer *This,
  1702.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1703.     PRPC_MESSAGE _pRpcMessage,
  1704.     DWORD *_pdwStubPhase);
  1705. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_matches_Proxy( 
  1706.     IXMLDOMSelection * This,
  1707.     /* [in] */ IXMLDOMNode *pNode,
  1708.     /* [retval][out] */ IXMLDOMNode **ppNode);
  1709. void __RPC_STUB IXMLDOMSelection_matches_Stub(
  1710.     IRpcStubBuffer *This,
  1711.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1712.     PRPC_MESSAGE _pRpcMessage,
  1713.     DWORD *_pdwStubPhase);
  1714. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_removeNext_Proxy( 
  1715.     IXMLDOMSelection * This,
  1716.     /* [retval][out] */ IXMLDOMNode **ppNode);
  1717. void __RPC_STUB IXMLDOMSelection_removeNext_Stub(
  1718.     IRpcStubBuffer *This,
  1719.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1720.     PRPC_MESSAGE _pRpcMessage,
  1721.     DWORD *_pdwStubPhase);
  1722. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_removeAll_Proxy( 
  1723.     IXMLDOMSelection * This);
  1724. void __RPC_STUB IXMLDOMSelection_removeAll_Stub(
  1725.     IRpcStubBuffer *This,
  1726.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1727.     PRPC_MESSAGE _pRpcMessage,
  1728.     DWORD *_pdwStubPhase);
  1729. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_clone_Proxy( 
  1730.     IXMLDOMSelection * This,
  1731.     /* [retval][out] */ IXMLDOMSelection **ppNode);
  1732. void __RPC_STUB IXMLDOMSelection_clone_Stub(
  1733.     IRpcStubBuffer *This,
  1734.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1735.     PRPC_MESSAGE _pRpcMessage,
  1736.     DWORD *_pdwStubPhase);
  1737. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_getProperty_Proxy( 
  1738.     IXMLDOMSelection * This,
  1739.     /* [in] */ BSTR name,
  1740.     /* [retval][out] */ VARIANT *value);
  1741. void __RPC_STUB IXMLDOMSelection_getProperty_Stub(
  1742.     IRpcStubBuffer *This,
  1743.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1744.     PRPC_MESSAGE _pRpcMessage,
  1745.     DWORD *_pdwStubPhase);
  1746. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLDOMSelection_setProperty_Proxy( 
  1747.     IXMLDOMSelection * This,
  1748.     /* [in] */ BSTR name,
  1749.     /* [in] */ VARIANT value);
  1750. void __RPC_STUB IXMLDOMSelection_setProperty_Stub(
  1751.     IRpcStubBuffer *This,
  1752.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1753.     PRPC_MESSAGE _pRpcMessage,
  1754.     DWORD *_pdwStubPhase);
  1755. #endif  /* __IXMLDOMSelection_INTERFACE_DEFINED__ */
  1756. #ifndef __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__
  1757. #define __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__
  1758. /* dispinterface XMLDOMDocumentEvents */
  1759. /* [uuid][hidden] */ 
  1760. EXTERN_C const IID DIID_XMLDOMDocumentEvents;
  1761. #if defined(__cplusplus) && !defined(CINTERFACE)
  1762.     MIDL_INTERFACE("3efaa427-272f-11d2-836f-0000f87a7782")
  1763.     XMLDOMDocumentEvents : public IDispatch
  1764.     {
  1765.     };
  1766.     
  1767. #else  /* C style interface */
  1768.     typedef struct XMLDOMDocumentEventsVtbl
  1769.     {
  1770.         BEGIN_INTERFACE
  1771.         
  1772.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1773.             XMLDOMDocumentEvents * This,
  1774.             /* [in] */ REFIID riid,
  1775.             /* [iid_is][out] */ void **ppvObject);
  1776.         
  1777.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1778.             XMLDOMDocumentEvents * This);
  1779.         
  1780.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1781.             XMLDOMDocumentEvents * This);
  1782.         
  1783.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1784.             XMLDOMDocumentEvents * This,
  1785.             /* [out] */ UINT *pctinfo);
  1786.         
  1787.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1788.             XMLDOMDocumentEvents * This,
  1789.             /* [in] */ UINT iTInfo,
  1790.             /* [in] */ LCID lcid,
  1791.             /* [out] */ ITypeInfo **ppTInfo);
  1792.         
  1793.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1794.             XMLDOMDocumentEvents * This,
  1795.             /* [in] */ REFIID riid,
  1796.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1797.             /* [in] */ UINT cNames,
  1798.             /* [in] */ LCID lcid,
  1799.             /* [size_is][out] */ DISPID *rgDispId);
  1800.         
  1801.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1802.             XMLDOMDocumentEvents * This,
  1803.             /* [in] */ DISPID dispIdMember,
  1804.             /* [in] */ REFIID riid,
  1805.             /* [in] */ LCID lcid,
  1806.             /* [in] */ WORD wFlags,
  1807.             /* [out][in] */ DISPPARAMS *pDispParams,
  1808.             /* [out] */ VARIANT *pVarResult,
  1809.             /* [out] */ EXCEPINFO *pExcepInfo,
  1810.             /* [out] */ UINT *puArgErr);
  1811.         
  1812.         END_INTERFACE
  1813.     } XMLDOMDocumentEventsVtbl;
  1814.     interface XMLDOMDocumentEvents
  1815.     {
  1816.         CONST_VTBL struct XMLDOMDocumentEventsVtbl *lpVtbl;
  1817.     };
  1818.     
  1819. #ifdef COBJMACROS
  1820. #define XMLDOMDocumentEvents_QueryInterface(This,riid,ppvObject)
  1821.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1822. #define XMLDOMDocumentEvents_AddRef(This)
  1823.     (This)->lpVtbl -> AddRef(This)
  1824. #define XMLDOMDocumentEvents_Release(This)
  1825.     (This)->lpVtbl -> Release(This)
  1826. #define XMLDOMDocumentEvents_GetTypeInfoCount(This,pctinfo)
  1827.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1828. #define XMLDOMDocumentEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1829.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1830. #define XMLDOMDocumentEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1831.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1832. #define XMLDOMDocumentEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1833.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1834. #endif /* COBJMACROS */
  1835. #endif  /* C style interface */
  1836. #endif  /* __XMLDOMDocumentEvents_DISPINTERFACE_DEFINED__ */
  1837. #ifndef __IDSOControl_INTERFACE_DEFINED__
  1838. #define __IDSOControl_INTERFACE_DEFINED__
  1839. /* interface IDSOControl */
  1840. /* [unique][helpstring][hidden][nonextensible][oleautomation][dual][uuid][object][local] */ 
  1841. EXTERN_C const IID IID_IDSOControl;
  1842. #if defined(__cplusplus) && !defined(CINTERFACE)
  1843.     
  1844.     MIDL_INTERFACE("310afa62-0575-11d2-9ca9-0060b0ec3d39")
  1845.     IDSOControl : public IDispatch
  1846.     {
  1847.     public:
  1848.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_XMLDocument( 
  1849.             /* [retval][out] */ IXMLDOMDocument **ppDoc) = 0;
  1850.         
  1851.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_XMLDocument( 
  1852.             /* [in] */ IXMLDOMDocument *ppDoc) = 0;
  1853.         
  1854.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_JavaDSOCompatible( 
  1855.             /* [retval][out] */ BOOL *fJavaDSOCompatible) = 0;
  1856.         
  1857.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_JavaDSOCompatible( 
  1858.             /* [in] */ BOOL fJavaDSOCompatible) = 0;
  1859.         
  1860.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_readyState( 
  1861.             /* [retval][out] */ long *state) = 0;
  1862.         
  1863.     };
  1864.     
  1865. #else  /* C style interface */
  1866.     typedef struct IDSOControlVtbl
  1867.     {
  1868.         BEGIN_INTERFACE
  1869.         
  1870.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1871.             IDSOControl * This,
  1872.             /* [in] */ REFIID riid,
  1873.             /* [iid_is][out] */ void **ppvObject);
  1874.         
  1875.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1876.             IDSOControl * This);
  1877.         
  1878.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1879.             IDSOControl * This);
  1880.         
  1881.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1882.             IDSOControl * This,
  1883.             /* [out] */ UINT *pctinfo);
  1884.         
  1885.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1886.             IDSOControl * This,
  1887.             /* [in] */ UINT iTInfo,
  1888.             /* [in] */ LCID lcid,
  1889.             /* [out] */ ITypeInfo **ppTInfo);
  1890.         
  1891.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1892.             IDSOControl * This,
  1893.             /* [in] */ REFIID riid,
  1894.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1895.             /* [in] */ UINT cNames,
  1896.             /* [in] */ LCID lcid,
  1897.             /* [size_is][out] */ DISPID *rgDispId);
  1898.         
  1899.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1900.             IDSOControl * This,
  1901.             /* [in] */ DISPID dispIdMember,
  1902.             /* [in] */ REFIID riid,
  1903.             /* [in] */ LCID lcid,
  1904.             /* [in] */ WORD wFlags,
  1905.             /* [out][in] */ DISPPARAMS *pDispParams,
  1906.             /* [out] */ VARIANT *pVarResult,
  1907.             /* [out] */ EXCEPINFO *pExcepInfo,
  1908.             /* [out] */ UINT *puArgErr);
  1909.         
  1910.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_XMLDocument )( 
  1911.             IDSOControl * This,
  1912.             /* [retval][out] */ IXMLDOMDocument **ppDoc);
  1913.         
  1914.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_XMLDocument )( 
  1915.             IDSOControl * This,
  1916.             /* [in] */ IXMLDOMDocument *ppDoc);
  1917.         
  1918.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_JavaDSOCompatible )( 
  1919.             IDSOControl * This,
  1920.             /* [retval][out] */ BOOL *fJavaDSOCompatible);
  1921.         
  1922.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_JavaDSOCompatible )( 
  1923.             IDSOControl * This,
  1924.             /* [in] */ BOOL fJavaDSOCompatible);
  1925.         
  1926.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  1927.             IDSOControl * This,
  1928.             /* [retval][out] */ long *state);
  1929.         
  1930.         END_INTERFACE
  1931.     } IDSOControlVtbl;
  1932.     interface IDSOControl
  1933.     {
  1934.         CONST_VTBL struct IDSOControlVtbl *lpVtbl;
  1935.     };
  1936.     
  1937. #ifdef COBJMACROS
  1938. #define IDSOControl_QueryInterface(This,riid,ppvObject)
  1939.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1940. #define IDSOControl_AddRef(This)
  1941.     (This)->lpVtbl -> AddRef(This)
  1942. #define IDSOControl_Release(This)
  1943.     (This)->lpVtbl -> Release(This)
  1944. #define IDSOControl_GetTypeInfoCount(This,pctinfo)
  1945.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1946. #define IDSOControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1947.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1948. #define IDSOControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1949.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1950. #define IDSOControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1951.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1952. #define IDSOControl_get_XMLDocument(This,ppDoc)
  1953.     (This)->lpVtbl -> get_XMLDocument(This,ppDoc)
  1954. #define IDSOControl_put_XMLDocument(This,ppDoc)
  1955.     (This)->lpVtbl -> put_XMLDocument(This,ppDoc)
  1956. #define IDSOControl_get_JavaDSOCompatible(This,fJavaDSOCompatible)
  1957.     (This)->lpVtbl -> get_JavaDSOCompatible(This,fJavaDSOCompatible)
  1958. #define IDSOControl_put_JavaDSOCompatible(This,fJavaDSOCompatible)
  1959.     (This)->lpVtbl -> put_JavaDSOCompatible(This,fJavaDSOCompatible)
  1960. #define IDSOControl_get_readyState(This,state)
  1961.     (This)->lpVtbl -> get_readyState(This,state)
  1962. #endif /* COBJMACROS */
  1963. #endif  /* C style interface */
  1964. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDSOControl_get_XMLDocument_Proxy( 
  1965.     IDSOControl * This,
  1966.     /* [retval][out] */ IXMLDOMDocument **ppDoc);
  1967. void __RPC_STUB IDSOControl_get_XMLDocument_Stub(
  1968.     IRpcStubBuffer *This,
  1969.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1970.     PRPC_MESSAGE _pRpcMessage,
  1971.     DWORD *_pdwStubPhase);
  1972. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IDSOControl_put_XMLDocument_Proxy( 
  1973.     IDSOControl * This,
  1974.     /* [in] */ IXMLDOMDocument *ppDoc);
  1975. void __RPC_STUB IDSOControl_put_XMLDocument_Stub(
  1976.     IRpcStubBuffer *This,
  1977.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1978.     PRPC_MESSAGE _pRpcMessage,
  1979.     DWORD *_pdwStubPhase);
  1980. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDSOControl_get_JavaDSOCompatible_Proxy( 
  1981.     IDSOControl * This,
  1982.     /* [retval][out] */ BOOL *fJavaDSOCompatible);
  1983. void __RPC_STUB IDSOControl_get_JavaDSOCompatible_Stub(
  1984.     IRpcStubBuffer *This,
  1985.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1986.     PRPC_MESSAGE _pRpcMessage,
  1987.     DWORD *_pdwStubPhase);
  1988. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IDSOControl_put_JavaDSOCompatible_Proxy( 
  1989.     IDSOControl * This,
  1990.     /* [in] */ BOOL fJavaDSOCompatible);
  1991. void __RPC_STUB IDSOControl_put_JavaDSOCompatible_Stub(
  1992.     IRpcStubBuffer *This,
  1993.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1994.     PRPC_MESSAGE _pRpcMessage,
  1995.     DWORD *_pdwStubPhase);
  1996. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IDSOControl_get_readyState_Proxy( 
  1997.     IDSOControl * This,
  1998.     /* [retval][out] */ long *state);
  1999. void __RPC_STUB IDSOControl_get_readyState_Stub(
  2000.     IRpcStubBuffer *This,
  2001.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2002.     PRPC_MESSAGE _pRpcMessage,
  2003.     DWORD *_pdwStubPhase);
  2004. #endif  /* __IDSOControl_INTERFACE_DEFINED__ */
  2005. #ifndef __IXMLHTTPRequest_INTERFACE_DEFINED__
  2006. #define __IXMLHTTPRequest_INTERFACE_DEFINED__
  2007. /* interface IXMLHTTPRequest */
  2008. /* [unique][helpstring][oleautomation][dual][uuid][object] */ 
  2009. EXTERN_C const IID IID_IXMLHTTPRequest;
  2010. #if defined(__cplusplus) && !defined(CINTERFACE)
  2011.     
  2012.     MIDL_INTERFACE("ED8C108D-4349-11D2-91A4-00C04F7969E8")
  2013.     IXMLHTTPRequest : public IDispatch
  2014.     {
  2015.     public:
  2016.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE open( 
  2017.             /* [in] */ BSTR bstrMethod,
  2018.             /* [in] */ BSTR bstrUrl,
  2019.             /* [optional][in] */ VARIANT varAsync,
  2020.             /* [optional][in] */ VARIANT bstrUser,
  2021.             /* [optional][in] */ VARIANT bstrPassword) = 0;
  2022.         
  2023.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setRequestHeader( 
  2024.             /* [in] */ BSTR bstrHeader,
  2025.             /* [in] */ BSTR bstrValue) = 0;
  2026.         
  2027.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getResponseHeader( 
  2028.             /* [in] */ BSTR bstrHeader,
  2029.             /* [retval][out] */ BSTR *pbstrValue) = 0;
  2030.         
  2031.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getAllResponseHeaders( 
  2032.             /* [retval][out] */ BSTR *pbstrHeaders) = 0;
  2033.         
  2034.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE send( 
  2035.             /* [optional][in] */ VARIANT varBody) = 0;
  2036.         
  2037.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE abort( void) = 0;
  2038.         
  2039.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_status( 
  2040.             /* [retval][out] */ long *plStatus) = 0;
  2041.         
  2042.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_statusText( 
  2043.             /* [retval][out] */ BSTR *pbstrStatus) = 0;
  2044.         
  2045.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_responseXML( 
  2046.             /* [retval][out] */ IDispatch **ppBody) = 0;
  2047.         
  2048.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_responseText( 
  2049.             /* [retval][out] */ BSTR *pbstrBody) = 0;
  2050.         
  2051.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_responseBody( 
  2052.             /* [retval][out] */ VARIANT *pvarBody) = 0;
  2053.         
  2054.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_responseStream( 
  2055.             /* [retval][out] */ VARIANT *pvarBody) = 0;
  2056.         
  2057.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_readyState( 
  2058.             /* [retval][out] */ long *plState) = 0;
  2059.         
  2060.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_onreadystatechange( 
  2061.             /* [in] */ IDispatch *pReadyStateSink) = 0;
  2062.         
  2063.     };
  2064.     
  2065. #else  /* C style interface */
  2066.     typedef struct IXMLHTTPRequestVtbl
  2067.     {
  2068.         BEGIN_INTERFACE
  2069.         
  2070.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2071.             IXMLHTTPRequest * This,
  2072.             /* [in] */ REFIID riid,
  2073.             /* [iid_is][out] */ void **ppvObject);
  2074.         
  2075.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2076.             IXMLHTTPRequest * This);
  2077.         
  2078.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2079.             IXMLHTTPRequest * This);
  2080.         
  2081.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2082.             IXMLHTTPRequest * This,
  2083.             /* [out] */ UINT *pctinfo);
  2084.         
  2085.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2086.             IXMLHTTPRequest * This,
  2087.             /* [in] */ UINT iTInfo,
  2088.             /* [in] */ LCID lcid,
  2089.             /* [out] */ ITypeInfo **ppTInfo);
  2090.         
  2091.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2092.             IXMLHTTPRequest * This,
  2093.             /* [in] */ REFIID riid,
  2094.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2095.             /* [in] */ UINT cNames,
  2096.             /* [in] */ LCID lcid,
  2097.             /* [size_is][out] */ DISPID *rgDispId);
  2098.         
  2099.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2100.             IXMLHTTPRequest * This,
  2101.             /* [in] */ DISPID dispIdMember,
  2102.             /* [in] */ REFIID riid,
  2103.             /* [in] */ LCID lcid,
  2104.             /* [in] */ WORD wFlags,
  2105.             /* [out][in] */ DISPPARAMS *pDispParams,
  2106.             /* [out] */ VARIANT *pVarResult,
  2107.             /* [out] */ EXCEPINFO *pExcepInfo,
  2108.             /* [out] */ UINT *puArgErr);
  2109.         
  2110.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *open )( 
  2111.             IXMLHTTPRequest * This,
  2112.             /* [in] */ BSTR bstrMethod,
  2113.             /* [in] */ BSTR bstrUrl,
  2114.             /* [optional][in] */ VARIANT varAsync,
  2115.             /* [optional][in] */ VARIANT bstrUser,
  2116.             /* [optional][in] */ VARIANT bstrPassword);
  2117.         
  2118.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setRequestHeader )( 
  2119.             IXMLHTTPRequest * This,
  2120.             /* [in] */ BSTR bstrHeader,
  2121.             /* [in] */ BSTR bstrValue);
  2122.         
  2123.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getResponseHeader )( 
  2124.             IXMLHTTPRequest * This,
  2125.             /* [in] */ BSTR bstrHeader,
  2126.             /* [retval][out] */ BSTR *pbstrValue);
  2127.         
  2128.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getAllResponseHeaders )( 
  2129.             IXMLHTTPRequest * This,
  2130.             /* [retval][out] */ BSTR *pbstrHeaders);
  2131.         
  2132.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *send )( 
  2133.             IXMLHTTPRequest * This,
  2134.             /* [optional][in] */ VARIANT varBody);
  2135.         
  2136.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *abort )( 
  2137.             IXMLHTTPRequest * This);
  2138.         
  2139.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_status )( 
  2140.             IXMLHTTPRequest * This,
  2141.             /* [retval][out] */ long *plStatus);
  2142.         
  2143.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_statusText )( 
  2144.             IXMLHTTPRequest * This,
  2145.             /* [retval][out] */ BSTR *pbstrStatus);
  2146.         
  2147.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseXML )( 
  2148.             IXMLHTTPRequest * This,
  2149.             /* [retval][out] */ IDispatch **ppBody);
  2150.         
  2151.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseText )( 
  2152.             IXMLHTTPRequest * This,
  2153.             /* [retval][out] */ BSTR *pbstrBody);
  2154.         
  2155.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseBody )( 
  2156.             IXMLHTTPRequest * This,
  2157.             /* [retval][out] */ VARIANT *pvarBody);
  2158.         
  2159.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseStream )( 
  2160.             IXMLHTTPRequest * This,
  2161.             /* [retval][out] */ VARIANT *pvarBody);
  2162.         
  2163.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  2164.             IXMLHTTPRequest * This,
  2165.             /* [retval][out] */ long *plState);
  2166.         
  2167.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onreadystatechange )( 
  2168.             IXMLHTTPRequest * This,
  2169.             /* [in] */ IDispatch *pReadyStateSink);
  2170.         
  2171.         END_INTERFACE
  2172.     } IXMLHTTPRequestVtbl;
  2173.     interface IXMLHTTPRequest
  2174.     {
  2175.         CONST_VTBL struct IXMLHTTPRequestVtbl *lpVtbl;
  2176.     };
  2177.     
  2178. #ifdef COBJMACROS
  2179. #define IXMLHTTPRequest_QueryInterface(This,riid,ppvObject)
  2180.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2181. #define IXMLHTTPRequest_AddRef(This)
  2182.     (This)->lpVtbl -> AddRef(This)
  2183. #define IXMLHTTPRequest_Release(This)
  2184.     (This)->lpVtbl -> Release(This)
  2185. #define IXMLHTTPRequest_GetTypeInfoCount(This,pctinfo)
  2186.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2187. #define IXMLHTTPRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2188.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2189. #define IXMLHTTPRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2190.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2191. #define IXMLHTTPRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2192.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2193. #define IXMLHTTPRequest_open(This,bstrMethod,bstrUrl,varAsync,bstrUser,bstrPassword)
  2194.     (This)->lpVtbl -> open(This,bstrMethod,bstrUrl,varAsync,bstrUser,bstrPassword)
  2195. #define IXMLHTTPRequest_setRequestHeader(This,bstrHeader,bstrValue)
  2196.     (This)->lpVtbl -> setRequestHeader(This,bstrHeader,bstrValue)
  2197. #define IXMLHTTPRequest_getResponseHeader(This,bstrHeader,pbstrValue)
  2198.     (This)->lpVtbl -> getResponseHeader(This,bstrHeader,pbstrValue)
  2199. #define IXMLHTTPRequest_getAllResponseHeaders(This,pbstrHeaders)
  2200.     (This)->lpVtbl -> getAllResponseHeaders(This,pbstrHeaders)
  2201. #define IXMLHTTPRequest_send(This,varBody)
  2202.     (This)->lpVtbl -> send(This,varBody)
  2203. #define IXMLHTTPRequest_abort(This)
  2204.     (This)->lpVtbl -> abort(This)
  2205. #define IXMLHTTPRequest_get_status(This,plStatus)
  2206.     (This)->lpVtbl -> get_status(This,plStatus)
  2207. #define IXMLHTTPRequest_get_statusText(This,pbstrStatus)
  2208.     (This)->lpVtbl -> get_statusText(This,pbstrStatus)
  2209. #define IXMLHTTPRequest_get_responseXML(This,ppBody)
  2210.     (This)->lpVtbl -> get_responseXML(This,ppBody)
  2211. #define IXMLHTTPRequest_get_responseText(This,pbstrBody)
  2212.     (This)->lpVtbl -> get_responseText(This,pbstrBody)
  2213. #define IXMLHTTPRequest_get_responseBody(This,pvarBody)
  2214.     (This)->lpVtbl -> get_responseBody(This,pvarBody)
  2215. #define IXMLHTTPRequest_get_responseStream(This,pvarBody)
  2216.     (This)->lpVtbl -> get_responseStream(This,pvarBody)
  2217. #define IXMLHTTPRequest_get_readyState(This,plState)
  2218.     (This)->lpVtbl -> get_readyState(This,plState)
  2219. #define IXMLHTTPRequest_put_onreadystatechange(This,pReadyStateSink)
  2220.     (This)->lpVtbl -> put_onreadystatechange(This,pReadyStateSink)
  2221. #endif /* COBJMACROS */
  2222. #endif  /* C style interface */
  2223. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_open_Proxy( 
  2224.     IXMLHTTPRequest * This,
  2225.     /* [in] */ BSTR bstrMethod,
  2226.     /* [in] */ BSTR bstrUrl,
  2227.     /* [optional][in] */ VARIANT varAsync,
  2228.     /* [optional][in] */ VARIANT bstrUser,
  2229.     /* [optional][in] */ VARIANT bstrPassword);
  2230. void __RPC_STUB IXMLHTTPRequest_open_Stub(
  2231.     IRpcStubBuffer *This,
  2232.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2233.     PRPC_MESSAGE _pRpcMessage,
  2234.     DWORD *_pdwStubPhase);
  2235. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_setRequestHeader_Proxy( 
  2236.     IXMLHTTPRequest * This,
  2237.     /* [in] */ BSTR bstrHeader,
  2238.     /* [in] */ BSTR bstrValue);
  2239. void __RPC_STUB IXMLHTTPRequest_setRequestHeader_Stub(
  2240.     IRpcStubBuffer *This,
  2241.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2242.     PRPC_MESSAGE _pRpcMessage,
  2243.     DWORD *_pdwStubPhase);
  2244. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_getResponseHeader_Proxy( 
  2245.     IXMLHTTPRequest * This,
  2246.     /* [in] */ BSTR bstrHeader,
  2247.     /* [retval][out] */ BSTR *pbstrValue);
  2248. void __RPC_STUB IXMLHTTPRequest_getResponseHeader_Stub(
  2249.     IRpcStubBuffer *This,
  2250.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2251.     PRPC_MESSAGE _pRpcMessage,
  2252.     DWORD *_pdwStubPhase);
  2253. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_getAllResponseHeaders_Proxy( 
  2254.     IXMLHTTPRequest * This,
  2255.     /* [retval][out] */ BSTR *pbstrHeaders);
  2256. void __RPC_STUB IXMLHTTPRequest_getAllResponseHeaders_Stub(
  2257.     IRpcStubBuffer *This,
  2258.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2259.     PRPC_MESSAGE _pRpcMessage,
  2260.     DWORD *_pdwStubPhase);
  2261. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_send_Proxy( 
  2262.     IXMLHTTPRequest * This,
  2263.     /* [optional][in] */ VARIANT varBody);
  2264. void __RPC_STUB IXMLHTTPRequest_send_Stub(
  2265.     IRpcStubBuffer *This,
  2266.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2267.     PRPC_MESSAGE _pRpcMessage,
  2268.     DWORD *_pdwStubPhase);
  2269. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_abort_Proxy( 
  2270.     IXMLHTTPRequest * This);
  2271. void __RPC_STUB IXMLHTTPRequest_abort_Stub(
  2272.     IRpcStubBuffer *This,
  2273.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2274.     PRPC_MESSAGE _pRpcMessage,
  2275.     DWORD *_pdwStubPhase);
  2276. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_get_status_Proxy( 
  2277.     IXMLHTTPRequest * This,
  2278.     /* [retval][out] */ long *plStatus);
  2279. void __RPC_STUB IXMLHTTPRequest_get_status_Stub(
  2280.     IRpcStubBuffer *This,
  2281.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2282.     PRPC_MESSAGE _pRpcMessage,
  2283.     DWORD *_pdwStubPhase);
  2284. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_get_statusText_Proxy( 
  2285.     IXMLHTTPRequest * This,
  2286.     /* [retval][out] */ BSTR *pbstrStatus);
  2287. void __RPC_STUB IXMLHTTPRequest_get_statusText_Stub(
  2288.     IRpcStubBuffer *This,
  2289.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2290.     PRPC_MESSAGE _pRpcMessage,
  2291.     DWORD *_pdwStubPhase);
  2292. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_get_responseXML_Proxy( 
  2293.     IXMLHTTPRequest * This,
  2294.     /* [retval][out] */ IDispatch **ppBody);
  2295. void __RPC_STUB IXMLHTTPRequest_get_responseXML_Stub(
  2296.     IRpcStubBuffer *This,
  2297.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2298.     PRPC_MESSAGE _pRpcMessage,
  2299.     DWORD *_pdwStubPhase);
  2300. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_get_responseText_Proxy( 
  2301.     IXMLHTTPRequest * This,
  2302.     /* [retval][out] */ BSTR *pbstrBody);
  2303. void __RPC_STUB IXMLHTTPRequest_get_responseText_Stub(
  2304.     IRpcStubBuffer *This,
  2305.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2306.     PRPC_MESSAGE _pRpcMessage,
  2307.     DWORD *_pdwStubPhase);
  2308. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_get_responseBody_Proxy( 
  2309.     IXMLHTTPRequest * This,
  2310.     /* [retval][out] */ VARIANT *pvarBody);
  2311. void __RPC_STUB IXMLHTTPRequest_get_responseBody_Stub(
  2312.     IRpcStubBuffer *This,
  2313.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2314.     PRPC_MESSAGE _pRpcMessage,
  2315.     DWORD *_pdwStubPhase);
  2316. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_get_responseStream_Proxy( 
  2317.     IXMLHTTPRequest * This,
  2318.     /* [retval][out] */ VARIANT *pvarBody);
  2319. void __RPC_STUB IXMLHTTPRequest_get_responseStream_Stub(
  2320.     IRpcStubBuffer *This,
  2321.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2322.     PRPC_MESSAGE _pRpcMessage,
  2323.     DWORD *_pdwStubPhase);
  2324. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_get_readyState_Proxy( 
  2325.     IXMLHTTPRequest * This,
  2326.     /* [retval][out] */ long *plState);
  2327. void __RPC_STUB IXMLHTTPRequest_get_readyState_Stub(
  2328.     IRpcStubBuffer *This,
  2329.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2330.     PRPC_MESSAGE _pRpcMessage,
  2331.     DWORD *_pdwStubPhase);
  2332. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IXMLHTTPRequest_put_onreadystatechange_Proxy( 
  2333.     IXMLHTTPRequest * This,
  2334.     /* [in] */ IDispatch *pReadyStateSink);
  2335. void __RPC_STUB IXMLHTTPRequest_put_onreadystatechange_Stub(
  2336.     IRpcStubBuffer *This,
  2337.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2338.     PRPC_MESSAGE _pRpcMessage,
  2339.     DWORD *_pdwStubPhase);
  2340. #endif  /* __IXMLHTTPRequest_INTERFACE_DEFINED__ */
  2341. #ifndef __IServerXMLHTTPRequest_INTERFACE_DEFINED__
  2342. #define __IServerXMLHTTPRequest_INTERFACE_DEFINED__
  2343. /* interface IServerXMLHTTPRequest */
  2344. /* [unique][helpstring][oleautomation][dual][uuid][object] */ 
  2345. EXTERN_C const IID IID_IServerXMLHTTPRequest;
  2346. #if defined(__cplusplus) && !defined(CINTERFACE)
  2347.     
  2348.     MIDL_INTERFACE("2e9196bf-13ba-4dd4-91ca-6c571f281495")
  2349.     IServerXMLHTTPRequest : public IXMLHTTPRequest
  2350.     {
  2351.     public:
  2352.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setTimeouts( 
  2353.             /* [in] */ long resolveTimeout,
  2354.             /* [in] */ long connectTimeout,
  2355.             /* [in] */ long sendTimeout,
  2356.             /* [in] */ long receiveTimeout) = 0;
  2357.         
  2358.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE waitForResponse( 
  2359.             /* [optional][in] */ VARIANT timeoutInSeconds,
  2360.             /* [retval][out] */ VARIANT_BOOL *isSuccessful) = 0;
  2361.         
  2362.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE getOption( 
  2363.             /* [in] */ SERVERXMLHTTP_OPTION option,
  2364.             /* [retval][out] */ VARIANT *value) = 0;
  2365.         
  2366.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE setOption( 
  2367.             /* [in] */ SERVERXMLHTTP_OPTION option,
  2368.             /* [in] */ VARIANT value) = 0;
  2369.         
  2370.     };
  2371.     
  2372. #else  /* C style interface */
  2373.     typedef struct IServerXMLHTTPRequestVtbl
  2374.     {
  2375.         BEGIN_INTERFACE
  2376.         
  2377.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2378.             IServerXMLHTTPRequest * This,
  2379.             /* [in] */ REFIID riid,
  2380.             /* [iid_is][out] */ void **ppvObject);
  2381.         
  2382.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2383.             IServerXMLHTTPRequest * This);
  2384.         
  2385.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2386.             IServerXMLHTTPRequest * This);
  2387.         
  2388.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2389.             IServerXMLHTTPRequest * This,
  2390.             /* [out] */ UINT *pctinfo);
  2391.         
  2392.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2393.             IServerXMLHTTPRequest * This,
  2394.             /* [in] */ UINT iTInfo,
  2395.             /* [in] */ LCID lcid,
  2396.             /* [out] */ ITypeInfo **ppTInfo);
  2397.         
  2398.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2399.             IServerXMLHTTPRequest * This,
  2400.             /* [in] */ REFIID riid,
  2401.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2402.             /* [in] */ UINT cNames,
  2403.             /* [in] */ LCID lcid,
  2404.             /* [size_is][out] */ DISPID *rgDispId);
  2405.         
  2406.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2407.             IServerXMLHTTPRequest * This,
  2408.             /* [in] */ DISPID dispIdMember,
  2409.             /* [in] */ REFIID riid,
  2410.             /* [in] */ LCID lcid,
  2411.             /* [in] */ WORD wFlags,
  2412.             /* [out][in] */ DISPPARAMS *pDispParams,
  2413.             /* [out] */ VARIANT *pVarResult,
  2414.             /* [out] */ EXCEPINFO *pExcepInfo,
  2415.             /* [out] */ UINT *puArgErr);
  2416.         
  2417.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *open )( 
  2418.             IServerXMLHTTPRequest * This,
  2419.             /* [in] */ BSTR bstrMethod,
  2420.             /* [in] */ BSTR bstrUrl,
  2421.             /* [optional][in] */ VARIANT varAsync,
  2422.             /* [optional][in] */ VARIANT bstrUser,
  2423.             /* [optional][in] */ VARIANT bstrPassword);
  2424.         
  2425.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setRequestHeader )( 
  2426.             IServerXMLHTTPRequest * This,
  2427.             /* [in] */ BSTR bstrHeader,
  2428.             /* [in] */ BSTR bstrValue);
  2429.         
  2430.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getResponseHeader )( 
  2431.             IServerXMLHTTPRequest * This,
  2432.             /* [in] */ BSTR bstrHeader,
  2433.             /* [retval][out] */ BSTR *pbstrValue);
  2434.         
  2435.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getAllResponseHeaders )( 
  2436.             IServerXMLHTTPRequest * This,
  2437.             /* [retval][out] */ BSTR *pbstrHeaders);
  2438.         
  2439.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *send )( 
  2440.             IServerXMLHTTPRequest * This,
  2441.             /* [optional][in] */ VARIANT varBody);
  2442.         
  2443.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *abort )( 
  2444.             IServerXMLHTTPRequest * This);
  2445.         
  2446.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_status )( 
  2447.             IServerXMLHTTPRequest * This,
  2448.             /* [retval][out] */ long *plStatus);
  2449.         
  2450.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_statusText )( 
  2451.             IServerXMLHTTPRequest * This,
  2452.             /* [retval][out] */ BSTR *pbstrStatus);
  2453.         
  2454.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseXML )( 
  2455.             IServerXMLHTTPRequest * This,
  2456.             /* [retval][out] */ IDispatch **ppBody);
  2457.         
  2458.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseText )( 
  2459.             IServerXMLHTTPRequest * This,
  2460.             /* [retval][out] */ BSTR *pbstrBody);
  2461.         
  2462.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseBody )( 
  2463.             IServerXMLHTTPRequest * This,
  2464.             /* [retval][out] */ VARIANT *pvarBody);
  2465.         
  2466.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_responseStream )( 
  2467.             IServerXMLHTTPRequest * This,
  2468.             /* [retval][out] */ VARIANT *pvarBody);
  2469.         
  2470.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  2471.             IServerXMLHTTPRequest * This,
  2472.             /* [retval][out] */ long *plState);
  2473.         
  2474.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onreadystatechange )( 
  2475.             IServerXMLHTTPRequest * This,
  2476.             /* [in] */ IDispatch *pReadyStateSink);
  2477.         
  2478.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setTimeouts )( 
  2479.             IServerXMLHTTPRequest * This,
  2480.             /* [in] */ long resolveTimeout,
  2481.             /* [in] */ long connectTimeout,
  2482.             /* [in] */ long sendTimeout,
  2483.             /* [in] */ long receiveTimeout);
  2484.         
  2485.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *waitForResponse )( 
  2486.             IServerXMLHTTPRequest * This,
  2487.             /* [optional][in] */ VARIANT timeoutInSeconds,
  2488.             /* [retval][out] */ VARIANT_BOOL *isSuccessful);
  2489.         
  2490.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *getOption )( 
  2491.             IServerXMLHTTPRequest * This,
  2492.             /* [in] */ SERVERXMLHTTP_OPTION option,
  2493.             /* [retval][out] */ VARIANT *value);
  2494.         
  2495.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *setOption )( 
  2496.             IServerXMLHTTPRequest * This,
  2497.             /* [in] */ SERVERXMLHTTP_OPTION option,
  2498.             /* [in] */ VARIANT value);
  2499.         
  2500.         END_INTERFACE
  2501.     } IServerXMLHTTPRequestVtbl;
  2502.     interface IServerXMLHTTPRequest
  2503.     {
  2504.         CONST_VTBL struct IServerXMLHTTPRequestVtbl *lpVtbl;
  2505.     };
  2506.     
  2507. #ifdef COBJMACROS
  2508. #define IServerXMLHTTPRequest_QueryInterface(This,riid,ppvObject)
  2509.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2510. #define IServerXMLHTTPRequest_AddRef(This)
  2511.     (This)->lpVtbl -> AddRef(This)
  2512. #define IServerXMLHTTPRequest_Release(This)
  2513.     (This)->lpVtbl -> Release(This)
  2514. #define IServerXMLHTTPRequest_GetTypeInfoCount(This,pctinfo)
  2515.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2516. #define IServerXMLHTTPRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2517.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2518. #define IServerXMLHTTPRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2519.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2520. #define IServerXMLHTTPRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2521.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2522. #define IServerXMLHTTPRequest_open(This,bstrMethod,bstrUrl,varAsync,bstrUser,bstrPassword)
  2523.     (This)->lpVtbl -> open(This,bstrMethod,bstrUrl,varAsync,bstrUser,bstrPassword)
  2524. #define IServerXMLHTTPRequest_setRequestHeader(This,bstrHeader,bstrValue)
  2525.     (This)->lpVtbl -> setRequestHeader(This,bstrHeader,bstrValue)
  2526. #define IServerXMLHTTPRequest_getResponseHeader(This,bstrHeader,pbstrValue)
  2527.     (This)->lpVtbl -> getResponseHeader(This,bstrHeader,pbstrValue)
  2528. #define IServerXMLHTTPRequest_getAllResponseHeaders(This,pbstrHeaders)
  2529.     (This)->lpVtbl -> getAllResponseHeaders(This,pbstrHeaders)
  2530. #define IServerXMLHTTPRequest_send(This,varBody)
  2531.     (This)->lpVtbl -> send(This,varBody)
  2532. #define IServerXMLHTTPRequest_abort(This)
  2533.     (This)->lpVtbl -> abort(This)
  2534. #define IServerXMLHTTPRequest_get_status(This,plStatus)
  2535.     (This)->lpVtbl -> get_status(This,plStatus)
  2536. #define IServerXMLHTTPRequest_get_statusText(This,pbstrStatus)
  2537.     (This)->lpVtbl -> get_statusText(This,pbstrStatus)
  2538. #define IServerXMLHTTPRequest_get_responseXML(This,ppBody)
  2539.     (This)->lpVtbl -> get_responseXML(This,ppBody)
  2540. #define IServerXMLHTTPRequest_get_responseText(This,pbstrBody)
  2541.     (This)->lpVtbl -> get_responseText(This,pbstrBody)
  2542. #define IServerXMLHTTPRequest_get_responseBody(This,pvarBody)
  2543.     (This)->lpVtbl -> get_responseBody(This,pvarBody)
  2544. #define IServerXMLHTTPRequest_get_responseStream(This,pvarBody)
  2545.     (This)->lpVtbl -> get_responseStream(This,pvarBody)
  2546. #define IServerXMLHTTPRequest_get_readyState(This,plState)
  2547.     (This)->lpVtbl -> get_readyState(This,plState)
  2548. #define IServerXMLHTTPRequest_put_onreadystatechange(This,pReadyStateSink)
  2549.     (This)->lpVtbl -> put_onreadystatechange(This,pReadyStateSink)
  2550. #define IServerXMLHTTPRequest_setTimeouts(This,resolveTimeout,connectTimeout,sendTimeout,receiveTimeout)
  2551.     (This)->lpVtbl -> setTimeouts(This,resolveTimeout,connectTimeout,sendTimeout,receiveTimeout)
  2552. #define IServerXMLHTTPRequest_waitForResponse(This,timeoutInSeconds,isSuccessful)
  2553.     (This)->lpVtbl -> waitForResponse(This,timeoutInSeconds,isSuccessful)
  2554. #define IServerXMLHTTPRequest_getOption(This,option,value)
  2555.     (This)->lpVtbl -> getOption(This,option,value)
  2556. #define IServerXMLHTTPRequest_setOption(This,option,value)
  2557.     (This)->lpVtbl -> setOption(This,option,value)
  2558. #endif /* COBJMACROS */
  2559. #endif  /* C style interface */
  2560. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IServerXMLHTTPRequest_setTimeouts_Proxy( 
  2561.     IServerXMLHTTPRequest * This,
  2562.     /* [in] */ long resolveTimeout,
  2563.     /* [in] */ long connectTimeout,
  2564.     /* [in] */ long sendTimeout,
  2565.     /* [in] */ long receiveTimeout);
  2566. void __RPC_STUB IServerXMLHTTPRequest_setTimeouts_Stub(
  2567.     IRpcStubBuffer *This,
  2568.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2569.     PRPC_MESSAGE _pRpcMessage,
  2570.     DWORD *_pdwStubPhase);
  2571. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IServerXMLHTTPRequest_waitForResponse_Proxy( 
  2572.     IServerXMLHTTPRequest * This,
  2573.     /* [optional][in] */ VARIANT timeoutInSeconds,
  2574.     /* [retval][out] */ VARIANT_BOOL *isSuccessful);
  2575. void __RPC_STUB IServerXMLHTTPRequest_waitForResponse_Stub(
  2576.     IRpcStubBuffer *This,
  2577.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2578.     PRPC_MESSAGE _pRpcMessage,
  2579.     DWORD *_pdwStubPhase);
  2580. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IServerXMLHTTPRequest_getOption_Proxy( 
  2581.     IServerXMLHTTPRequest * This,
  2582.     /* [in] */ SERVERXMLHTTP_OPTION option,
  2583.     /* [retval][out] */ VARIANT *value);
  2584. void __RPC_STUB IServerXMLHTTPRequest_getOption_Stub(
  2585.     IRpcStubBuffer *This,
  2586.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2587.     PRPC_MESSAGE _pRpcMessage,
  2588.     DWORD *_pdwStubPhase);
  2589. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IServerXMLHTTPRequest_setOption_Proxy( 
  2590.     IServerXMLHTTPRequest * This,
  2591.     /* [in] */ SERVERXMLHTTP_OPTION option,
  2592.     /* [in] */ VARIANT value);
  2593. void __RPC_STUB IServerXMLHTTPRequest_setOption_Stub(
  2594.     IRpcStubBuffer *This,
  2595.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2596.     PRPC_MESSAGE _pRpcMessage,
  2597.     DWORD *_pdwStubPhase);
  2598. #endif  /* __IServerXMLHTTPRequest_INTERFACE_DEFINED__ */
  2599. EXTERN_C const CLSID CLSID_DOMDocument;
  2600. #ifdef __cplusplus
  2601. class DECLSPEC_UUID("F6D90F11-9C73-11D3-B32E-00C04F990BB4")
  2602. DOMDocument;
  2603. #endif
  2604. EXTERN_C const CLSID CLSID_DOMDocument26;
  2605. #ifdef __cplusplus
  2606. class DECLSPEC_UUID("f5078f1b-c551-11d3-89b9-0000f81fe221")
  2607. DOMDocument26;
  2608. #endif
  2609. EXTERN_C const CLSID CLSID_DOMDocument30;
  2610. #ifdef __cplusplus
  2611. class DECLSPEC_UUID("f5078f32-c551-11d3-89b9-0000f81fe221")
  2612. DOMDocument30;
  2613. #endif
  2614. EXTERN_C const CLSID CLSID_FreeThreadedDOMDocument;
  2615. #ifdef __cplusplus
  2616. class DECLSPEC_UUID("F6D90F12-9C73-11D3-B32E-00C04F990BB4")
  2617. FreeThreadedDOMDocument;
  2618. #endif
  2619. EXTERN_C const CLSID CLSID_FreeThreadedDOMDocument26;
  2620. #ifdef __cplusplus
  2621. class DECLSPEC_UUID("f5078f1c-c551-11d3-89b9-0000f81fe221")
  2622. FreeThreadedDOMDocument26;
  2623. #endif
  2624. EXTERN_C const CLSID CLSID_FreeThreadedDOMDocument30;
  2625. #ifdef __cplusplus
  2626. class DECLSPEC_UUID("f5078f33-c551-11d3-89b9-0000f81fe221")
  2627. FreeThreadedDOMDocument30;
  2628. #endif
  2629. EXTERN_C const CLSID CLSID_XMLSchemaCache;
  2630. #ifdef __cplusplus
  2631. class DECLSPEC_UUID("373984c9-b845-449b-91e7-45ac83036ade")
  2632. XMLSchemaCache;
  2633. #endif
  2634. EXTERN_C const CLSID CLSID_XMLSchemaCache26;
  2635. #ifdef __cplusplus
  2636. class DECLSPEC_UUID("f5078f1d-c551-11d3-89b9-0000f81fe221")
  2637. XMLSchemaCache26;
  2638. #endif
  2639. EXTERN_C const CLSID CLSID_XMLSchemaCache30;
  2640. #ifdef __cplusplus
  2641. class DECLSPEC_UUID("f5078f34-c551-11d3-89b9-0000f81fe221")
  2642. XMLSchemaCache30;
  2643. #endif
  2644. EXTERN_C const CLSID CLSID_XSLTemplate;
  2645. #ifdef __cplusplus
  2646. class DECLSPEC_UUID("2933BF94-7B36-11d2-B20E-00C04F983E60")
  2647. XSLTemplate;
  2648. #endif
  2649. EXTERN_C const CLSID CLSID_XSLTemplate26;
  2650. #ifdef __cplusplus
  2651. class DECLSPEC_UUID("f5078f21-c551-11d3-89b9-0000f81fe221")
  2652. XSLTemplate26;
  2653. #endif
  2654. EXTERN_C const CLSID CLSID_XSLTemplate30;
  2655. #ifdef __cplusplus
  2656. class DECLSPEC_UUID("f5078f36-c551-11d3-89b9-0000f81fe221")
  2657. XSLTemplate30;
  2658. #endif
  2659. EXTERN_C const CLSID CLSID_DSOControl;
  2660. #ifdef __cplusplus
  2661. class DECLSPEC_UUID("F6D90F14-9C73-11D3-B32E-00C04F990BB4")
  2662. DSOControl;
  2663. #endif
  2664. EXTERN_C const CLSID CLSID_DSOControl26;
  2665. #ifdef __cplusplus
  2666. class DECLSPEC_UUID("f5078f1f-c551-11d3-89b9-0000f81fe221")
  2667. DSOControl26;
  2668. #endif
  2669. EXTERN_C const CLSID CLSID_DSOControl30;
  2670. #ifdef __cplusplus
  2671. class DECLSPEC_UUID("f5078f39-c551-11d3-89b9-0000f81fe221")
  2672. DSOControl30;
  2673. #endif
  2674. EXTERN_C const CLSID CLSID_XMLHTTP;
  2675. #ifdef __cplusplus
  2676. class DECLSPEC_UUID("F6D90F16-9C73-11D3-B32E-00C04F990BB4")
  2677. XMLHTTP;
  2678. #endif
  2679. EXTERN_C const CLSID CLSID_XMLHTTP26;
  2680. #ifdef __cplusplus
  2681. class DECLSPEC_UUID("f5078f1e-c551-11d3-89b9-0000f81fe221")
  2682. XMLHTTP26;
  2683. #endif
  2684. EXTERN_C const CLSID CLSID_XMLHTTP30;
  2685. #ifdef __cplusplus
  2686. class DECLSPEC_UUID("f5078f35-c551-11d3-89b9-0000f81fe221")
  2687. XMLHTTP30;
  2688. #endif
  2689. EXTERN_C const CLSID CLSID_ServerXMLHTTP;
  2690. #ifdef __cplusplus
  2691. class DECLSPEC_UUID("afba6b42-5692-48ea-8141-dc517dcf0ef1")
  2692. ServerXMLHTTP;
  2693. #endif
  2694. EXTERN_C const CLSID CLSID_ServerXMLHTTP30;
  2695. #ifdef __cplusplus
  2696. class DECLSPEC_UUID("afb40ffd-b609-40a3-9828-f88bbe11e4e3")
  2697. ServerXMLHTTP30;
  2698. #endif
  2699. EXTERN_C const CLSID CLSID_SAXXMLReader;
  2700. #ifdef __cplusplus
  2701. class DECLSPEC_UUID("079aa557-4a18-424a-8eee-e39f0a8d41b9")
  2702. SAXXMLReader;
  2703. #endif
  2704. EXTERN_C const CLSID CLSID_SAXXMLReader30;
  2705. #ifdef __cplusplus
  2706. class DECLSPEC_UUID("3124c396-fb13-4836-a6ad-1317f1713688")
  2707. SAXXMLReader30;
  2708. #endif
  2709. EXTERN_C const CLSID CLSID_MXXMLWriter;
  2710. #ifdef __cplusplus
  2711. class DECLSPEC_UUID("fc220ad8-a72a-4ee8-926e-0b7ad152a020")
  2712. MXXMLWriter;
  2713. #endif
  2714. EXTERN_C const CLSID CLSID_MXXMLWriter30;
  2715. #ifdef __cplusplus
  2716. class DECLSPEC_UUID("3d813dfe-6c91-4a4e-8f41-04346a841d9c")
  2717. MXXMLWriter30;
  2718. #endif
  2719. EXTERN_C const CLSID CLSID_SAXAttributes;
  2720. #ifdef __cplusplus
  2721. class DECLSPEC_UUID("4dd441ad-526d-4a77-9f1b-9841ed802fb0")
  2722. SAXAttributes;
  2723. #endif
  2724. EXTERN_C const CLSID CLSID_SAXAttributes30;
  2725. #ifdef __cplusplus
  2726. class DECLSPEC_UUID("3e784a01-f3ae-4dc0-9354-9526b9370eba")
  2727. SAXAttributes30;
  2728. #endif
  2729. EXTERN_C const CLSID CLSID_XMLDocument;
  2730. #ifdef __cplusplus
  2731. class DECLSPEC_UUID("CFC399AF-D876-11d0-9C10-00C04FC99C8E")
  2732. XMLDocument;
  2733. #endif
  2734. #endif /* __MSXML2_LIBRARY_DEFINED__ */
  2735. /* interface __MIDL_itf_msxml2_0169 */
  2736. /* [local] */ 
  2737. //----------------------------
  2738. // MSXML SPECIFIC ERROR CODES 
  2739. //----------------------------
  2740. #define E_XML_NOTWF 0xC00CE223L  // Validate failed because the document is not well formed.
  2741. #define E_XML_NODTD 0xC00CE224L  // Validate failed because a DTD/Schema was not specified in the document.
  2742. #define E_XML_INVALID 0xC00CE225L  // Validate failed because of a DTD/Schema violation.
  2743. #ifdef __USE_MSXML2_NAMESPACE__
  2744. }
  2745. #endif
  2746. extern RPC_IF_HANDLE __MIDL_itf_msxml2_0169_v0_0_c_ifspec;
  2747. extern RPC_IF_HANDLE __MIDL_itf_msxml2_0169_v0_0_s_ifspec;
  2748. /* Additional Prototypes for ALL interfaces */
  2749. /* end of Additional Prototypes */
  2750. #ifdef __cplusplus
  2751. }
  2752. #endif
  2753. #endif