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

模拟服务器

开发平台:

C/C++

  1. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_lastChild_Proxy( 
  2.     IHTMLDOMNode * This,
  3.     /* [out][retval] */ IHTMLDOMNode **p);
  4. void __RPC_STUB IHTMLDOMNode_get_lastChild_Stub(
  5.     IRpcStubBuffer *This,
  6.     IRpcChannelBuffer *_pRpcChannelBuffer,
  7.     PRPC_MESSAGE _pRpcMessage,
  8.     DWORD *_pdwStubPhase);
  9. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_previousSibling_Proxy( 
  10.     IHTMLDOMNode * This,
  11.     /* [out][retval] */ IHTMLDOMNode **p);
  12. void __RPC_STUB IHTMLDOMNode_get_previousSibling_Stub(
  13.     IRpcStubBuffer *This,
  14.     IRpcChannelBuffer *_pRpcChannelBuffer,
  15.     PRPC_MESSAGE _pRpcMessage,
  16.     DWORD *_pdwStubPhase);
  17. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMNode_get_nextSibling_Proxy( 
  18.     IHTMLDOMNode * This,
  19.     /* [out][retval] */ IHTMLDOMNode **p);
  20. void __RPC_STUB IHTMLDOMNode_get_nextSibling_Stub(
  21.     IRpcStubBuffer *This,
  22.     IRpcChannelBuffer *_pRpcChannelBuffer,
  23.     PRPC_MESSAGE _pRpcMessage,
  24.     DWORD *_pdwStubPhase);
  25. #endif  /* __IHTMLDOMNode_INTERFACE_DEFINED__ */
  26. #ifndef __IHTMLDOMNode2_INTERFACE_DEFINED__
  27. #define __IHTMLDOMNode2_INTERFACE_DEFINED__
  28. /* interface IHTMLDOMNode2 */
  29. /* [object][uuid][dual][oleautomation] */ 
  30. EXTERN_C const IID IID_IHTMLDOMNode2;
  31. #if defined(__cplusplus) && !defined(CINTERFACE)
  32.     
  33.     MIDL_INTERFACE("3050f80b-98b5-11cf-bb82-00aa00bdce0b")
  34.     IHTMLDOMNode2 : public IDispatch
  35.     {
  36.     public:
  37.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_ownerDocument( 
  38.             /* [out][retval] */ IDispatch **p) = 0;
  39.         
  40.     };
  41.     
  42. #else  /* C style interface */
  43.     typedef struct IHTMLDOMNode2Vtbl
  44.     {
  45.         BEGIN_INTERFACE
  46.         
  47.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  48.             IHTMLDOMNode2 * This,
  49.             /* [in] */ REFIID riid,
  50.             /* [iid_is][out] */ void **ppvObject);
  51.         
  52.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  53.             IHTMLDOMNode2 * This);
  54.         
  55.         ULONG ( STDMETHODCALLTYPE *Release )( 
  56.             IHTMLDOMNode2 * This);
  57.         
  58.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  59.             IHTMLDOMNode2 * This,
  60.             /* [out] */ UINT *pctinfo);
  61.         
  62.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  63.             IHTMLDOMNode2 * This,
  64.             /* [in] */ UINT iTInfo,
  65.             /* [in] */ LCID lcid,
  66.             /* [out] */ ITypeInfo **ppTInfo);
  67.         
  68.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  69.             IHTMLDOMNode2 * This,
  70.             /* [in] */ REFIID riid,
  71.             /* [size_is][in] */ LPOLESTR *rgszNames,
  72.             /* [in] */ UINT cNames,
  73.             /* [in] */ LCID lcid,
  74.             /* [size_is][out] */ DISPID *rgDispId);
  75.         
  76.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  77.             IHTMLDOMNode2 * This,
  78.             /* [in] */ DISPID dispIdMember,
  79.             /* [in] */ REFIID riid,
  80.             /* [in] */ LCID lcid,
  81.             /* [in] */ WORD wFlags,
  82.             /* [out][in] */ DISPPARAMS *pDispParams,
  83.             /* [out] */ VARIANT *pVarResult,
  84.             /* [out] */ EXCEPINFO *pExcepInfo,
  85.             /* [out] */ UINT *puArgErr);
  86.         
  87.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ownerDocument )( 
  88.             IHTMLDOMNode2 * This,
  89.             /* [out][retval] */ IDispatch **p);
  90.         
  91.         END_INTERFACE
  92.     } IHTMLDOMNode2Vtbl;
  93.     interface IHTMLDOMNode2
  94.     {
  95.         CONST_VTBL struct IHTMLDOMNode2Vtbl *lpVtbl;
  96.     };
  97.     
  98. #ifdef COBJMACROS
  99. #define IHTMLDOMNode2_QueryInterface(This,riid,ppvObject)
  100.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  101. #define IHTMLDOMNode2_AddRef(This)
  102.     (This)->lpVtbl -> AddRef(This)
  103. #define IHTMLDOMNode2_Release(This)
  104.     (This)->lpVtbl -> Release(This)
  105. #define IHTMLDOMNode2_GetTypeInfoCount(This,pctinfo)
  106.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  107. #define IHTMLDOMNode2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  108.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  109. #define IHTMLDOMNode2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  110.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  111. #define IHTMLDOMNode2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  112.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  113. #define IHTMLDOMNode2_get_ownerDocument(This,p)
  114.     (This)->lpVtbl -> get_ownerDocument(This,p)
  115. #endif /* COBJMACROS */
  116. #endif  /* C style interface */
  117. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMNode2_get_ownerDocument_Proxy( 
  118.     IHTMLDOMNode2 * This,
  119.     /* [out][retval] */ IDispatch **p);
  120. void __RPC_STUB IHTMLDOMNode2_get_ownerDocument_Stub(
  121.     IRpcStubBuffer *This,
  122.     IRpcChannelBuffer *_pRpcChannelBuffer,
  123.     PRPC_MESSAGE _pRpcMessage,
  124.     DWORD *_pdwStubPhase);
  125. #endif  /* __IHTMLDOMNode2_INTERFACE_DEFINED__ */
  126. #ifndef __IHTMLDOMAttribute_INTERFACE_DEFINED__
  127. #define __IHTMLDOMAttribute_INTERFACE_DEFINED__
  128. /* interface IHTMLDOMAttribute */
  129. /* [object][uuid][dual][oleautomation] */ 
  130. EXTERN_C const IID IID_IHTMLDOMAttribute;
  131. #if defined(__cplusplus) && !defined(CINTERFACE)
  132.     
  133.     MIDL_INTERFACE("3050f4b0-98b5-11cf-bb82-00aa00bdce0b")
  134.     IHTMLDOMAttribute : public IDispatch
  135.     {
  136.     public:
  137.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_nodeName( 
  138.             /* [out][retval] */ BSTR *p) = 0;
  139.         
  140.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_nodeValue( 
  141.             /* [in] */ VARIANT v) = 0;
  142.         
  143.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_nodeValue( 
  144.             /* [out][retval] */ VARIANT *p) = 0;
  145.         
  146.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_specified( 
  147.             /* [out][retval] */ VARIANT_BOOL *p) = 0;
  148.         
  149.     };
  150.     
  151. #else  /* C style interface */
  152.     typedef struct IHTMLDOMAttributeVtbl
  153.     {
  154.         BEGIN_INTERFACE
  155.         
  156.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  157.             IHTMLDOMAttribute * This,
  158.             /* [in] */ REFIID riid,
  159.             /* [iid_is][out] */ void **ppvObject);
  160.         
  161.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  162.             IHTMLDOMAttribute * This);
  163.         
  164.         ULONG ( STDMETHODCALLTYPE *Release )( 
  165.             IHTMLDOMAttribute * This);
  166.         
  167.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  168.             IHTMLDOMAttribute * This,
  169.             /* [out] */ UINT *pctinfo);
  170.         
  171.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  172.             IHTMLDOMAttribute * This,
  173.             /* [in] */ UINT iTInfo,
  174.             /* [in] */ LCID lcid,
  175.             /* [out] */ ITypeInfo **ppTInfo);
  176.         
  177.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  178.             IHTMLDOMAttribute * This,
  179.             /* [in] */ REFIID riid,
  180.             /* [size_is][in] */ LPOLESTR *rgszNames,
  181.             /* [in] */ UINT cNames,
  182.             /* [in] */ LCID lcid,
  183.             /* [size_is][out] */ DISPID *rgDispId);
  184.         
  185.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  186.             IHTMLDOMAttribute * This,
  187.             /* [in] */ DISPID dispIdMember,
  188.             /* [in] */ REFIID riid,
  189.             /* [in] */ LCID lcid,
  190.             /* [in] */ WORD wFlags,
  191.             /* [out][in] */ DISPPARAMS *pDispParams,
  192.             /* [out] */ VARIANT *pVarResult,
  193.             /* [out] */ EXCEPINFO *pExcepInfo,
  194.             /* [out] */ UINT *puArgErr);
  195.         
  196.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_nodeName )( 
  197.             IHTMLDOMAttribute * This,
  198.             /* [out][retval] */ BSTR *p);
  199.         
  200.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_nodeValue )( 
  201.             IHTMLDOMAttribute * This,
  202.             /* [in] */ VARIANT v);
  203.         
  204.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_nodeValue )( 
  205.             IHTMLDOMAttribute * This,
  206.             /* [out][retval] */ VARIANT *p);
  207.         
  208.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_specified )( 
  209.             IHTMLDOMAttribute * This,
  210.             /* [out][retval] */ VARIANT_BOOL *p);
  211.         
  212.         END_INTERFACE
  213.     } IHTMLDOMAttributeVtbl;
  214.     interface IHTMLDOMAttribute
  215.     {
  216.         CONST_VTBL struct IHTMLDOMAttributeVtbl *lpVtbl;
  217.     };
  218.     
  219. #ifdef COBJMACROS
  220. #define IHTMLDOMAttribute_QueryInterface(This,riid,ppvObject)
  221.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  222. #define IHTMLDOMAttribute_AddRef(This)
  223.     (This)->lpVtbl -> AddRef(This)
  224. #define IHTMLDOMAttribute_Release(This)
  225.     (This)->lpVtbl -> Release(This)
  226. #define IHTMLDOMAttribute_GetTypeInfoCount(This,pctinfo)
  227.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  228. #define IHTMLDOMAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  229.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  230. #define IHTMLDOMAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  231.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  232. #define IHTMLDOMAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  233.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  234. #define IHTMLDOMAttribute_get_nodeName(This,p)
  235.     (This)->lpVtbl -> get_nodeName(This,p)
  236. #define IHTMLDOMAttribute_put_nodeValue(This,v)
  237.     (This)->lpVtbl -> put_nodeValue(This,v)
  238. #define IHTMLDOMAttribute_get_nodeValue(This,p)
  239.     (This)->lpVtbl -> get_nodeValue(This,p)
  240. #define IHTMLDOMAttribute_get_specified(This,p)
  241.     (This)->lpVtbl -> get_specified(This,p)
  242. #endif /* COBJMACROS */
  243. #endif  /* C style interface */
  244. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute_get_nodeName_Proxy( 
  245.     IHTMLDOMAttribute * This,
  246.     /* [out][retval] */ BSTR *p);
  247. void __RPC_STUB IHTMLDOMAttribute_get_nodeName_Stub(
  248.     IRpcStubBuffer *This,
  249.     IRpcChannelBuffer *_pRpcChannelBuffer,
  250.     PRPC_MESSAGE _pRpcMessage,
  251.     DWORD *_pdwStubPhase);
  252. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute_put_nodeValue_Proxy( 
  253.     IHTMLDOMAttribute * This,
  254.     /* [in] */ VARIANT v);
  255. void __RPC_STUB IHTMLDOMAttribute_put_nodeValue_Stub(
  256.     IRpcStubBuffer *This,
  257.     IRpcChannelBuffer *_pRpcChannelBuffer,
  258.     PRPC_MESSAGE _pRpcMessage,
  259.     DWORD *_pdwStubPhase);
  260. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute_get_nodeValue_Proxy( 
  261.     IHTMLDOMAttribute * This,
  262.     /* [out][retval] */ VARIANT *p);
  263. void __RPC_STUB IHTMLDOMAttribute_get_nodeValue_Stub(
  264.     IRpcStubBuffer *This,
  265.     IRpcChannelBuffer *_pRpcChannelBuffer,
  266.     PRPC_MESSAGE _pRpcMessage,
  267.     DWORD *_pdwStubPhase);
  268. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute_get_specified_Proxy( 
  269.     IHTMLDOMAttribute * This,
  270.     /* [out][retval] */ VARIANT_BOOL *p);
  271. void __RPC_STUB IHTMLDOMAttribute_get_specified_Stub(
  272.     IRpcStubBuffer *This,
  273.     IRpcChannelBuffer *_pRpcChannelBuffer,
  274.     PRPC_MESSAGE _pRpcMessage,
  275.     DWORD *_pdwStubPhase);
  276. #endif  /* __IHTMLDOMAttribute_INTERFACE_DEFINED__ */
  277. #ifndef __IHTMLDOMAttribute2_INTERFACE_DEFINED__
  278. #define __IHTMLDOMAttribute2_INTERFACE_DEFINED__
  279. /* interface IHTMLDOMAttribute2 */
  280. /* [object][uuid][dual][oleautomation] */ 
  281. EXTERN_C const IID IID_IHTMLDOMAttribute2;
  282. #if defined(__cplusplus) && !defined(CINTERFACE)
  283.     
  284.     MIDL_INTERFACE("3050f810-98b5-11cf-bb82-00aa00bdce0b")
  285.     IHTMLDOMAttribute2 : public IDispatch
  286.     {
  287.     public:
  288.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_name( 
  289.             /* [out][retval] */ BSTR *p) = 0;
  290.         
  291.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_value( 
  292.             /* [in] */ BSTR v) = 0;
  293.         
  294.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_value( 
  295.             /* [out][retval] */ BSTR *p) = 0;
  296.         
  297.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_expando( 
  298.             /* [out][retval] */ VARIANT_BOOL *p) = 0;
  299.         
  300.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_nodeType( 
  301.             /* [out][retval] */ long *p) = 0;
  302.         
  303.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_parentNode( 
  304.             /* [out][retval] */ IHTMLDOMNode **p) = 0;
  305.         
  306.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_childNodes( 
  307.             /* [out][retval] */ IDispatch **p) = 0;
  308.         
  309.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_firstChild( 
  310.             /* [out][retval] */ IHTMLDOMNode **p) = 0;
  311.         
  312.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_lastChild( 
  313.             /* [out][retval] */ IHTMLDOMNode **p) = 0;
  314.         
  315.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_previousSibling( 
  316.             /* [out][retval] */ IHTMLDOMNode **p) = 0;
  317.         
  318.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_nextSibling( 
  319.             /* [out][retval] */ IHTMLDOMNode **p) = 0;
  320.         
  321.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_attributes( 
  322.             /* [out][retval] */ IDispatch **p) = 0;
  323.         
  324.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_ownerDocument( 
  325.             /* [out][retval] */ IDispatch **p) = 0;
  326.         
  327.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE insertBefore( 
  328.             /* [in] */ IHTMLDOMNode *newChild,
  329.             /* [in][optional] */ VARIANT refChild,
  330.             /* [out][retval] */ IHTMLDOMNode **node) = 0;
  331.         
  332.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE replaceChild( 
  333.             /* [in] */ IHTMLDOMNode *newChild,
  334.             /* [in] */ IHTMLDOMNode *oldChild,
  335.             /* [out][retval] */ IHTMLDOMNode **node) = 0;
  336.         
  337.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE removeChild( 
  338.             /* [in] */ IHTMLDOMNode *oldChild,
  339.             /* [out][retval] */ IHTMLDOMNode **node) = 0;
  340.         
  341.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE appendChild( 
  342.             /* [in] */ IHTMLDOMNode *newChild,
  343.             /* [out][retval] */ IHTMLDOMNode **node) = 0;
  344.         
  345.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE hasChildNodes( 
  346.             /* [out][retval] */ VARIANT_BOOL *fChildren) = 0;
  347.         
  348.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE cloneNode( 
  349.             /* [in] */ VARIANT_BOOL fDeep,
  350.             /* [out][retval] */ IHTMLDOMAttribute **clonedNode) = 0;
  351.         
  352.     };
  353.     
  354. #else  /* C style interface */
  355.     typedef struct IHTMLDOMAttribute2Vtbl
  356.     {
  357.         BEGIN_INTERFACE
  358.         
  359.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  360.             IHTMLDOMAttribute2 * This,
  361.             /* [in] */ REFIID riid,
  362.             /* [iid_is][out] */ void **ppvObject);
  363.         
  364.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  365.             IHTMLDOMAttribute2 * This);
  366.         
  367.         ULONG ( STDMETHODCALLTYPE *Release )( 
  368.             IHTMLDOMAttribute2 * This);
  369.         
  370.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  371.             IHTMLDOMAttribute2 * This,
  372.             /* [out] */ UINT *pctinfo);
  373.         
  374.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  375.             IHTMLDOMAttribute2 * This,
  376.             /* [in] */ UINT iTInfo,
  377.             /* [in] */ LCID lcid,
  378.             /* [out] */ ITypeInfo **ppTInfo);
  379.         
  380.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  381.             IHTMLDOMAttribute2 * This,
  382.             /* [in] */ REFIID riid,
  383.             /* [size_is][in] */ LPOLESTR *rgszNames,
  384.             /* [in] */ UINT cNames,
  385.             /* [in] */ LCID lcid,
  386.             /* [size_is][out] */ DISPID *rgDispId);
  387.         
  388.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  389.             IHTMLDOMAttribute2 * This,
  390.             /* [in] */ DISPID dispIdMember,
  391.             /* [in] */ REFIID riid,
  392.             /* [in] */ LCID lcid,
  393.             /* [in] */ WORD wFlags,
  394.             /* [out][in] */ DISPPARAMS *pDispParams,
  395.             /* [out] */ VARIANT *pVarResult,
  396.             /* [out] */ EXCEPINFO *pExcepInfo,
  397.             /* [out] */ UINT *puArgErr);
  398.         
  399.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_name )( 
  400.             IHTMLDOMAttribute2 * This,
  401.             /* [out][retval] */ BSTR *p);
  402.         
  403.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_value )( 
  404.             IHTMLDOMAttribute2 * This,
  405.             /* [in] */ BSTR v);
  406.         
  407.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_value )( 
  408.             IHTMLDOMAttribute2 * This,
  409.             /* [out][retval] */ BSTR *p);
  410.         
  411.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_expando )( 
  412.             IHTMLDOMAttribute2 * This,
  413.             /* [out][retval] */ VARIANT_BOOL *p);
  414.         
  415.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_nodeType )( 
  416.             IHTMLDOMAttribute2 * This,
  417.             /* [out][retval] */ long *p);
  418.         
  419.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_parentNode )( 
  420.             IHTMLDOMAttribute2 * This,
  421.             /* [out][retval] */ IHTMLDOMNode **p);
  422.         
  423.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_childNodes )( 
  424.             IHTMLDOMAttribute2 * This,
  425.             /* [out][retval] */ IDispatch **p);
  426.         
  427.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_firstChild )( 
  428.             IHTMLDOMAttribute2 * This,
  429.             /* [out][retval] */ IHTMLDOMNode **p);
  430.         
  431.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_lastChild )( 
  432.             IHTMLDOMAttribute2 * This,
  433.             /* [out][retval] */ IHTMLDOMNode **p);
  434.         
  435.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_previousSibling )( 
  436.             IHTMLDOMAttribute2 * This,
  437.             /* [out][retval] */ IHTMLDOMNode **p);
  438.         
  439.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_nextSibling )( 
  440.             IHTMLDOMAttribute2 * This,
  441.             /* [out][retval] */ IHTMLDOMNode **p);
  442.         
  443.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_attributes )( 
  444.             IHTMLDOMAttribute2 * This,
  445.             /* [out][retval] */ IDispatch **p);
  446.         
  447.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ownerDocument )( 
  448.             IHTMLDOMAttribute2 * This,
  449.             /* [out][retval] */ IDispatch **p);
  450.         
  451.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *insertBefore )( 
  452.             IHTMLDOMAttribute2 * This,
  453.             /* [in] */ IHTMLDOMNode *newChild,
  454.             /* [in][optional] */ VARIANT refChild,
  455.             /* [out][retval] */ IHTMLDOMNode **node);
  456.         
  457.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *replaceChild )( 
  458.             IHTMLDOMAttribute2 * This,
  459.             /* [in] */ IHTMLDOMNode *newChild,
  460.             /* [in] */ IHTMLDOMNode *oldChild,
  461.             /* [out][retval] */ IHTMLDOMNode **node);
  462.         
  463.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *removeChild )( 
  464.             IHTMLDOMAttribute2 * This,
  465.             /* [in] */ IHTMLDOMNode *oldChild,
  466.             /* [out][retval] */ IHTMLDOMNode **node);
  467.         
  468.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *appendChild )( 
  469.             IHTMLDOMAttribute2 * This,
  470.             /* [in] */ IHTMLDOMNode *newChild,
  471.             /* [out][retval] */ IHTMLDOMNode **node);
  472.         
  473.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *hasChildNodes )( 
  474.             IHTMLDOMAttribute2 * This,
  475.             /* [out][retval] */ VARIANT_BOOL *fChildren);
  476.         
  477.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *cloneNode )( 
  478.             IHTMLDOMAttribute2 * This,
  479.             /* [in] */ VARIANT_BOOL fDeep,
  480.             /* [out][retval] */ IHTMLDOMAttribute **clonedNode);
  481.         
  482.         END_INTERFACE
  483.     } IHTMLDOMAttribute2Vtbl;
  484.     interface IHTMLDOMAttribute2
  485.     {
  486.         CONST_VTBL struct IHTMLDOMAttribute2Vtbl *lpVtbl;
  487.     };
  488.     
  489. #ifdef COBJMACROS
  490. #define IHTMLDOMAttribute2_QueryInterface(This,riid,ppvObject)
  491.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  492. #define IHTMLDOMAttribute2_AddRef(This)
  493.     (This)->lpVtbl -> AddRef(This)
  494. #define IHTMLDOMAttribute2_Release(This)
  495.     (This)->lpVtbl -> Release(This)
  496. #define IHTMLDOMAttribute2_GetTypeInfoCount(This,pctinfo)
  497.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  498. #define IHTMLDOMAttribute2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  499.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  500. #define IHTMLDOMAttribute2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  501.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  502. #define IHTMLDOMAttribute2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  503.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  504. #define IHTMLDOMAttribute2_get_name(This,p)
  505.     (This)->lpVtbl -> get_name(This,p)
  506. #define IHTMLDOMAttribute2_put_value(This,v)
  507.     (This)->lpVtbl -> put_value(This,v)
  508. #define IHTMLDOMAttribute2_get_value(This,p)
  509.     (This)->lpVtbl -> get_value(This,p)
  510. #define IHTMLDOMAttribute2_get_expando(This,p)
  511.     (This)->lpVtbl -> get_expando(This,p)
  512. #define IHTMLDOMAttribute2_get_nodeType(This,p)
  513.     (This)->lpVtbl -> get_nodeType(This,p)
  514. #define IHTMLDOMAttribute2_get_parentNode(This,p)
  515.     (This)->lpVtbl -> get_parentNode(This,p)
  516. #define IHTMLDOMAttribute2_get_childNodes(This,p)
  517.     (This)->lpVtbl -> get_childNodes(This,p)
  518. #define IHTMLDOMAttribute2_get_firstChild(This,p)
  519.     (This)->lpVtbl -> get_firstChild(This,p)
  520. #define IHTMLDOMAttribute2_get_lastChild(This,p)
  521.     (This)->lpVtbl -> get_lastChild(This,p)
  522. #define IHTMLDOMAttribute2_get_previousSibling(This,p)
  523.     (This)->lpVtbl -> get_previousSibling(This,p)
  524. #define IHTMLDOMAttribute2_get_nextSibling(This,p)
  525.     (This)->lpVtbl -> get_nextSibling(This,p)
  526. #define IHTMLDOMAttribute2_get_attributes(This,p)
  527.     (This)->lpVtbl -> get_attributes(This,p)
  528. #define IHTMLDOMAttribute2_get_ownerDocument(This,p)
  529.     (This)->lpVtbl -> get_ownerDocument(This,p)
  530. #define IHTMLDOMAttribute2_insertBefore(This,newChild,refChild,node)
  531.     (This)->lpVtbl -> insertBefore(This,newChild,refChild,node)
  532. #define IHTMLDOMAttribute2_replaceChild(This,newChild,oldChild,node)
  533.     (This)->lpVtbl -> replaceChild(This,newChild,oldChild,node)
  534. #define IHTMLDOMAttribute2_removeChild(This,oldChild,node)
  535.     (This)->lpVtbl -> removeChild(This,oldChild,node)
  536. #define IHTMLDOMAttribute2_appendChild(This,newChild,node)
  537.     (This)->lpVtbl -> appendChild(This,newChild,node)
  538. #define IHTMLDOMAttribute2_hasChildNodes(This,fChildren)
  539.     (This)->lpVtbl -> hasChildNodes(This,fChildren)
  540. #define IHTMLDOMAttribute2_cloneNode(This,fDeep,clonedNode)
  541.     (This)->lpVtbl -> cloneNode(This,fDeep,clonedNode)
  542. #endif /* COBJMACROS */
  543. #endif  /* C style interface */
  544. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_name_Proxy( 
  545.     IHTMLDOMAttribute2 * This,
  546.     /* [out][retval] */ BSTR *p);
  547. void __RPC_STUB IHTMLDOMAttribute2_get_name_Stub(
  548.     IRpcStubBuffer *This,
  549.     IRpcChannelBuffer *_pRpcChannelBuffer,
  550.     PRPC_MESSAGE _pRpcMessage,
  551.     DWORD *_pdwStubPhase);
  552. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_put_value_Proxy( 
  553.     IHTMLDOMAttribute2 * This,
  554.     /* [in] */ BSTR v);
  555. void __RPC_STUB IHTMLDOMAttribute2_put_value_Stub(
  556.     IRpcStubBuffer *This,
  557.     IRpcChannelBuffer *_pRpcChannelBuffer,
  558.     PRPC_MESSAGE _pRpcMessage,
  559.     DWORD *_pdwStubPhase);
  560. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_value_Proxy( 
  561.     IHTMLDOMAttribute2 * This,
  562.     /* [out][retval] */ BSTR *p);
  563. void __RPC_STUB IHTMLDOMAttribute2_get_value_Stub(
  564.     IRpcStubBuffer *This,
  565.     IRpcChannelBuffer *_pRpcChannelBuffer,
  566.     PRPC_MESSAGE _pRpcMessage,
  567.     DWORD *_pdwStubPhase);
  568. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_expando_Proxy( 
  569.     IHTMLDOMAttribute2 * This,
  570.     /* [out][retval] */ VARIANT_BOOL *p);
  571. void __RPC_STUB IHTMLDOMAttribute2_get_expando_Stub(
  572.     IRpcStubBuffer *This,
  573.     IRpcChannelBuffer *_pRpcChannelBuffer,
  574.     PRPC_MESSAGE _pRpcMessage,
  575.     DWORD *_pdwStubPhase);
  576. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_nodeType_Proxy( 
  577.     IHTMLDOMAttribute2 * This,
  578.     /* [out][retval] */ long *p);
  579. void __RPC_STUB IHTMLDOMAttribute2_get_nodeType_Stub(
  580.     IRpcStubBuffer *This,
  581.     IRpcChannelBuffer *_pRpcChannelBuffer,
  582.     PRPC_MESSAGE _pRpcMessage,
  583.     DWORD *_pdwStubPhase);
  584. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_parentNode_Proxy( 
  585.     IHTMLDOMAttribute2 * This,
  586.     /* [out][retval] */ IHTMLDOMNode **p);
  587. void __RPC_STUB IHTMLDOMAttribute2_get_parentNode_Stub(
  588.     IRpcStubBuffer *This,
  589.     IRpcChannelBuffer *_pRpcChannelBuffer,
  590.     PRPC_MESSAGE _pRpcMessage,
  591.     DWORD *_pdwStubPhase);
  592. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_childNodes_Proxy( 
  593.     IHTMLDOMAttribute2 * This,
  594.     /* [out][retval] */ IDispatch **p);
  595. void __RPC_STUB IHTMLDOMAttribute2_get_childNodes_Stub(
  596.     IRpcStubBuffer *This,
  597.     IRpcChannelBuffer *_pRpcChannelBuffer,
  598.     PRPC_MESSAGE _pRpcMessage,
  599.     DWORD *_pdwStubPhase);
  600. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_firstChild_Proxy( 
  601.     IHTMLDOMAttribute2 * This,
  602.     /* [out][retval] */ IHTMLDOMNode **p);
  603. void __RPC_STUB IHTMLDOMAttribute2_get_firstChild_Stub(
  604.     IRpcStubBuffer *This,
  605.     IRpcChannelBuffer *_pRpcChannelBuffer,
  606.     PRPC_MESSAGE _pRpcMessage,
  607.     DWORD *_pdwStubPhase);
  608. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_lastChild_Proxy( 
  609.     IHTMLDOMAttribute2 * This,
  610.     /* [out][retval] */ IHTMLDOMNode **p);
  611. void __RPC_STUB IHTMLDOMAttribute2_get_lastChild_Stub(
  612.     IRpcStubBuffer *This,
  613.     IRpcChannelBuffer *_pRpcChannelBuffer,
  614.     PRPC_MESSAGE _pRpcMessage,
  615.     DWORD *_pdwStubPhase);
  616. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_previousSibling_Proxy( 
  617.     IHTMLDOMAttribute2 * This,
  618.     /* [out][retval] */ IHTMLDOMNode **p);
  619. void __RPC_STUB IHTMLDOMAttribute2_get_previousSibling_Stub(
  620.     IRpcStubBuffer *This,
  621.     IRpcChannelBuffer *_pRpcChannelBuffer,
  622.     PRPC_MESSAGE _pRpcMessage,
  623.     DWORD *_pdwStubPhase);
  624. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_nextSibling_Proxy( 
  625.     IHTMLDOMAttribute2 * This,
  626.     /* [out][retval] */ IHTMLDOMNode **p);
  627. void __RPC_STUB IHTMLDOMAttribute2_get_nextSibling_Stub(
  628.     IRpcStubBuffer *This,
  629.     IRpcChannelBuffer *_pRpcChannelBuffer,
  630.     PRPC_MESSAGE _pRpcMessage,
  631.     DWORD *_pdwStubPhase);
  632. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_attributes_Proxy( 
  633.     IHTMLDOMAttribute2 * This,
  634.     /* [out][retval] */ IDispatch **p);
  635. void __RPC_STUB IHTMLDOMAttribute2_get_attributes_Stub(
  636.     IRpcStubBuffer *This,
  637.     IRpcChannelBuffer *_pRpcChannelBuffer,
  638.     PRPC_MESSAGE _pRpcMessage,
  639.     DWORD *_pdwStubPhase);
  640. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_get_ownerDocument_Proxy( 
  641.     IHTMLDOMAttribute2 * This,
  642.     /* [out][retval] */ IDispatch **p);
  643. void __RPC_STUB IHTMLDOMAttribute2_get_ownerDocument_Stub(
  644.     IRpcStubBuffer *This,
  645.     IRpcChannelBuffer *_pRpcChannelBuffer,
  646.     PRPC_MESSAGE _pRpcMessage,
  647.     DWORD *_pdwStubPhase);
  648. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_insertBefore_Proxy( 
  649.     IHTMLDOMAttribute2 * This,
  650.     /* [in] */ IHTMLDOMNode *newChild,
  651.     /* [in][optional] */ VARIANT refChild,
  652.     /* [out][retval] */ IHTMLDOMNode **node);
  653. void __RPC_STUB IHTMLDOMAttribute2_insertBefore_Stub(
  654.     IRpcStubBuffer *This,
  655.     IRpcChannelBuffer *_pRpcChannelBuffer,
  656.     PRPC_MESSAGE _pRpcMessage,
  657.     DWORD *_pdwStubPhase);
  658. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_replaceChild_Proxy( 
  659.     IHTMLDOMAttribute2 * This,
  660.     /* [in] */ IHTMLDOMNode *newChild,
  661.     /* [in] */ IHTMLDOMNode *oldChild,
  662.     /* [out][retval] */ IHTMLDOMNode **node);
  663. void __RPC_STUB IHTMLDOMAttribute2_replaceChild_Stub(
  664.     IRpcStubBuffer *This,
  665.     IRpcChannelBuffer *_pRpcChannelBuffer,
  666.     PRPC_MESSAGE _pRpcMessage,
  667.     DWORD *_pdwStubPhase);
  668. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_removeChild_Proxy( 
  669.     IHTMLDOMAttribute2 * This,
  670.     /* [in] */ IHTMLDOMNode *oldChild,
  671.     /* [out][retval] */ IHTMLDOMNode **node);
  672. void __RPC_STUB IHTMLDOMAttribute2_removeChild_Stub(
  673.     IRpcStubBuffer *This,
  674.     IRpcChannelBuffer *_pRpcChannelBuffer,
  675.     PRPC_MESSAGE _pRpcMessage,
  676.     DWORD *_pdwStubPhase);
  677. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_appendChild_Proxy( 
  678.     IHTMLDOMAttribute2 * This,
  679.     /* [in] */ IHTMLDOMNode *newChild,
  680.     /* [out][retval] */ IHTMLDOMNode **node);
  681. void __RPC_STUB IHTMLDOMAttribute2_appendChild_Stub(
  682.     IRpcStubBuffer *This,
  683.     IRpcChannelBuffer *_pRpcChannelBuffer,
  684.     PRPC_MESSAGE _pRpcMessage,
  685.     DWORD *_pdwStubPhase);
  686. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_hasChildNodes_Proxy( 
  687.     IHTMLDOMAttribute2 * This,
  688.     /* [out][retval] */ VARIANT_BOOL *fChildren);
  689. void __RPC_STUB IHTMLDOMAttribute2_hasChildNodes_Stub(
  690.     IRpcStubBuffer *This,
  691.     IRpcChannelBuffer *_pRpcChannelBuffer,
  692.     PRPC_MESSAGE _pRpcMessage,
  693.     DWORD *_pdwStubPhase);
  694. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMAttribute2_cloneNode_Proxy( 
  695.     IHTMLDOMAttribute2 * This,
  696.     /* [in] */ VARIANT_BOOL fDeep,
  697.     /* [out][retval] */ IHTMLDOMAttribute **clonedNode);
  698. void __RPC_STUB IHTMLDOMAttribute2_cloneNode_Stub(
  699.     IRpcStubBuffer *This,
  700.     IRpcChannelBuffer *_pRpcChannelBuffer,
  701.     PRPC_MESSAGE _pRpcMessage,
  702.     DWORD *_pdwStubPhase);
  703. #endif  /* __IHTMLDOMAttribute2_INTERFACE_DEFINED__ */
  704. #ifndef __IHTMLDOMTextNode_INTERFACE_DEFINED__
  705. #define __IHTMLDOMTextNode_INTERFACE_DEFINED__
  706. /* interface IHTMLDOMTextNode */
  707. /* [object][uuid][dual][oleautomation] */ 
  708. EXTERN_C const IID IID_IHTMLDOMTextNode;
  709. #if defined(__cplusplus) && !defined(CINTERFACE)
  710.     
  711.     MIDL_INTERFACE("3050f4b1-98b5-11cf-bb82-00aa00bdce0b")
  712.     IHTMLDOMTextNode : public IDispatch
  713.     {
  714.     public:
  715.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_data( 
  716.             /* [in] */ BSTR v) = 0;
  717.         
  718.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_data( 
  719.             /* [out][retval] */ BSTR *p) = 0;
  720.         
  721.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE toString( 
  722.             /* [out][retval] */ BSTR *String) = 0;
  723.         
  724.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_length( 
  725.             /* [out][retval] */ long *p) = 0;
  726.         
  727.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE splitText( 
  728.             /* [in] */ long offset,
  729.             /* [out][retval] */ IHTMLDOMNode **pRetNode) = 0;
  730.         
  731.     };
  732.     
  733. #else  /* C style interface */
  734.     typedef struct IHTMLDOMTextNodeVtbl
  735.     {
  736.         BEGIN_INTERFACE
  737.         
  738.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  739.             IHTMLDOMTextNode * This,
  740.             /* [in] */ REFIID riid,
  741.             /* [iid_is][out] */ void **ppvObject);
  742.         
  743.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  744.             IHTMLDOMTextNode * This);
  745.         
  746.         ULONG ( STDMETHODCALLTYPE *Release )( 
  747.             IHTMLDOMTextNode * This);
  748.         
  749.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  750.             IHTMLDOMTextNode * This,
  751.             /* [out] */ UINT *pctinfo);
  752.         
  753.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  754.             IHTMLDOMTextNode * This,
  755.             /* [in] */ UINT iTInfo,
  756.             /* [in] */ LCID lcid,
  757.             /* [out] */ ITypeInfo **ppTInfo);
  758.         
  759.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  760.             IHTMLDOMTextNode * This,
  761.             /* [in] */ REFIID riid,
  762.             /* [size_is][in] */ LPOLESTR *rgszNames,
  763.             /* [in] */ UINT cNames,
  764.             /* [in] */ LCID lcid,
  765.             /* [size_is][out] */ DISPID *rgDispId);
  766.         
  767.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  768.             IHTMLDOMTextNode * This,
  769.             /* [in] */ DISPID dispIdMember,
  770.             /* [in] */ REFIID riid,
  771.             /* [in] */ LCID lcid,
  772.             /* [in] */ WORD wFlags,
  773.             /* [out][in] */ DISPPARAMS *pDispParams,
  774.             /* [out] */ VARIANT *pVarResult,
  775.             /* [out] */ EXCEPINFO *pExcepInfo,
  776.             /* [out] */ UINT *puArgErr);
  777.         
  778.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_data )( 
  779.             IHTMLDOMTextNode * This,
  780.             /* [in] */ BSTR v);
  781.         
  782.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_data )( 
  783.             IHTMLDOMTextNode * This,
  784.             /* [out][retval] */ BSTR *p);
  785.         
  786.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *toString )( 
  787.             IHTMLDOMTextNode * This,
  788.             /* [out][retval] */ BSTR *String);
  789.         
  790.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_length )( 
  791.             IHTMLDOMTextNode * This,
  792.             /* [out][retval] */ long *p);
  793.         
  794.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *splitText )( 
  795.             IHTMLDOMTextNode * This,
  796.             /* [in] */ long offset,
  797.             /* [out][retval] */ IHTMLDOMNode **pRetNode);
  798.         
  799.         END_INTERFACE
  800.     } IHTMLDOMTextNodeVtbl;
  801.     interface IHTMLDOMTextNode
  802.     {
  803.         CONST_VTBL struct IHTMLDOMTextNodeVtbl *lpVtbl;
  804.     };
  805.     
  806. #ifdef COBJMACROS
  807. #define IHTMLDOMTextNode_QueryInterface(This,riid,ppvObject)
  808.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  809. #define IHTMLDOMTextNode_AddRef(This)
  810.     (This)->lpVtbl -> AddRef(This)
  811. #define IHTMLDOMTextNode_Release(This)
  812.     (This)->lpVtbl -> Release(This)
  813. #define IHTMLDOMTextNode_GetTypeInfoCount(This,pctinfo)
  814.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  815. #define IHTMLDOMTextNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  816.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  817. #define IHTMLDOMTextNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  818.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  819. #define IHTMLDOMTextNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  820.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  821. #define IHTMLDOMTextNode_put_data(This,v)
  822.     (This)->lpVtbl -> put_data(This,v)
  823. #define IHTMLDOMTextNode_get_data(This,p)
  824.     (This)->lpVtbl -> get_data(This,p)
  825. #define IHTMLDOMTextNode_toString(This,String)
  826.     (This)->lpVtbl -> toString(This,String)
  827. #define IHTMLDOMTextNode_get_length(This,p)
  828.     (This)->lpVtbl -> get_length(This,p)
  829. #define IHTMLDOMTextNode_splitText(This,offset,pRetNode)
  830.     (This)->lpVtbl -> splitText(This,offset,pRetNode)
  831. #endif /* COBJMACROS */
  832. #endif  /* C style interface */
  833. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_put_data_Proxy( 
  834.     IHTMLDOMTextNode * This,
  835.     /* [in] */ BSTR v);
  836. void __RPC_STUB IHTMLDOMTextNode_put_data_Stub(
  837.     IRpcStubBuffer *This,
  838.     IRpcChannelBuffer *_pRpcChannelBuffer,
  839.     PRPC_MESSAGE _pRpcMessage,
  840.     DWORD *_pdwStubPhase);
  841. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_get_data_Proxy( 
  842.     IHTMLDOMTextNode * This,
  843.     /* [out][retval] */ BSTR *p);
  844. void __RPC_STUB IHTMLDOMTextNode_get_data_Stub(
  845.     IRpcStubBuffer *This,
  846.     IRpcChannelBuffer *_pRpcChannelBuffer,
  847.     PRPC_MESSAGE _pRpcMessage,
  848.     DWORD *_pdwStubPhase);
  849. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_toString_Proxy( 
  850.     IHTMLDOMTextNode * This,
  851.     /* [out][retval] */ BSTR *String);
  852. void __RPC_STUB IHTMLDOMTextNode_toString_Stub(
  853.     IRpcStubBuffer *This,
  854.     IRpcChannelBuffer *_pRpcChannelBuffer,
  855.     PRPC_MESSAGE _pRpcMessage,
  856.     DWORD *_pdwStubPhase);
  857. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_get_length_Proxy( 
  858.     IHTMLDOMTextNode * This,
  859.     /* [out][retval] */ long *p);
  860. void __RPC_STUB IHTMLDOMTextNode_get_length_Stub(
  861.     IRpcStubBuffer *This,
  862.     IRpcChannelBuffer *_pRpcChannelBuffer,
  863.     PRPC_MESSAGE _pRpcMessage,
  864.     DWORD *_pdwStubPhase);
  865. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode_splitText_Proxy( 
  866.     IHTMLDOMTextNode * This,
  867.     /* [in] */ long offset,
  868.     /* [out][retval] */ IHTMLDOMNode **pRetNode);
  869. void __RPC_STUB IHTMLDOMTextNode_splitText_Stub(
  870.     IRpcStubBuffer *This,
  871.     IRpcChannelBuffer *_pRpcChannelBuffer,
  872.     PRPC_MESSAGE _pRpcMessage,
  873.     DWORD *_pdwStubPhase);
  874. #endif  /* __IHTMLDOMTextNode_INTERFACE_DEFINED__ */
  875. #ifndef __IHTMLDOMTextNode2_INTERFACE_DEFINED__
  876. #define __IHTMLDOMTextNode2_INTERFACE_DEFINED__
  877. /* interface IHTMLDOMTextNode2 */
  878. /* [object][uuid][dual][oleautomation] */ 
  879. EXTERN_C const IID IID_IHTMLDOMTextNode2;
  880. #if defined(__cplusplus) && !defined(CINTERFACE)
  881.     
  882.     MIDL_INTERFACE("3050f809-98b5-11cf-bb82-00aa00bdce0b")
  883.     IHTMLDOMTextNode2 : public IDispatch
  884.     {
  885.     public:
  886.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE substringData( 
  887.             /* [in] */ long offset,
  888.             /* [in] */ long Count,
  889.             /* [out][retval] */ BSTR *pbstrsubString) = 0;
  890.         
  891.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE appendData( 
  892.             /* [in] */ BSTR bstrstring) = 0;
  893.         
  894.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE insertData( 
  895.             /* [in] */ long offset,
  896.             /* [in] */ BSTR bstrstring) = 0;
  897.         
  898.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE deleteData( 
  899.             /* [in] */ long offset,
  900.             /* [in] */ long Count) = 0;
  901.         
  902.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE replaceData( 
  903.             /* [in] */ long offset,
  904.             /* [in] */ long Count,
  905.             /* [in] */ BSTR bstrstring) = 0;
  906.         
  907.     };
  908.     
  909. #else  /* C style interface */
  910.     typedef struct IHTMLDOMTextNode2Vtbl
  911.     {
  912.         BEGIN_INTERFACE
  913.         
  914.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  915.             IHTMLDOMTextNode2 * This,
  916.             /* [in] */ REFIID riid,
  917.             /* [iid_is][out] */ void **ppvObject);
  918.         
  919.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  920.             IHTMLDOMTextNode2 * This);
  921.         
  922.         ULONG ( STDMETHODCALLTYPE *Release )( 
  923.             IHTMLDOMTextNode2 * This);
  924.         
  925.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  926.             IHTMLDOMTextNode2 * This,
  927.             /* [out] */ UINT *pctinfo);
  928.         
  929.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  930.             IHTMLDOMTextNode2 * This,
  931.             /* [in] */ UINT iTInfo,
  932.             /* [in] */ LCID lcid,
  933.             /* [out] */ ITypeInfo **ppTInfo);
  934.         
  935.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  936.             IHTMLDOMTextNode2 * This,
  937.             /* [in] */ REFIID riid,
  938.             /* [size_is][in] */ LPOLESTR *rgszNames,
  939.             /* [in] */ UINT cNames,
  940.             /* [in] */ LCID lcid,
  941.             /* [size_is][out] */ DISPID *rgDispId);
  942.         
  943.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  944.             IHTMLDOMTextNode2 * This,
  945.             /* [in] */ DISPID dispIdMember,
  946.             /* [in] */ REFIID riid,
  947.             /* [in] */ LCID lcid,
  948.             /* [in] */ WORD wFlags,
  949.             /* [out][in] */ DISPPARAMS *pDispParams,
  950.             /* [out] */ VARIANT *pVarResult,
  951.             /* [out] */ EXCEPINFO *pExcepInfo,
  952.             /* [out] */ UINT *puArgErr);
  953.         
  954.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *substringData )( 
  955.             IHTMLDOMTextNode2 * This,
  956.             /* [in] */ long offset,
  957.             /* [in] */ long Count,
  958.             /* [out][retval] */ BSTR *pbstrsubString);
  959.         
  960.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *appendData )( 
  961.             IHTMLDOMTextNode2 * This,
  962.             /* [in] */ BSTR bstrstring);
  963.         
  964.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *insertData )( 
  965.             IHTMLDOMTextNode2 * This,
  966.             /* [in] */ long offset,
  967.             /* [in] */ BSTR bstrstring);
  968.         
  969.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *deleteData )( 
  970.             IHTMLDOMTextNode2 * This,
  971.             /* [in] */ long offset,
  972.             /* [in] */ long Count);
  973.         
  974.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *replaceData )( 
  975.             IHTMLDOMTextNode2 * This,
  976.             /* [in] */ long offset,
  977.             /* [in] */ long Count,
  978.             /* [in] */ BSTR bstrstring);
  979.         
  980.         END_INTERFACE
  981.     } IHTMLDOMTextNode2Vtbl;
  982.     interface IHTMLDOMTextNode2
  983.     {
  984.         CONST_VTBL struct IHTMLDOMTextNode2Vtbl *lpVtbl;
  985.     };
  986.     
  987. #ifdef COBJMACROS
  988. #define IHTMLDOMTextNode2_QueryInterface(This,riid,ppvObject)
  989.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  990. #define IHTMLDOMTextNode2_AddRef(This)
  991.     (This)->lpVtbl -> AddRef(This)
  992. #define IHTMLDOMTextNode2_Release(This)
  993.     (This)->lpVtbl -> Release(This)
  994. #define IHTMLDOMTextNode2_GetTypeInfoCount(This,pctinfo)
  995.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  996. #define IHTMLDOMTextNode2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  997.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  998. #define IHTMLDOMTextNode2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  999.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1000. #define IHTMLDOMTextNode2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1001.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1002. #define IHTMLDOMTextNode2_substringData(This,offset,Count,pbstrsubString)
  1003.     (This)->lpVtbl -> substringData(This,offset,Count,pbstrsubString)
  1004. #define IHTMLDOMTextNode2_appendData(This,bstrstring)
  1005.     (This)->lpVtbl -> appendData(This,bstrstring)
  1006. #define IHTMLDOMTextNode2_insertData(This,offset,bstrstring)
  1007.     (This)->lpVtbl -> insertData(This,offset,bstrstring)
  1008. #define IHTMLDOMTextNode2_deleteData(This,offset,Count)
  1009.     (This)->lpVtbl -> deleteData(This,offset,Count)
  1010. #define IHTMLDOMTextNode2_replaceData(This,offset,Count,bstrstring)
  1011.     (This)->lpVtbl -> replaceData(This,offset,Count,bstrstring)
  1012. #endif /* COBJMACROS */
  1013. #endif  /* C style interface */
  1014. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_substringData_Proxy( 
  1015.     IHTMLDOMTextNode2 * This,
  1016.     /* [in] */ long offset,
  1017.     /* [in] */ long Count,
  1018.     /* [out][retval] */ BSTR *pbstrsubString);
  1019. void __RPC_STUB IHTMLDOMTextNode2_substringData_Stub(
  1020.     IRpcStubBuffer *This,
  1021.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1022.     PRPC_MESSAGE _pRpcMessage,
  1023.     DWORD *_pdwStubPhase);
  1024. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_appendData_Proxy( 
  1025.     IHTMLDOMTextNode2 * This,
  1026.     /* [in] */ BSTR bstrstring);
  1027. void __RPC_STUB IHTMLDOMTextNode2_appendData_Stub(
  1028.     IRpcStubBuffer *This,
  1029.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1030.     PRPC_MESSAGE _pRpcMessage,
  1031.     DWORD *_pdwStubPhase);
  1032. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_insertData_Proxy( 
  1033.     IHTMLDOMTextNode2 * This,
  1034.     /* [in] */ long offset,
  1035.     /* [in] */ BSTR bstrstring);
  1036. void __RPC_STUB IHTMLDOMTextNode2_insertData_Stub(
  1037.     IRpcStubBuffer *This,
  1038.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1039.     PRPC_MESSAGE _pRpcMessage,
  1040.     DWORD *_pdwStubPhase);
  1041. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_deleteData_Proxy( 
  1042.     IHTMLDOMTextNode2 * This,
  1043.     /* [in] */ long offset,
  1044.     /* [in] */ long Count);
  1045. void __RPC_STUB IHTMLDOMTextNode2_deleteData_Stub(
  1046.     IRpcStubBuffer *This,
  1047.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1048.     PRPC_MESSAGE _pRpcMessage,
  1049.     DWORD *_pdwStubPhase);
  1050. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMTextNode2_replaceData_Proxy( 
  1051.     IHTMLDOMTextNode2 * This,
  1052.     /* [in] */ long offset,
  1053.     /* [in] */ long Count,
  1054.     /* [in] */ BSTR bstrstring);
  1055. void __RPC_STUB IHTMLDOMTextNode2_replaceData_Stub(
  1056.     IRpcStubBuffer *This,
  1057.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1058.     PRPC_MESSAGE _pRpcMessage,
  1059.     DWORD *_pdwStubPhase);
  1060. #endif  /* __IHTMLDOMTextNode2_INTERFACE_DEFINED__ */
  1061. #ifndef __IHTMLDOMImplementation_INTERFACE_DEFINED__
  1062. #define __IHTMLDOMImplementation_INTERFACE_DEFINED__
  1063. /* interface IHTMLDOMImplementation */
  1064. /* [object][uuid][dual][oleautomation] */ 
  1065. EXTERN_C const IID IID_IHTMLDOMImplementation;
  1066. #if defined(__cplusplus) && !defined(CINTERFACE)
  1067.     
  1068.     MIDL_INTERFACE("3050f80d-98b5-11cf-bb82-00aa00bdce0b")
  1069.     IHTMLDOMImplementation : public IDispatch
  1070.     {
  1071.     public:
  1072.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE hasFeature( 
  1073.             /* [in] */ BSTR bstrfeature,
  1074.             /* [in][optional] */ VARIANT version,
  1075.             /* [out][retval] */ VARIANT_BOOL *pfHasFeature) = 0;
  1076.         
  1077.     };
  1078.     
  1079. #else  /* C style interface */
  1080.     typedef struct IHTMLDOMImplementationVtbl
  1081.     {
  1082.         BEGIN_INTERFACE
  1083.         
  1084.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1085.             IHTMLDOMImplementation * This,
  1086.             /* [in] */ REFIID riid,
  1087.             /* [iid_is][out] */ void **ppvObject);
  1088.         
  1089.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1090.             IHTMLDOMImplementation * This);
  1091.         
  1092.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1093.             IHTMLDOMImplementation * This);
  1094.         
  1095.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1096.             IHTMLDOMImplementation * This,
  1097.             /* [out] */ UINT *pctinfo);
  1098.         
  1099.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1100.             IHTMLDOMImplementation * This,
  1101.             /* [in] */ UINT iTInfo,
  1102.             /* [in] */ LCID lcid,
  1103.             /* [out] */ ITypeInfo **ppTInfo);
  1104.         
  1105.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1106.             IHTMLDOMImplementation * This,
  1107.             /* [in] */ REFIID riid,
  1108.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1109.             /* [in] */ UINT cNames,
  1110.             /* [in] */ LCID lcid,
  1111.             /* [size_is][out] */ DISPID *rgDispId);
  1112.         
  1113.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1114.             IHTMLDOMImplementation * This,
  1115.             /* [in] */ DISPID dispIdMember,
  1116.             /* [in] */ REFIID riid,
  1117.             /* [in] */ LCID lcid,
  1118.             /* [in] */ WORD wFlags,
  1119.             /* [out][in] */ DISPPARAMS *pDispParams,
  1120.             /* [out] */ VARIANT *pVarResult,
  1121.             /* [out] */ EXCEPINFO *pExcepInfo,
  1122.             /* [out] */ UINT *puArgErr);
  1123.         
  1124.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *hasFeature )( 
  1125.             IHTMLDOMImplementation * This,
  1126.             /* [in] */ BSTR bstrfeature,
  1127.             /* [in][optional] */ VARIANT version,
  1128.             /* [out][retval] */ VARIANT_BOOL *pfHasFeature);
  1129.         
  1130.         END_INTERFACE
  1131.     } IHTMLDOMImplementationVtbl;
  1132.     interface IHTMLDOMImplementation
  1133.     {
  1134.         CONST_VTBL struct IHTMLDOMImplementationVtbl *lpVtbl;
  1135.     };
  1136.     
  1137. #ifdef COBJMACROS
  1138. #define IHTMLDOMImplementation_QueryInterface(This,riid,ppvObject)
  1139.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1140. #define IHTMLDOMImplementation_AddRef(This)
  1141.     (This)->lpVtbl -> AddRef(This)
  1142. #define IHTMLDOMImplementation_Release(This)
  1143.     (This)->lpVtbl -> Release(This)
  1144. #define IHTMLDOMImplementation_GetTypeInfoCount(This,pctinfo)
  1145.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1146. #define IHTMLDOMImplementation_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1147.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1148. #define IHTMLDOMImplementation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1149.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1150. #define IHTMLDOMImplementation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1151.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1152. #define IHTMLDOMImplementation_hasFeature(This,bstrfeature,version,pfHasFeature)
  1153.     (This)->lpVtbl -> hasFeature(This,bstrfeature,version,pfHasFeature)
  1154. #endif /* COBJMACROS */
  1155. #endif  /* C style interface */
  1156. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMImplementation_hasFeature_Proxy( 
  1157.     IHTMLDOMImplementation * This,
  1158.     /* [in] */ BSTR bstrfeature,
  1159.     /* [in][optional] */ VARIANT version,
  1160.     /* [out][retval] */ VARIANT_BOOL *pfHasFeature);
  1161. void __RPC_STUB IHTMLDOMImplementation_hasFeature_Stub(
  1162.     IRpcStubBuffer *This,
  1163.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1164.     PRPC_MESSAGE _pRpcMessage,
  1165.     DWORD *_pdwStubPhase);
  1166. #endif  /* __IHTMLDOMImplementation_INTERFACE_DEFINED__ */
  1167. #ifndef __DispHTMLDOMAttribute_DISPINTERFACE_DEFINED__
  1168. #define __DispHTMLDOMAttribute_DISPINTERFACE_DEFINED__
  1169. /* dispinterface DispHTMLDOMAttribute */
  1170. /* [uuid][hidden] */ 
  1171. EXTERN_C const IID DIID_DispHTMLDOMAttribute;
  1172. #if defined(__cplusplus) && !defined(CINTERFACE)
  1173.     MIDL_INTERFACE("3050f564-98b5-11cf-bb82-00aa00bdce0b")
  1174.     DispHTMLDOMAttribute : public IDispatch
  1175.     {
  1176.     };
  1177.     
  1178. #else  /* C style interface */
  1179.     typedef struct DispHTMLDOMAttributeVtbl
  1180.     {
  1181.         BEGIN_INTERFACE
  1182.         
  1183.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1184.             DispHTMLDOMAttribute * This,
  1185.             /* [in] */ REFIID riid,
  1186.             /* [iid_is][out] */ void **ppvObject);
  1187.         
  1188.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1189.             DispHTMLDOMAttribute * This);
  1190.         
  1191.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1192.             DispHTMLDOMAttribute * This);
  1193.         
  1194.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1195.             DispHTMLDOMAttribute * This,
  1196.             /* [out] */ UINT *pctinfo);
  1197.         
  1198.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1199.             DispHTMLDOMAttribute * This,
  1200.             /* [in] */ UINT iTInfo,
  1201.             /* [in] */ LCID lcid,
  1202.             /* [out] */ ITypeInfo **ppTInfo);
  1203.         
  1204.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1205.             DispHTMLDOMAttribute * This,
  1206.             /* [in] */ REFIID riid,
  1207.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1208.             /* [in] */ UINT cNames,
  1209.             /* [in] */ LCID lcid,
  1210.             /* [size_is][out] */ DISPID *rgDispId);
  1211.         
  1212.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1213.             DispHTMLDOMAttribute * This,
  1214.             /* [in] */ DISPID dispIdMember,
  1215.             /* [in] */ REFIID riid,
  1216.             /* [in] */ LCID lcid,
  1217.             /* [in] */ WORD wFlags,
  1218.             /* [out][in] */ DISPPARAMS *pDispParams,
  1219.             /* [out] */ VARIANT *pVarResult,
  1220.             /* [out] */ EXCEPINFO *pExcepInfo,
  1221.             /* [out] */ UINT *puArgErr);
  1222.         
  1223.         END_INTERFACE
  1224.     } DispHTMLDOMAttributeVtbl;
  1225.     interface DispHTMLDOMAttribute
  1226.     {
  1227.         CONST_VTBL struct DispHTMLDOMAttributeVtbl *lpVtbl;
  1228.     };
  1229.     
  1230. #ifdef COBJMACROS
  1231. #define DispHTMLDOMAttribute_QueryInterface(This,riid,ppvObject)
  1232.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1233. #define DispHTMLDOMAttribute_AddRef(This)
  1234.     (This)->lpVtbl -> AddRef(This)
  1235. #define DispHTMLDOMAttribute_Release(This)
  1236.     (This)->lpVtbl -> Release(This)
  1237. #define DispHTMLDOMAttribute_GetTypeInfoCount(This,pctinfo)
  1238.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1239. #define DispHTMLDOMAttribute_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1240.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1241. #define DispHTMLDOMAttribute_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1242.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1243. #define DispHTMLDOMAttribute_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1244.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1245. #endif /* COBJMACROS */
  1246. #endif  /* C style interface */
  1247. #endif  /* __DispHTMLDOMAttribute_DISPINTERFACE_DEFINED__ */
  1248. EXTERN_C const CLSID CLSID_HTMLDOMAttribute;
  1249. #ifdef __cplusplus
  1250. class DECLSPEC_UUID("3050f4b2-98b5-11cf-bb82-00aa00bdce0b")
  1251. HTMLDOMAttribute;
  1252. #endif
  1253. #ifndef __DispHTMLDOMTextNode_DISPINTERFACE_DEFINED__
  1254. #define __DispHTMLDOMTextNode_DISPINTERFACE_DEFINED__
  1255. /* dispinterface DispHTMLDOMTextNode */
  1256. /* [uuid][hidden] */ 
  1257. EXTERN_C const IID DIID_DispHTMLDOMTextNode;
  1258. #if defined(__cplusplus) && !defined(CINTERFACE)
  1259.     MIDL_INTERFACE("3050f565-98b5-11cf-bb82-00aa00bdce0b")
  1260.     DispHTMLDOMTextNode : public IDispatch
  1261.     {
  1262.     };
  1263.     
  1264. #else  /* C style interface */
  1265.     typedef struct DispHTMLDOMTextNodeVtbl
  1266.     {
  1267.         BEGIN_INTERFACE
  1268.         
  1269.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1270.             DispHTMLDOMTextNode * This,
  1271.             /* [in] */ REFIID riid,
  1272.             /* [iid_is][out] */ void **ppvObject);
  1273.         
  1274.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1275.             DispHTMLDOMTextNode * This);
  1276.         
  1277.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1278.             DispHTMLDOMTextNode * This);
  1279.         
  1280.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1281.             DispHTMLDOMTextNode * This,
  1282.             /* [out] */ UINT *pctinfo);
  1283.         
  1284.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1285.             DispHTMLDOMTextNode * This,
  1286.             /* [in] */ UINT iTInfo,
  1287.             /* [in] */ LCID lcid,
  1288.             /* [out] */ ITypeInfo **ppTInfo);
  1289.         
  1290.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1291.             DispHTMLDOMTextNode * This,
  1292.             /* [in] */ REFIID riid,
  1293.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1294.             /* [in] */ UINT cNames,
  1295.             /* [in] */ LCID lcid,
  1296.             /* [size_is][out] */ DISPID *rgDispId);
  1297.         
  1298.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1299.             DispHTMLDOMTextNode * This,
  1300.             /* [in] */ DISPID dispIdMember,
  1301.             /* [in] */ REFIID riid,
  1302.             /* [in] */ LCID lcid,
  1303.             /* [in] */ WORD wFlags,
  1304.             /* [out][in] */ DISPPARAMS *pDispParams,
  1305.             /* [out] */ VARIANT *pVarResult,
  1306.             /* [out] */ EXCEPINFO *pExcepInfo,
  1307.             /* [out] */ UINT *puArgErr);
  1308.         
  1309.         END_INTERFACE
  1310.     } DispHTMLDOMTextNodeVtbl;
  1311.     interface DispHTMLDOMTextNode
  1312.     {
  1313.         CONST_VTBL struct DispHTMLDOMTextNodeVtbl *lpVtbl;
  1314.     };
  1315.     
  1316. #ifdef COBJMACROS
  1317. #define DispHTMLDOMTextNode_QueryInterface(This,riid,ppvObject)
  1318.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1319. #define DispHTMLDOMTextNode_AddRef(This)
  1320.     (This)->lpVtbl -> AddRef(This)
  1321. #define DispHTMLDOMTextNode_Release(This)
  1322.     (This)->lpVtbl -> Release(This)
  1323. #define DispHTMLDOMTextNode_GetTypeInfoCount(This,pctinfo)
  1324.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1325. #define DispHTMLDOMTextNode_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1326.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1327. #define DispHTMLDOMTextNode_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1328.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1329. #define DispHTMLDOMTextNode_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1330.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1331. #endif /* COBJMACROS */
  1332. #endif  /* C style interface */
  1333. #endif  /* __DispHTMLDOMTextNode_DISPINTERFACE_DEFINED__ */
  1334. EXTERN_C const CLSID CLSID_HTMLDOMTextNode;
  1335. #ifdef __cplusplus
  1336. class DECLSPEC_UUID("3050f4ba-98b5-11cf-bb82-00aa00bdce0b")
  1337. HTMLDOMTextNode;
  1338. #endif
  1339. #ifndef __DispHTMLDOMImplementation_DISPINTERFACE_DEFINED__
  1340. #define __DispHTMLDOMImplementation_DISPINTERFACE_DEFINED__
  1341. /* dispinterface DispHTMLDOMImplementation */
  1342. /* [uuid][hidden] */ 
  1343. EXTERN_C const IID DIID_DispHTMLDOMImplementation;
  1344. #if defined(__cplusplus) && !defined(CINTERFACE)
  1345.     MIDL_INTERFACE("3050f58f-98b5-11cf-bb82-00aa00bdce0b")
  1346.     DispHTMLDOMImplementation : public IDispatch
  1347.     {
  1348.     };
  1349.     
  1350. #else  /* C style interface */
  1351.     typedef struct DispHTMLDOMImplementationVtbl
  1352.     {
  1353.         BEGIN_INTERFACE
  1354.         
  1355.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1356.             DispHTMLDOMImplementation * This,
  1357.             /* [in] */ REFIID riid,
  1358.             /* [iid_is][out] */ void **ppvObject);
  1359.         
  1360.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1361.             DispHTMLDOMImplementation * This);
  1362.         
  1363.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1364.             DispHTMLDOMImplementation * This);
  1365.         
  1366.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1367.             DispHTMLDOMImplementation * This,
  1368.             /* [out] */ UINT *pctinfo);
  1369.         
  1370.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1371.             DispHTMLDOMImplementation * This,
  1372.             /* [in] */ UINT iTInfo,
  1373.             /* [in] */ LCID lcid,
  1374.             /* [out] */ ITypeInfo **ppTInfo);
  1375.         
  1376.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1377.             DispHTMLDOMImplementation * This,
  1378.             /* [in] */ REFIID riid,
  1379.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1380.             /* [in] */ UINT cNames,
  1381.             /* [in] */ LCID lcid,
  1382.             /* [size_is][out] */ DISPID *rgDispId);
  1383.         
  1384.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1385.             DispHTMLDOMImplementation * This,
  1386.             /* [in] */ DISPID dispIdMember,
  1387.             /* [in] */ REFIID riid,
  1388.             /* [in] */ LCID lcid,
  1389.             /* [in] */ WORD wFlags,
  1390.             /* [out][in] */ DISPPARAMS *pDispParams,
  1391.             /* [out] */ VARIANT *pVarResult,
  1392.             /* [out] */ EXCEPINFO *pExcepInfo,
  1393.             /* [out] */ UINT *puArgErr);
  1394.         
  1395.         END_INTERFACE
  1396.     } DispHTMLDOMImplementationVtbl;
  1397.     interface DispHTMLDOMImplementation
  1398.     {
  1399.         CONST_VTBL struct DispHTMLDOMImplementationVtbl *lpVtbl;
  1400.     };
  1401.     
  1402. #ifdef COBJMACROS
  1403. #define DispHTMLDOMImplementation_QueryInterface(This,riid,ppvObject)
  1404.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1405. #define DispHTMLDOMImplementation_AddRef(This)
  1406.     (This)->lpVtbl -> AddRef(This)
  1407. #define DispHTMLDOMImplementation_Release(This)
  1408.     (This)->lpVtbl -> Release(This)
  1409. #define DispHTMLDOMImplementation_GetTypeInfoCount(This,pctinfo)
  1410.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1411. #define DispHTMLDOMImplementation_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1412.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1413. #define DispHTMLDOMImplementation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1414.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1415. #define DispHTMLDOMImplementation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1416.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1417. #endif /* COBJMACROS */
  1418. #endif  /* C style interface */
  1419. #endif  /* __DispHTMLDOMImplementation_DISPINTERFACE_DEFINED__ */
  1420. EXTERN_C const CLSID CLSID_HTMLDOMImplementation;
  1421. #ifdef __cplusplus
  1422. class DECLSPEC_UUID("3050f80e-98b5-11cf-bb82-00aa00bdce0b")
  1423. HTMLDOMImplementation;
  1424. #endif
  1425. #ifndef __IHTMLAttributeCollection_INTERFACE_DEFINED__
  1426. #define __IHTMLAttributeCollection_INTERFACE_DEFINED__
  1427. /* interface IHTMLAttributeCollection */
  1428. /* [object][uuid][dual][oleautomation] */ 
  1429. EXTERN_C const IID IID_IHTMLAttributeCollection;
  1430. #if defined(__cplusplus) && !defined(CINTERFACE)
  1431.     
  1432.     MIDL_INTERFACE("3050f4c3-98b5-11cf-bb82-00aa00bdce0b")
  1433.     IHTMLAttributeCollection : public IDispatch
  1434.     {
  1435.     public:
  1436.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_length( 
  1437.             /* [out][retval] */ long *p) = 0;
  1438.         
  1439.         virtual /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__newEnum( 
  1440.             /* [out][retval] */ IUnknown **p) = 0;
  1441.         
  1442.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE item( 
  1443.             /* [in][optional] */ VARIANT *name,
  1444.             /* [out][retval] */ IDispatch **pdisp) = 0;
  1445.         
  1446.     };
  1447.     
  1448. #else  /* C style interface */
  1449.     typedef struct IHTMLAttributeCollectionVtbl
  1450.     {
  1451.         BEGIN_INTERFACE
  1452.         
  1453.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1454.             IHTMLAttributeCollection * This,
  1455.             /* [in] */ REFIID riid,
  1456.             /* [iid_is][out] */ void **ppvObject);
  1457.         
  1458.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1459.             IHTMLAttributeCollection * This);
  1460.         
  1461.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1462.             IHTMLAttributeCollection * This);
  1463.         
  1464.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1465.             IHTMLAttributeCollection * This,
  1466.             /* [out] */ UINT *pctinfo);
  1467.         
  1468.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1469.             IHTMLAttributeCollection * This,
  1470.             /* [in] */ UINT iTInfo,
  1471.             /* [in] */ LCID lcid,
  1472.             /* [out] */ ITypeInfo **ppTInfo);
  1473.         
  1474.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1475.             IHTMLAttributeCollection * This,
  1476.             /* [in] */ REFIID riid,
  1477.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1478.             /* [in] */ UINT cNames,
  1479.             /* [in] */ LCID lcid,
  1480.             /* [size_is][out] */ DISPID *rgDispId);
  1481.         
  1482.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1483.             IHTMLAttributeCollection * This,
  1484.             /* [in] */ DISPID dispIdMember,
  1485.             /* [in] */ REFIID riid,
  1486.             /* [in] */ LCID lcid,
  1487.             /* [in] */ WORD wFlags,
  1488.             /* [out][in] */ DISPPARAMS *pDispParams,
  1489.             /* [out] */ VARIANT *pVarResult,
  1490.             /* [out] */ EXCEPINFO *pExcepInfo,
  1491.             /* [out] */ UINT *puArgErr);
  1492.         
  1493.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_length )( 
  1494.             IHTMLAttributeCollection * This,
  1495.             /* [out][retval] */ long *p);
  1496.         
  1497.         /* [restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__newEnum )( 
  1498.             IHTMLAttributeCollection * This,
  1499.             /* [out][retval] */ IUnknown **p);
  1500.         
  1501.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *item )( 
  1502.             IHTMLAttributeCollection * This,
  1503.             /* [in][optional] */ VARIANT *name,
  1504.             /* [out][retval] */ IDispatch **pdisp);
  1505.         
  1506.         END_INTERFACE
  1507.     } IHTMLAttributeCollectionVtbl;
  1508.     interface IHTMLAttributeCollection
  1509.     {
  1510.         CONST_VTBL struct IHTMLAttributeCollectionVtbl *lpVtbl;
  1511.     };
  1512.     
  1513. #ifdef COBJMACROS
  1514. #define IHTMLAttributeCollection_QueryInterface(This,riid,ppvObject)
  1515.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1516. #define IHTMLAttributeCollection_AddRef(This)
  1517.     (This)->lpVtbl -> AddRef(This)
  1518. #define IHTMLAttributeCollection_Release(This)
  1519.     (This)->lpVtbl -> Release(This)
  1520. #define IHTMLAttributeCollection_GetTypeInfoCount(This,pctinfo)
  1521.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1522. #define IHTMLAttributeCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1523.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1524. #define IHTMLAttributeCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1525.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1526. #define IHTMLAttributeCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1527.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1528. #define IHTMLAttributeCollection_get_length(This,p)
  1529.     (This)->lpVtbl -> get_length(This,p)
  1530. #define IHTMLAttributeCollection_get__newEnum(This,p)
  1531.     (This)->lpVtbl -> get__newEnum(This,p)
  1532. #define IHTMLAttributeCollection_item(This,name,pdisp)
  1533.     (This)->lpVtbl -> item(This,name,pdisp)
  1534. #endif /* COBJMACROS */
  1535. #endif  /* C style interface */
  1536. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection_get_length_Proxy( 
  1537.     IHTMLAttributeCollection * This,
  1538.     /* [out][retval] */ long *p);
  1539. void __RPC_STUB IHTMLAttributeCollection_get_length_Stub(
  1540.     IRpcStubBuffer *This,
  1541.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1542.     PRPC_MESSAGE _pRpcMessage,
  1543.     DWORD *_pdwStubPhase);
  1544. /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection_get__newEnum_Proxy( 
  1545.     IHTMLAttributeCollection * This,
  1546.     /* [out][retval] */ IUnknown **p);
  1547. void __RPC_STUB IHTMLAttributeCollection_get__newEnum_Stub(
  1548.     IRpcStubBuffer *This,
  1549.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1550.     PRPC_MESSAGE _pRpcMessage,
  1551.     DWORD *_pdwStubPhase);
  1552. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection_item_Proxy( 
  1553.     IHTMLAttributeCollection * This,
  1554.     /* [in][optional] */ VARIANT *name,
  1555.     /* [out][retval] */ IDispatch **pdisp);
  1556. void __RPC_STUB IHTMLAttributeCollection_item_Stub(
  1557.     IRpcStubBuffer *This,
  1558.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1559.     PRPC_MESSAGE _pRpcMessage,
  1560.     DWORD *_pdwStubPhase);
  1561. #endif  /* __IHTMLAttributeCollection_INTERFACE_DEFINED__ */
  1562. #ifndef __IHTMLAttributeCollection2_INTERFACE_DEFINED__
  1563. #define __IHTMLAttributeCollection2_INTERFACE_DEFINED__
  1564. /* interface IHTMLAttributeCollection2 */
  1565. /* [object][uuid][dual][oleautomation] */ 
  1566. EXTERN_C const IID IID_IHTMLAttributeCollection2;
  1567. #if defined(__cplusplus) && !defined(CINTERFACE)
  1568.     
  1569.     MIDL_INTERFACE("3050f80a-98b5-11cf-bb82-00aa00bdce0b")
  1570.     IHTMLAttributeCollection2 : public IDispatch
  1571.     {
  1572.     public:
  1573.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE getNamedItem( 
  1574.             /* [in] */ BSTR bstrName,
  1575.             /* [out][retval] */ IHTMLDOMAttribute **newretNode) = 0;
  1576.         
  1577.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE setNamedItem( 
  1578.             /* [in] */ IHTMLDOMAttribute *ppNode,
  1579.             /* [out][retval] */ IHTMLDOMAttribute **newretNode) = 0;
  1580.         
  1581.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE removeNamedItem( 
  1582.             /* [in] */ BSTR bstrName,
  1583.             /* [out][retval] */ IHTMLDOMAttribute **newretNode) = 0;
  1584.         
  1585.     };
  1586.     
  1587. #else  /* C style interface */
  1588.     typedef struct IHTMLAttributeCollection2Vtbl
  1589.     {
  1590.         BEGIN_INTERFACE
  1591.         
  1592.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1593.             IHTMLAttributeCollection2 * This,
  1594.             /* [in] */ REFIID riid,
  1595.             /* [iid_is][out] */ void **ppvObject);
  1596.         
  1597.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1598.             IHTMLAttributeCollection2 * This);
  1599.         
  1600.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1601.             IHTMLAttributeCollection2 * This);
  1602.         
  1603.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1604.             IHTMLAttributeCollection2 * This,
  1605.             /* [out] */ UINT *pctinfo);
  1606.         
  1607.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1608.             IHTMLAttributeCollection2 * This,
  1609.             /* [in] */ UINT iTInfo,
  1610.             /* [in] */ LCID lcid,
  1611.             /* [out] */ ITypeInfo **ppTInfo);
  1612.         
  1613.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1614.             IHTMLAttributeCollection2 * This,
  1615.             /* [in] */ REFIID riid,
  1616.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1617.             /* [in] */ UINT cNames,
  1618.             /* [in] */ LCID lcid,
  1619.             /* [size_is][out] */ DISPID *rgDispId);
  1620.         
  1621.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1622.             IHTMLAttributeCollection2 * This,
  1623.             /* [in] */ DISPID dispIdMember,
  1624.             /* [in] */ REFIID riid,
  1625.             /* [in] */ LCID lcid,
  1626.             /* [in] */ WORD wFlags,
  1627.             /* [out][in] */ DISPPARAMS *pDispParams,
  1628.             /* [out] */ VARIANT *pVarResult,
  1629.             /* [out] */ EXCEPINFO *pExcepInfo,
  1630.             /* [out] */ UINT *puArgErr);
  1631.         
  1632.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *getNamedItem )( 
  1633.             IHTMLAttributeCollection2 * This,
  1634.             /* [in] */ BSTR bstrName,
  1635.             /* [out][retval] */ IHTMLDOMAttribute **newretNode);
  1636.         
  1637.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *setNamedItem )( 
  1638.             IHTMLAttributeCollection2 * This,
  1639.             /* [in] */ IHTMLDOMAttribute *ppNode,
  1640.             /* [out][retval] */ IHTMLDOMAttribute **newretNode);
  1641.         
  1642.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *removeNamedItem )( 
  1643.             IHTMLAttributeCollection2 * This,
  1644.             /* [in] */ BSTR bstrName,
  1645.             /* [out][retval] */ IHTMLDOMAttribute **newretNode);
  1646.         
  1647.         END_INTERFACE
  1648.     } IHTMLAttributeCollection2Vtbl;
  1649.     interface IHTMLAttributeCollection2
  1650.     {
  1651.         CONST_VTBL struct IHTMLAttributeCollection2Vtbl *lpVtbl;
  1652.     };
  1653.     
  1654. #ifdef COBJMACROS
  1655. #define IHTMLAttributeCollection2_QueryInterface(This,riid,ppvObject)
  1656.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1657. #define IHTMLAttributeCollection2_AddRef(This)
  1658.     (This)->lpVtbl -> AddRef(This)
  1659. #define IHTMLAttributeCollection2_Release(This)
  1660.     (This)->lpVtbl -> Release(This)
  1661. #define IHTMLAttributeCollection2_GetTypeInfoCount(This,pctinfo)
  1662.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1663. #define IHTMLAttributeCollection2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1664.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1665. #define IHTMLAttributeCollection2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1666.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1667. #define IHTMLAttributeCollection2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1668.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1669. #define IHTMLAttributeCollection2_getNamedItem(This,bstrName,newretNode)
  1670.     (This)->lpVtbl -> getNamedItem(This,bstrName,newretNode)
  1671. #define IHTMLAttributeCollection2_setNamedItem(This,ppNode,newretNode)
  1672.     (This)->lpVtbl -> setNamedItem(This,ppNode,newretNode)
  1673. #define IHTMLAttributeCollection2_removeNamedItem(This,bstrName,newretNode)
  1674.     (This)->lpVtbl -> removeNamedItem(This,bstrName,newretNode)
  1675. #endif /* COBJMACROS */
  1676. #endif  /* C style interface */
  1677. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection2_getNamedItem_Proxy( 
  1678.     IHTMLAttributeCollection2 * This,
  1679.     /* [in] */ BSTR bstrName,
  1680.     /* [out][retval] */ IHTMLDOMAttribute **newretNode);
  1681. void __RPC_STUB IHTMLAttributeCollection2_getNamedItem_Stub(
  1682.     IRpcStubBuffer *This,
  1683.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1684.     PRPC_MESSAGE _pRpcMessage,
  1685.     DWORD *_pdwStubPhase);
  1686. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection2_setNamedItem_Proxy( 
  1687.     IHTMLAttributeCollection2 * This,
  1688.     /* [in] */ IHTMLDOMAttribute *ppNode,
  1689.     /* [out][retval] */ IHTMLDOMAttribute **newretNode);
  1690. void __RPC_STUB IHTMLAttributeCollection2_setNamedItem_Stub(
  1691.     IRpcStubBuffer *This,
  1692.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1693.     PRPC_MESSAGE _pRpcMessage,
  1694.     DWORD *_pdwStubPhase);
  1695. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLAttributeCollection2_removeNamedItem_Proxy( 
  1696.     IHTMLAttributeCollection2 * This,
  1697.     /* [in] */ BSTR bstrName,
  1698.     /* [out][retval] */ IHTMLDOMAttribute **newretNode);
  1699. void __RPC_STUB IHTMLAttributeCollection2_removeNamedItem_Stub(
  1700.     IRpcStubBuffer *This,
  1701.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1702.     PRPC_MESSAGE _pRpcMessage,
  1703.     DWORD *_pdwStubPhase);
  1704. #endif  /* __IHTMLAttributeCollection2_INTERFACE_DEFINED__ */
  1705. #ifndef __IHTMLDOMChildrenCollection_INTERFACE_DEFINED__
  1706. #define __IHTMLDOMChildrenCollection_INTERFACE_DEFINED__
  1707. /* interface IHTMLDOMChildrenCollection */
  1708. /* [object][uuid][dual][oleautomation] */ 
  1709. EXTERN_C const IID IID_IHTMLDOMChildrenCollection;
  1710. #if defined(__cplusplus) && !defined(CINTERFACE)
  1711.     
  1712.     MIDL_INTERFACE("3050f5ab-98b5-11cf-bb82-00aa00bdce0b")
  1713.     IHTMLDOMChildrenCollection : public IDispatch
  1714.     {
  1715.     public:
  1716.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_length( 
  1717.             /* [out][retval] */ long *p) = 0;
  1718.         
  1719.         virtual /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__newEnum( 
  1720.             /* [out][retval] */ IUnknown **p) = 0;
  1721.         
  1722.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE item( 
  1723.             /* [in] */ long index,
  1724.             /* [out][retval] */ IDispatch **ppItem) = 0;
  1725.         
  1726.     };
  1727.     
  1728. #else  /* C style interface */
  1729.     typedef struct IHTMLDOMChildrenCollectionVtbl
  1730.     {
  1731.         BEGIN_INTERFACE
  1732.         
  1733.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1734.             IHTMLDOMChildrenCollection * This,
  1735.             /* [in] */ REFIID riid,
  1736.             /* [iid_is][out] */ void **ppvObject);
  1737.         
  1738.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1739.             IHTMLDOMChildrenCollection * This);
  1740.         
  1741.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1742.             IHTMLDOMChildrenCollection * This);
  1743.         
  1744.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1745.             IHTMLDOMChildrenCollection * This,
  1746.             /* [out] */ UINT *pctinfo);
  1747.         
  1748.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1749.             IHTMLDOMChildrenCollection * This,
  1750.             /* [in] */ UINT iTInfo,
  1751.             /* [in] */ LCID lcid,
  1752.             /* [out] */ ITypeInfo **ppTInfo);
  1753.         
  1754.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1755.             IHTMLDOMChildrenCollection * This,
  1756.             /* [in] */ REFIID riid,
  1757.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1758.             /* [in] */ UINT cNames,
  1759.             /* [in] */ LCID lcid,
  1760.             /* [size_is][out] */ DISPID *rgDispId);
  1761.         
  1762.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1763.             IHTMLDOMChildrenCollection * This,
  1764.             /* [in] */ DISPID dispIdMember,
  1765.             /* [in] */ REFIID riid,
  1766.             /* [in] */ LCID lcid,
  1767.             /* [in] */ WORD wFlags,
  1768.             /* [out][in] */ DISPPARAMS *pDispParams,
  1769.             /* [out] */ VARIANT *pVarResult,
  1770.             /* [out] */ EXCEPINFO *pExcepInfo,
  1771.             /* [out] */ UINT *puArgErr);
  1772.         
  1773.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_length )( 
  1774.             IHTMLDOMChildrenCollection * This,
  1775.             /* [out][retval] */ long *p);
  1776.         
  1777.         /* [restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__newEnum )( 
  1778.             IHTMLDOMChildrenCollection * This,
  1779.             /* [out][retval] */ IUnknown **p);
  1780.         
  1781.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *item )( 
  1782.             IHTMLDOMChildrenCollection * This,
  1783.             /* [in] */ long index,
  1784.             /* [out][retval] */ IDispatch **ppItem);
  1785.         
  1786.         END_INTERFACE
  1787.     } IHTMLDOMChildrenCollectionVtbl;
  1788.     interface IHTMLDOMChildrenCollection
  1789.     {
  1790.         CONST_VTBL struct IHTMLDOMChildrenCollectionVtbl *lpVtbl;
  1791.     };
  1792.     
  1793. #ifdef COBJMACROS
  1794. #define IHTMLDOMChildrenCollection_QueryInterface(This,riid,ppvObject)
  1795.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1796. #define IHTMLDOMChildrenCollection_AddRef(This)
  1797.     (This)->lpVtbl -> AddRef(This)
  1798. #define IHTMLDOMChildrenCollection_Release(This)
  1799.     (This)->lpVtbl -> Release(This)
  1800. #define IHTMLDOMChildrenCollection_GetTypeInfoCount(This,pctinfo)
  1801.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1802. #define IHTMLDOMChildrenCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1803.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1804. #define IHTMLDOMChildrenCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1805.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1806. #define IHTMLDOMChildrenCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1807.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1808. #define IHTMLDOMChildrenCollection_get_length(This,p)
  1809.     (This)->lpVtbl -> get_length(This,p)
  1810. #define IHTMLDOMChildrenCollection_get__newEnum(This,p)
  1811.     (This)->lpVtbl -> get__newEnum(This,p)
  1812. #define IHTMLDOMChildrenCollection_item(This,index,ppItem)
  1813.     (This)->lpVtbl -> item(This,index,ppItem)
  1814. #endif /* COBJMACROS */
  1815. #endif  /* C style interface */
  1816. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMChildrenCollection_get_length_Proxy( 
  1817.     IHTMLDOMChildrenCollection * This,
  1818.     /* [out][retval] */ long *p);
  1819. void __RPC_STUB IHTMLDOMChildrenCollection_get_length_Stub(
  1820.     IRpcStubBuffer *This,
  1821.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1822.     PRPC_MESSAGE _pRpcMessage,
  1823.     DWORD *_pdwStubPhase);
  1824. /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLDOMChildrenCollection_get__newEnum_Proxy( 
  1825.     IHTMLDOMChildrenCollection * This,
  1826.     /* [out][retval] */ IUnknown **p);
  1827. void __RPC_STUB IHTMLDOMChildrenCollection_get__newEnum_Stub(
  1828.     IRpcStubBuffer *This,
  1829.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1830.     PRPC_MESSAGE _pRpcMessage,
  1831.     DWORD *_pdwStubPhase);
  1832. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLDOMChildrenCollection_item_Proxy( 
  1833.     IHTMLDOMChildrenCollection * This,
  1834.     /* [in] */ long index,
  1835.     /* [out][retval] */ IDispatch **ppItem);
  1836. void __RPC_STUB IHTMLDOMChildrenCollection_item_Stub(
  1837.     IRpcStubBuffer *This,
  1838.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1839.     PRPC_MESSAGE _pRpcMessage,
  1840.     DWORD *_pdwStubPhase);
  1841. #endif  /* __IHTMLDOMChildrenCollection_INTERFACE_DEFINED__ */
  1842. #ifndef __DispHTMLAttributeCollection_DISPINTERFACE_DEFINED__
  1843. #define __DispHTMLAttributeCollection_DISPINTERFACE_DEFINED__
  1844. /* dispinterface DispHTMLAttributeCollection */
  1845. /* [uuid][hidden] */ 
  1846. EXTERN_C const IID DIID_DispHTMLAttributeCollection;
  1847. #if defined(__cplusplus) && !defined(CINTERFACE)
  1848.     MIDL_INTERFACE("3050f56c-98b5-11cf-bb82-00aa00bdce0b")
  1849.     DispHTMLAttributeCollection : public IDispatch
  1850.     {
  1851.     };
  1852.     
  1853. #else  /* C style interface */
  1854.     typedef struct DispHTMLAttributeCollectionVtbl
  1855.     {
  1856.         BEGIN_INTERFACE
  1857.         
  1858.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1859.             DispHTMLAttributeCollection * This,
  1860.             /* [in] */ REFIID riid,
  1861.             /* [iid_is][out] */ void **ppvObject);
  1862.         
  1863.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1864.             DispHTMLAttributeCollection * This);
  1865.         
  1866.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1867.             DispHTMLAttributeCollection * This);
  1868.         
  1869.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1870.             DispHTMLAttributeCollection * This,
  1871.             /* [out] */ UINT *pctinfo);
  1872.         
  1873.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1874.             DispHTMLAttributeCollection * This,
  1875.             /* [in] */ UINT iTInfo,
  1876.             /* [in] */ LCID lcid,
  1877.             /* [out] */ ITypeInfo **ppTInfo);
  1878.         
  1879.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1880.             DispHTMLAttributeCollection * This,
  1881.             /* [in] */ REFIID riid,
  1882.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1883.             /* [in] */ UINT cNames,
  1884.             /* [in] */ LCID lcid,
  1885.             /* [size_is][out] */ DISPID *rgDispId);
  1886.         
  1887.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1888.             DispHTMLAttributeCollection * This,
  1889.             /* [in] */ DISPID dispIdMember,
  1890.             /* [in] */ REFIID riid,
  1891.             /* [in] */ LCID lcid,
  1892.             /* [in] */ WORD wFlags,
  1893.             /* [out][in] */ DISPPARAMS *pDispParams,
  1894.             /* [out] */ VARIANT *pVarResult,
  1895.             /* [out] */ EXCEPINFO *pExcepInfo,
  1896.             /* [out] */ UINT *puArgErr);
  1897.         
  1898.         END_INTERFACE
  1899.     } DispHTMLAttributeCollectionVtbl;
  1900.     interface DispHTMLAttributeCollection
  1901.     {
  1902.         CONST_VTBL struct DispHTMLAttributeCollectionVtbl *lpVtbl;
  1903.     };
  1904.     
  1905. #ifdef COBJMACROS
  1906. #define DispHTMLAttributeCollection_QueryInterface(This,riid,ppvObject)
  1907.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1908. #define DispHTMLAttributeCollection_AddRef(This)
  1909.     (This)->lpVtbl -> AddRef(This)
  1910. #define DispHTMLAttributeCollection_Release(This)
  1911.     (This)->lpVtbl -> Release(This)
  1912. #define DispHTMLAttributeCollection_GetTypeInfoCount(This,pctinfo)
  1913.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1914. #define DispHTMLAttributeCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1915.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1916. #define DispHTMLAttributeCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1917.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1918. #define DispHTMLAttributeCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1919.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1920. #endif /* COBJMACROS */
  1921. #endif  /* C style interface */
  1922. #endif  /* __DispHTMLAttributeCollection_DISPINTERFACE_DEFINED__ */
  1923. EXTERN_C const CLSID CLSID_HTMLAttributeCollection;
  1924. #ifdef __cplusplus
  1925. class DECLSPEC_UUID("3050f4cc-98b5-11cf-bb82-00aa00bdce0b")
  1926. HTMLAttributeCollection;
  1927. #endif
  1928. #ifndef __DispDOMChildrenCollection_DISPINTERFACE_DEFINED__
  1929. #define __DispDOMChildrenCollection_DISPINTERFACE_DEFINED__
  1930. /* dispinterface DispDOMChildrenCollection */
  1931. /* [uuid][hidden] */ 
  1932. EXTERN_C const IID DIID_DispDOMChildrenCollection;
  1933. #if defined(__cplusplus) && !defined(CINTERFACE)
  1934.     MIDL_INTERFACE("3050f577-98b5-11cf-bb82-00aa00bdce0b")
  1935.     DispDOMChildrenCollection : public IDispatch
  1936.     {
  1937.     };
  1938.     
  1939. #else  /* C style interface */
  1940.     typedef struct DispDOMChildrenCollectionVtbl
  1941.     {
  1942.         BEGIN_INTERFACE
  1943.         
  1944.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1945.             DispDOMChildrenCollection * This,
  1946.             /* [in] */ REFIID riid,
  1947.             /* [iid_is][out] */ void **ppvObject);
  1948.         
  1949.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1950.             DispDOMChildrenCollection * This);
  1951.         
  1952.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1953.             DispDOMChildrenCollection * This);
  1954.         
  1955.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1956.             DispDOMChildrenCollection * This,
  1957.             /* [out] */ UINT *pctinfo);
  1958.         
  1959.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1960.             DispDOMChildrenCollection * This,
  1961.             /* [in] */ UINT iTInfo,
  1962.             /* [in] */ LCID lcid,
  1963.             /* [out] */ ITypeInfo **ppTInfo);
  1964.         
  1965.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1966.             DispDOMChildrenCollection * This,
  1967.             /* [in] */ REFIID riid,
  1968.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1969.             /* [in] */ UINT cNames,
  1970.             /* [in] */ LCID lcid,
  1971.             /* [size_is][out] */ DISPID *rgDispId);
  1972.         
  1973.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1974.             DispDOMChildrenCollection * This,
  1975.             /* [in] */ DISPID dispIdMember,
  1976.             /* [in] */ REFIID riid,
  1977.             /* [in] */ LCID lcid,
  1978.             /* [in] */ WORD wFlags,
  1979.             /* [out][in] */ DISPPARAMS *pDispParams,
  1980.             /* [out] */ VARIANT *pVarResult,
  1981.             /* [out] */ EXCEPINFO *pExcepInfo,
  1982.             /* [out] */ UINT *puArgErr);
  1983.         
  1984.         END_INTERFACE
  1985.     } DispDOMChildrenCollectionVtbl;
  1986.     interface DispDOMChildrenCollection
  1987.     {
  1988.         CONST_VTBL struct DispDOMChildrenCollectionVtbl *lpVtbl;
  1989.     };
  1990.     
  1991. #ifdef COBJMACROS
  1992. #define DispDOMChildrenCollection_QueryInterface(This,riid,ppvObject)
  1993.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1994. #define DispDOMChildrenCollection_AddRef(This)
  1995.     (This)->lpVtbl -> AddRef(This)
  1996. #define DispDOMChildrenCollection_Release(This)
  1997.     (This)->lpVtbl -> Release(This)
  1998. #define DispDOMChildrenCollection_GetTypeInfoCount(This,pctinfo)
  1999.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2000. #define DispDOMChildrenCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2001.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2002. #define DispDOMChildrenCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2003.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2004. #define DispDOMChildrenCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2005.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2006. #endif /* COBJMACROS */
  2007. #endif  /* C style interface */
  2008. #endif  /* __DispDOMChildrenCollection_DISPINTERFACE_DEFINED__ */
  2009. EXTERN_C const CLSID CLSID_DOMChildrenCollection;
  2010. #ifdef __cplusplus
  2011. class DECLSPEC_UUID("3050f5aa-98b5-11cf-bb82-00aa00bdce0b")
  2012. DOMChildrenCollection;
  2013. #endif
  2014. #ifndef __HTMLElementEvents2_DISPINTERFACE_DEFINED__
  2015. #define __HTMLElementEvents2_DISPINTERFACE_DEFINED__
  2016. /* dispinterface HTMLElementEvents2 */
  2017. /* [uuid][hidden] */ 
  2018. EXTERN_C const IID DIID_HTMLElementEvents2;
  2019. #if defined(__cplusplus) && !defined(CINTERFACE)
  2020.     MIDL_INTERFACE("3050f60f-98b5-11cf-bb82-00aa00bdce0b")
  2021.     HTMLElementEvents2 : public IDispatch
  2022.     {
  2023.     };
  2024.     
  2025. #else  /* C style interface */
  2026.     typedef struct HTMLElementEvents2Vtbl
  2027.     {
  2028.         BEGIN_INTERFACE
  2029.         
  2030.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2031.             HTMLElementEvents2 * This,
  2032.             /* [in] */ REFIID riid,
  2033.             /* [iid_is][out] */ void **ppvObject);
  2034.         
  2035.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2036.             HTMLElementEvents2 * This);
  2037.         
  2038.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2039.             HTMLElementEvents2 * This);
  2040.         
  2041.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2042.             HTMLElementEvents2 * This,
  2043.             /* [out] */ UINT *pctinfo);
  2044.         
  2045.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2046.             HTMLElementEvents2 * This,
  2047.             /* [in] */ UINT iTInfo,
  2048.             /* [in] */ LCID lcid,
  2049.             /* [out] */ ITypeInfo **ppTInfo);
  2050.         
  2051.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2052.             HTMLElementEvents2 * This,
  2053.             /* [in] */ REFIID riid,
  2054.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2055.             /* [in] */ UINT cNames,
  2056.             /* [in] */ LCID lcid,
  2057.             /* [size_is][out] */ DISPID *rgDispId);
  2058.         
  2059.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2060.             HTMLElementEvents2 * This,
  2061.             /* [in] */ DISPID dispIdMember,
  2062.             /* [in] */ REFIID riid,
  2063.             /* [in] */ LCID lcid,
  2064.             /* [in] */ WORD wFlags,
  2065.             /* [out][in] */ DISPPARAMS *pDispParams,
  2066.             /* [out] */ VARIANT *pVarResult,
  2067.             /* [out] */ EXCEPINFO *pExcepInfo,
  2068.             /* [out] */ UINT *puArgErr);
  2069.         
  2070.         END_INTERFACE
  2071.     } HTMLElementEvents2Vtbl;
  2072.     interface HTMLElementEvents2
  2073.     {
  2074.         CONST_VTBL struct HTMLElementEvents2Vtbl *lpVtbl;
  2075.     };
  2076.     
  2077. #ifdef COBJMACROS
  2078. #define HTMLElementEvents2_QueryInterface(This,riid,ppvObject)
  2079.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2080. #define HTMLElementEvents2_AddRef(This)
  2081.     (This)->lpVtbl -> AddRef(This)
  2082. #define HTMLElementEvents2_Release(This)
  2083.     (This)->lpVtbl -> Release(This)
  2084. #define HTMLElementEvents2_GetTypeInfoCount(This,pctinfo)
  2085.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2086. #define HTMLElementEvents2_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2087.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2088. #define HTMLElementEvents2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2089.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2090. #define HTMLElementEvents2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2091.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2092. #endif /* COBJMACROS */
  2093. #endif  /* C style interface */
  2094. #endif  /* __HTMLElementEvents2_DISPINTERFACE_DEFINED__ */
  2095. #ifndef __HTMLElementEvents_DISPINTERFACE_DEFINED__
  2096. #define __HTMLElementEvents_DISPINTERFACE_DEFINED__
  2097. /* dispinterface HTMLElementEvents */
  2098. /* [uuid][hidden] */ 
  2099. EXTERN_C const IID DIID_HTMLElementEvents;
  2100. #if defined(__cplusplus) && !defined(CINTERFACE)
  2101.     MIDL_INTERFACE("3050f33c-98b5-11cf-bb82-00aa00bdce0b")
  2102.     HTMLElementEvents : public IDispatch
  2103.     {
  2104.     };
  2105.     
  2106. #else  /* C style interface */
  2107.     typedef struct HTMLElementEventsVtbl
  2108.     {
  2109.         BEGIN_INTERFACE
  2110.         
  2111.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2112.             HTMLElementEvents * This,
  2113.             /* [in] */ REFIID riid,
  2114.             /* [iid_is][out] */ void **ppvObject);
  2115.         
  2116.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2117.             HTMLElementEvents * This);
  2118.         
  2119.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2120.             HTMLElementEvents * This);
  2121.         
  2122.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2123.             HTMLElementEvents * This,
  2124.             /* [out] */ UINT *pctinfo);
  2125.         
  2126.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2127.             HTMLElementEvents * This,
  2128.             /* [in] */ UINT iTInfo,
  2129.             /* [in] */ LCID lcid,
  2130.             /* [out] */ ITypeInfo **ppTInfo);
  2131.         
  2132.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2133.             HTMLElementEvents * This,
  2134.             /* [in] */ REFIID riid,
  2135.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2136.             /* [in] */ UINT cNames,
  2137.             /* [in] */ LCID lcid,
  2138.             /* [size_is][out] */ DISPID *rgDispId);
  2139.         
  2140.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2141.             HTMLElementEvents * This,
  2142.             /* [in] */ DISPID dispIdMember,
  2143.             /* [in] */ REFIID riid,
  2144.             /* [in] */ LCID lcid,
  2145.             /* [in] */ WORD wFlags,
  2146.             /* [out][in] */ DISPPARAMS *pDispParams,
  2147.             /* [out] */ VARIANT *pVarResult,
  2148.             /* [out] */ EXCEPINFO *pExcepInfo,
  2149.             /* [out] */ UINT *puArgErr);
  2150.         
  2151.         END_INTERFACE
  2152.     } HTMLElementEventsVtbl;
  2153.     interface HTMLElementEvents
  2154.     {
  2155.         CONST_VTBL struct HTMLElementEventsVtbl *lpVtbl;
  2156.     };
  2157.     
  2158. #ifdef COBJMACROS
  2159. #define HTMLElementEvents_QueryInterface(This,riid,ppvObject)
  2160.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2161. #define HTMLElementEvents_AddRef(This)
  2162.     (This)->lpVtbl -> AddRef(This)
  2163. #define HTMLElementEvents_Release(This)
  2164.     (This)->lpVtbl -> Release(This)
  2165. #define HTMLElementEvents_GetTypeInfoCount(This,pctinfo)
  2166.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2167. #define HTMLElementEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2168.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2169. #define HTMLElementEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2170.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2171. #define HTMLElementEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2172.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2173. #endif /* COBJMACROS */
  2174. #endif  /* C style interface */
  2175. #endif  /* __HTMLElementEvents_DISPINTERFACE_DEFINED__ */
  2176. #ifndef __IHTMLElementCollection_INTERFACE_DEFINED__
  2177. #define __IHTMLElementCollection_INTERFACE_DEFINED__
  2178. /* interface IHTMLElementCollection */
  2179. /* [object][uuid][dual][oleautomation] */ 
  2180. EXTERN_C const IID IID_IHTMLElementCollection;
  2181. #if defined(__cplusplus) && !defined(CINTERFACE)
  2182.     
  2183.     MIDL_INTERFACE("3050f21f-98b5-11cf-bb82-00aa00bdce0b")
  2184.     IHTMLElementCollection : public IDispatch
  2185.     {
  2186.     public:
  2187.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE toString( 
  2188.             /* [out][retval] */ BSTR *String) = 0;
  2189.         
  2190.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_length( 
  2191.             /* [in] */ long v) = 0;
  2192.         
  2193.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_length( 
  2194.             /* [out][retval] */ long *p) = 0;
  2195.         
  2196.         virtual /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__newEnum( 
  2197.             /* [out][retval] */ IUnknown **p) = 0;
  2198.         
  2199.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE item( 
  2200.             /* [in][optional] */ VARIANT name,
  2201.             /* [in][optional] */ VARIANT index,
  2202.             /* [out][retval] */ IDispatch **pdisp) = 0;
  2203.         
  2204.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE tags( 
  2205.             /* [in] */ VARIANT tagName,
  2206.             /* [out][retval] */ IDispatch **pdisp) = 0;
  2207.         
  2208.     };
  2209.     
  2210. #else  /* C style interface */
  2211.     typedef struct IHTMLElementCollectionVtbl
  2212.     {
  2213.         BEGIN_INTERFACE
  2214.         
  2215.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2216.             IHTMLElementCollection * This,
  2217.             /* [in] */ REFIID riid,
  2218.             /* [iid_is][out] */ void **ppvObject);
  2219.         
  2220.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2221.             IHTMLElementCollection * This);
  2222.         
  2223.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2224.             IHTMLElementCollection * This);
  2225.         
  2226.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2227.             IHTMLElementCollection * This,
  2228.             /* [out] */ UINT *pctinfo);
  2229.         
  2230.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2231.             IHTMLElementCollection * This,
  2232.             /* [in] */ UINT iTInfo,
  2233.             /* [in] */ LCID lcid,
  2234.             /* [out] */ ITypeInfo **ppTInfo);
  2235.         
  2236.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2237.             IHTMLElementCollection * This,
  2238.             /* [in] */ REFIID riid,
  2239.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2240.             /* [in] */ UINT cNames,
  2241.             /* [in] */ LCID lcid,
  2242.             /* [size_is][out] */ DISPID *rgDispId);
  2243.         
  2244.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2245.             IHTMLElementCollection * This,
  2246.             /* [in] */ DISPID dispIdMember,
  2247.             /* [in] */ REFIID riid,
  2248.             /* [in] */ LCID lcid,
  2249.             /* [in] */ WORD wFlags,
  2250.             /* [out][in] */ DISPPARAMS *pDispParams,
  2251.             /* [out] */ VARIANT *pVarResult,
  2252.             /* [out] */ EXCEPINFO *pExcepInfo,
  2253.             /* [out] */ UINT *puArgErr);
  2254.         
  2255.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *toString )( 
  2256.             IHTMLElementCollection * This,
  2257.             /* [out][retval] */ BSTR *String);
  2258.         
  2259.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_length )( 
  2260.             IHTMLElementCollection * This,
  2261.             /* [in] */ long v);
  2262.         
  2263.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_length )( 
  2264.             IHTMLElementCollection * This,
  2265.             /* [out][retval] */ long *p);
  2266.         
  2267.         /* [restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__newEnum )( 
  2268.             IHTMLElementCollection * This,
  2269.             /* [out][retval] */ IUnknown **p);
  2270.         
  2271.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *item )( 
  2272.             IHTMLElementCollection * This,
  2273.             /* [in][optional] */ VARIANT name,
  2274.             /* [in][optional] */ VARIANT index,
  2275.             /* [out][retval] */ IDispatch **pdisp);
  2276.         
  2277.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *tags )( 
  2278.             IHTMLElementCollection * This,
  2279.             /* [in] */ VARIANT tagName,
  2280.             /* [out][retval] */ IDispatch **pdisp);
  2281.         
  2282.         END_INTERFACE
  2283.     } IHTMLElementCollectionVtbl;
  2284.     interface IHTMLElementCollection
  2285.     {
  2286.         CONST_VTBL struct IHTMLElementCollectionVtbl *lpVtbl;
  2287.     };
  2288.     
  2289. #ifdef COBJMACROS
  2290. #define IHTMLElementCollection_QueryInterface(This,riid,ppvObject)
  2291.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2292. #define IHTMLElementCollection_AddRef(This)
  2293.     (This)->lpVtbl -> AddRef(This)
  2294. #define IHTMLElementCollection_Release(This)
  2295.     (This)->lpVtbl -> Release(This)
  2296. #define IHTMLElementCollection_GetTypeInfoCount(This,pctinfo)
  2297.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  2298. #define IHTMLElementCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2299.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  2300. #define IHTMLElementCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2301.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  2302. #define IHTMLElementCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2303.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  2304. #define IHTMLElementCollection_toString(This,String)
  2305.     (This)->lpVtbl -> toString(This,String)
  2306. #define IHTMLElementCollection_put_length(This,v)
  2307.     (This)->lpVtbl -> put_length(This,v)
  2308. #define IHTMLElementCollection_get_length(This,p)
  2309.     (This)->lpVtbl -> get_length(This,p)
  2310. #define IHTMLElementCollection_get__newEnum(This,p)
  2311.     (This)->lpVtbl -> get__newEnum(This,p)
  2312. #define IHTMLElementCollection_item(This,name,index,pdisp)
  2313.     (This)->lpVtbl -> item(This,name,index,pdisp)
  2314. #define IHTMLElementCollection_tags(This,tagName,pdisp)
  2315.     (This)->lpVtbl -> tags(This,tagName,pdisp)
  2316. #endif /* COBJMACROS */
  2317. #endif  /* C style interface */
  2318. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLElementCollection_toString_Proxy( 
  2319.     IHTMLElementCollection * This,
  2320.     /* [out][retval] */ BSTR *String);
  2321. void __RPC_STUB IHTMLElementCollection_toString_Stub(
  2322.     IRpcStubBuffer *This,
  2323.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2324.     PRPC_MESSAGE _pRpcMessage,
  2325.     DWORD *_pdwStubPhase);
  2326. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IHTMLElementCollection_put_length_Proxy( 
  2327.     IHTMLElementCollection * This,
  2328.     /* [in] */ long v);
  2329. void __RPC_STUB IHTMLElementCollection_put_length_Stub(
  2330.     IRpcStubBuffer *This,
  2331.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2332.     PRPC_MESSAGE _pRpcMessage,
  2333.     DWORD *_pdwStubPhase);
  2334. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLElementCollection_get_length_Proxy( 
  2335.     IHTMLElementCollection * This,
  2336.     /* [out][retval] */ long *p);
  2337. void __RPC_STUB IHTMLElementCollection_get_length_Stub(
  2338.     IRpcStubBuffer *This,
  2339.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2340.     PRPC_MESSAGE _pRpcMessage,
  2341.     DWORD *_pdwStubPhase);
  2342. /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE IHTMLElementCollection_get__newEnum_Proxy( 
  2343.     IHTMLElementCollection * This,
  2344.     /* [out][retval] */ IUnknown **p);
  2345. void __RPC_STUB IHTMLElementCollection_get__newEnum_Stub(
  2346.     IRpcStubBuffer *This,
  2347.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2348.     PRPC_MESSAGE _pRpcMessage,
  2349.     DWORD *_pdwStubPhase);
  2350. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLElementCollection_item_Proxy( 
  2351.     IHTMLElementCollection * This,
  2352.     /* [in][optional] */ VARIANT name,
  2353.     /* [in][optional] */ VARIANT index,
  2354.     /* [out][retval] */ IDispatch **pdisp);
  2355. void __RPC_STUB IHTMLElementCollection_item_Stub(
  2356.     IRpcStubBuffer *This,
  2357.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2358.     PRPC_MESSAGE _pRpcMessage,
  2359.     DWORD *_pdwStubPhase);
  2360. /* [id] */ HRESULT STDMETHODCALLTYPE IHTMLElementCollection_tags_Proxy( 
  2361.     IHTMLElementCollection * This,
  2362.     /* [in] */ VARIANT tagName,
  2363.     /* [out][retval] */ IDispatch **pdisp);
  2364. void __RPC_STUB IHTMLElementCollection_tags_Stub(
  2365.     IRpcStubBuffer *This,
  2366.     IRpcChannelBuffer *_pRpcChannelBuffer,
  2367.     PRPC_MESSAGE _pRpcMessage,
  2368.     DWORD *_pdwStubPhase);
  2369. #endif  /* __IHTMLElementCollection_INTERFACE_DEFINED__ */
  2370. #ifndef __IHTMLElement2_INTERFACE_DEFINED__
  2371. #define __IHTMLElement2_INTERFACE_DEFINED__
  2372. /* interface IHTMLElement2 */
  2373. /* [object][uuid][dual][oleautomation] */ 
  2374. EXTERN_C const IID IID_IHTMLElement2;
  2375. #if defined(__cplusplus) && !defined(CINTERFACE)
  2376.     
  2377.     MIDL_INTERFACE("3050f434-98b5-11cf-bb82-00aa00bdce0b")
  2378.     IHTMLElement2 : public IDispatch
  2379.     {
  2380.     public:
  2381.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_scopeName( 
  2382.             /* [out][retval] */ BSTR *p) = 0;
  2383.         
  2384.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE setCapture( 
  2385.             /* [in][defaultvalue] */ VARIANT_BOOL containerCapture = -1) = 0;
  2386.         
  2387.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE releaseCapture( void) = 0;
  2388.         
  2389.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onlosecapture( 
  2390.             /* [in] */ VARIANT v) = 0;
  2391.         
  2392.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onlosecapture( 
  2393.             /* [out][retval] */ VARIANT *p) = 0;
  2394.         
  2395.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE componentFromPoint( 
  2396.             /* [in] */ long x,
  2397.             /* [in] */ long y,
  2398.             /* [out][retval] */ BSTR *component) = 0;
  2399.         
  2400.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE doScroll( 
  2401.             /* [in][optional] */ VARIANT component) = 0;
  2402.         
  2403.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onscroll( 
  2404.             /* [in] */ VARIANT v) = 0;
  2405.         
  2406.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onscroll( 
  2407.             /* [out][retval] */ VARIANT *p) = 0;
  2408.         
  2409.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_ondrag( 
  2410.             /* [in] */ VARIANT v) = 0;
  2411.         
  2412.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_ondrag( 
  2413.             /* [out][retval] */ VARIANT *p) = 0;
  2414.         
  2415.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_ondragend( 
  2416.             /* [in] */ VARIANT v) = 0;
  2417.         
  2418.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_ondragend( 
  2419.             /* [out][retval] */ VARIANT *p) = 0;
  2420.         
  2421.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_ondragenter( 
  2422.             /* [in] */ VARIANT v) = 0;
  2423.         
  2424.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_ondragenter( 
  2425.             /* [out][retval] */ VARIANT *p) = 0;
  2426.         
  2427.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_ondragover( 
  2428.             /* [in] */ VARIANT v) = 0;
  2429.         
  2430.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_ondragover( 
  2431.             /* [out][retval] */ VARIANT *p) = 0;
  2432.         
  2433.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_ondragleave( 
  2434.             /* [in] */ VARIANT v) = 0;
  2435.         
  2436.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_ondragleave( 
  2437.             /* [out][retval] */ VARIANT *p) = 0;
  2438.         
  2439.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_ondrop( 
  2440.             /* [in] */ VARIANT v) = 0;
  2441.         
  2442.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_ondrop( 
  2443.             /* [out][retval] */ VARIANT *p) = 0;
  2444.         
  2445.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onbeforecut( 
  2446.             /* [in] */ VARIANT v) = 0;
  2447.         
  2448.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onbeforecut( 
  2449.             /* [out][retval] */ VARIANT *p) = 0;
  2450.         
  2451.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_oncut( 
  2452.             /* [in] */ VARIANT v) = 0;
  2453.         
  2454.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_oncut( 
  2455.             /* [out][retval] */ VARIANT *p) = 0;
  2456.         
  2457.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onbeforecopy( 
  2458.             /* [in] */ VARIANT v) = 0;
  2459.         
  2460.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onbeforecopy( 
  2461.             /* [out][retval] */ VARIANT *p) = 0;
  2462.         
  2463.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_oncopy( 
  2464.             /* [in] */ VARIANT v) = 0;
  2465.         
  2466.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_oncopy( 
  2467.             /* [out][retval] */ VARIANT *p) = 0;
  2468.         
  2469.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onbeforepaste( 
  2470.             /* [in] */ VARIANT v) = 0;
  2471.         
  2472.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onbeforepaste( 
  2473.             /* [out][retval] */ VARIANT *p) = 0;
  2474.         
  2475.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onpaste( 
  2476.             /* [in] */ VARIANT v) = 0;
  2477.         
  2478.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onpaste( 
  2479.             /* [out][retval] */ VARIANT *p) = 0;
  2480.         
  2481.         virtual /* [nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_currentStyle( 
  2482.             /* [out][retval] */ IHTMLCurrentStyle **p) = 0;
  2483.         
  2484.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onpropertychange( 
  2485.             /* [in] */ VARIANT v) = 0;
  2486.         
  2487.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onpropertychange( 
  2488.             /* [out][retval] */ VARIANT *p) = 0;
  2489.         
  2490.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE getClientRects( 
  2491.             /* [out][retval] */ IHTMLRectCollection **pRectCol) = 0;
  2492.         
  2493.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE getBoundingClientRect( 
  2494.             /* [out][retval] */ IHTMLRect **pRect) = 0;
  2495.         
  2496.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE setExpression( 
  2497.             /* [in] */ BSTR propname,
  2498.             /* [in] */ BSTR expression,
  2499.             /* [in][defaultvalue] */ BSTR language = L"") = 0;
  2500.         
  2501.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE getExpression( 
  2502.             /* [in] */ BSTR propname,
  2503.             /* [out][retval] */ VARIANT *expression) = 0;
  2504.         
  2505.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE removeExpression( 
  2506.             /* [in] */ BSTR propname,
  2507.             /* [out][retval] */ VARIANT_BOOL *pfSuccess) = 0;
  2508.         
  2509.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_tabIndex( 
  2510.             /* [in] */ short v) = 0;
  2511.         
  2512.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_tabIndex( 
  2513.             /* [out][retval] */ short *p) = 0;
  2514.         
  2515.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE focus( void) = 0;
  2516.         
  2517.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_accessKey( 
  2518.             /* [in] */ BSTR v) = 0;
  2519.         
  2520.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_accessKey( 
  2521.             /* [out][retval] */ BSTR *p) = 0;
  2522.         
  2523.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onblur( 
  2524.             /* [in] */ VARIANT v) = 0;
  2525.         
  2526.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onblur( 
  2527.             /* [out][retval] */ VARIANT *p) = 0;
  2528.         
  2529.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onfocus( 
  2530.             /* [in] */ VARIANT v) = 0;
  2531.         
  2532.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onfocus( 
  2533.             /* [out][retval] */ VARIANT *p) = 0;
  2534.         
  2535.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onresize( 
  2536.             /* [in] */ VARIANT v) = 0;
  2537.         
  2538.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onresize( 
  2539.             /* [out][retval] */ VARIANT *p) = 0;
  2540.         
  2541.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE blur( void) = 0;
  2542.         
  2543.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE addFilter( 
  2544.             /* [in] */ IUnknown *pUnk) = 0;
  2545.         
  2546.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE removeFilter( 
  2547.             /* [in] */ IUnknown *pUnk) = 0;
  2548.         
  2549.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_clientHeight( 
  2550.             /* [out][retval] */ long *p) = 0;
  2551.         
  2552.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_clientWidth( 
  2553.             /* [out][retval] */ long *p) = 0;
  2554.         
  2555.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_clientTop( 
  2556.             /* [out][retval] */ long *p) = 0;
  2557.         
  2558.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_clientLeft( 
  2559.             /* [out][retval] */ long *p) = 0;
  2560.         
  2561.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE attachEvent( 
  2562.             /* [in] */ BSTR event,
  2563.             /* [in] */ IDispatch *pDisp,
  2564.             /* [out][retval] */ VARIANT_BOOL *pfResult) = 0;
  2565.         
  2566.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE detachEvent( 
  2567.             /* [in] */ BSTR event,
  2568.             /* [in] */ IDispatch *pDisp) = 0;
  2569.         
  2570.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_readyState( 
  2571.             /* [out][retval] */ VARIANT *p) = 0;
  2572.         
  2573.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onreadystatechange( 
  2574.             /* [in] */ VARIANT v) = 0;
  2575.         
  2576.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onreadystatechange( 
  2577.             /* [out][retval] */ VARIANT *p) = 0;
  2578.         
  2579.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onrowsdelete( 
  2580.             /* [in] */ VARIANT v) = 0;
  2581.         
  2582.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onrowsdelete( 
  2583.             /* [out][retval] */ VARIANT *p) = 0;
  2584.         
  2585.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onrowsinserted( 
  2586.             /* [in] */ VARIANT v) = 0;
  2587.         
  2588.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onrowsinserted( 
  2589.             /* [out][retval] */ VARIANT *p) = 0;
  2590.         
  2591.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_oncellchange( 
  2592.             /* [in] */ VARIANT v) = 0;
  2593.         
  2594.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_oncellchange( 
  2595.             /* [out][retval] */ VARIANT *p) = 0;
  2596.         
  2597.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_dir( 
  2598.             /* [in] */ BSTR v) = 0;
  2599.         
  2600.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_dir( 
  2601.             /* [out][retval] */ BSTR *p) = 0;
  2602.         
  2603.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE createControlRange( 
  2604.             /* [out][retval] */ IDispatch **range) = 0;
  2605.         
  2606.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_scrollHeight( 
  2607.             /* [out][retval] */ long *p) = 0;
  2608.         
  2609.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_scrollWidth( 
  2610.             /* [out][retval] */ long *p) = 0;
  2611.         
  2612.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_scrollTop( 
  2613.             /* [in] */ long v) = 0;
  2614.         
  2615.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_scrollTop( 
  2616.             /* [out][retval] */ long *p) = 0;
  2617.         
  2618.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_scrollLeft( 
  2619.             /* [in] */ long v) = 0;
  2620.         
  2621.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_scrollLeft( 
  2622.             /* [out][retval] */ long *p) = 0;
  2623.         
  2624.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE clearAttributes( void) = 0;
  2625.         
  2626.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE mergeAttributes( 
  2627.             /* [in] */ IHTMLElement *mergeThis) = 0;
  2628.         
  2629.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_oncontextmenu( 
  2630.             /* [in] */ VARIANT v) = 0;
  2631.         
  2632.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_oncontextmenu( 
  2633.             /* [out][retval] */ VARIANT *p) = 0;
  2634.         
  2635.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE insertAdjacentElement( 
  2636.             /* [in] */ BSTR where,
  2637.             /* [in] */ IHTMLElement *insertedElement,
  2638.             /* [out][retval] */ IHTMLElement **inserted) = 0;
  2639.         
  2640.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE applyElement( 
  2641.             /* [in] */ IHTMLElement *apply,
  2642.             /* [in] */ BSTR where,
  2643.             /* [out][retval] */ IHTMLElement **applied) = 0;
  2644.         
  2645.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE getAdjacentText( 
  2646.             /* [in] */ BSTR where,
  2647.             /* [out][retval] */ BSTR *text) = 0;
  2648.         
  2649.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE replaceAdjacentText( 
  2650.             /* [in] */ BSTR where,
  2651.             /* [in] */ BSTR newText,
  2652.             /* [out][retval] */ BSTR *oldText) = 0;
  2653.         
  2654.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_canHaveChildren( 
  2655.             /* [out][retval] */ VARIANT_BOOL *p) = 0;
  2656.         
  2657.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE addBehavior( 
  2658.             /* [in] */ BSTR bstrUrl,
  2659.             /* [in][optional] */ VARIANT *pvarFactory,
  2660.             /* [out][retval] */ long *pCookie) = 0;
  2661.         
  2662.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE removeBehavior( 
  2663.             /* [in] */ long cookie,
  2664.             /* [out][retval] */ VARIANT_BOOL *pfResult) = 0;
  2665.         
  2666.         virtual /* [nonbrowsable][id][propget] */ HRESULT STDMETHODCALLTYPE get_runtimeStyle( 
  2667.             /* [out][retval] */ IHTMLStyle **p) = 0;
  2668.         
  2669.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_behaviorUrns( 
  2670.             /* [out][retval] */ IDispatch **p) = 0;
  2671.         
  2672.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_tagUrn( 
  2673.             /* [in] */ BSTR v) = 0;
  2674.         
  2675.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_tagUrn( 
  2676.             /* [out][retval] */ BSTR *p) = 0;
  2677.         
  2678.         virtual /* [bindable][displaybind][id][propput] */ HRESULT STDMETHODCALLTYPE put_onbeforeeditfocus( 
  2679.             /* [in] */ VARIANT v) = 0;
  2680.         
  2681.         virtual /* [bindable][displaybind][id][propget] */ HRESULT STDMETHODCALLTYPE get_onbeforeeditfocus( 
  2682.             /* [out][retval] */ VARIANT *p) = 0;
  2683.         
  2684.         virtual /* [restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get_readyStateValue( 
  2685.             /* [out][retval] */ long *p) = 0;
  2686.         
  2687.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE getElementsByTagName( 
  2688.             /* [in] */ BSTR v,
  2689.             /* [out][retval] */ IHTMLElementCollection **pelColl) = 0;
  2690.         
  2691.     };
  2692.     
  2693. #else  /* C style interface */
  2694.     typedef struct IHTMLElement2Vtbl
  2695.     {
  2696.         BEGIN_INTERFACE
  2697.         
  2698.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  2699.             IHTMLElement2 * This,
  2700.             /* [in] */ REFIID riid,
  2701.             /* [iid_is][out] */ void **ppvObject);
  2702.         
  2703.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  2704.             IHTMLElement2 * This);
  2705.         
  2706.         ULONG ( STDMETHODCALLTYPE *Release )( 
  2707.             IHTMLElement2 * This);
  2708.         
  2709.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  2710.             IHTMLElement2 * This,
  2711.             /* [out] */ UINT *pctinfo);
  2712.         
  2713.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  2714.             IHTMLElement2 * This,
  2715.             /* [in] */ UINT iTInfo,
  2716.             /* [in] */ LCID lcid,
  2717.             /* [out] */ ITypeInfo **ppTInfo);
  2718.         
  2719.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  2720.             IHTMLElement2 * This,
  2721.             /* [in] */ REFIID riid,
  2722.             /* [size_is][in] */ LPOLESTR *rgszNames,
  2723.             /* [in] */ UINT cNames,
  2724.             /* [in] */ LCID lcid,
  2725.             /* [size_is][out] */ DISPID *rgDispId);
  2726.         
  2727.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  2728.             IHTMLElement2 * This,
  2729.             /* [in] */ DISPID dispIdMember,
  2730.             /* [in] */ REFIID riid,
  2731.             /* [in] */ LCID lcid,
  2732.             /* [in] */ WORD wFlags,
  2733.             /* [out][in] */ DISPPARAMS *pDispParams,
  2734.             /* [out] */ VARIANT *pVarResult,
  2735.             /* [out] */ EXCEPINFO *pExcepInfo,
  2736.             /* [out] */ UINT *puArgErr);
  2737.         
  2738.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_scopeName )( 
  2739.             IHTMLElement2 * This,
  2740.             /* [out][retval] */ BSTR *p);
  2741.         
  2742.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *setCapture )( 
  2743.             IHTMLElement2 * This,
  2744.             /* [in][defaultvalue] */ VARIANT_BOOL containerCapture);
  2745.         
  2746.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *releaseCapture )( 
  2747.             IHTMLElement2 * This);
  2748.         
  2749.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onlosecapture )( 
  2750.             IHTMLElement2 * This,
  2751.             /* [in] */ VARIANT v);
  2752.         
  2753.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onlosecapture )( 
  2754.             IHTMLElement2 * This,
  2755.             /* [out][retval] */ VARIANT *p);
  2756.         
  2757.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *componentFromPoint )( 
  2758.             IHTMLElement2 * This,
  2759.             /* [in] */ long x,
  2760.             /* [in] */ long y,
  2761.             /* [out][retval] */ BSTR *component);
  2762.         
  2763.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *doScroll )( 
  2764.             IHTMLElement2 * This,
  2765.             /* [in][optional] */ VARIANT component);
  2766.         
  2767.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onscroll )( 
  2768.             IHTMLElement2 * This,
  2769.             /* [in] */ VARIANT v);
  2770.         
  2771.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onscroll )( 
  2772.             IHTMLElement2 * This,
  2773.             /* [out][retval] */ VARIANT *p);
  2774.         
  2775.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ondrag )( 
  2776.             IHTMLElement2 * This,
  2777.             /* [in] */ VARIANT v);
  2778.         
  2779.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ondrag )( 
  2780.             IHTMLElement2 * This,
  2781.             /* [out][retval] */ VARIANT *p);
  2782.         
  2783.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ondragend )( 
  2784.             IHTMLElement2 * This,
  2785.             /* [in] */ VARIANT v);
  2786.         
  2787.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ondragend )( 
  2788.             IHTMLElement2 * This,
  2789.             /* [out][retval] */ VARIANT *p);
  2790.         
  2791.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ondragenter )( 
  2792.             IHTMLElement2 * This,
  2793.             /* [in] */ VARIANT v);
  2794.         
  2795.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ondragenter )( 
  2796.             IHTMLElement2 * This,
  2797.             /* [out][retval] */ VARIANT *p);
  2798.         
  2799.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ondragover )( 
  2800.             IHTMLElement2 * This,
  2801.             /* [in] */ VARIANT v);
  2802.         
  2803.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ondragover )( 
  2804.             IHTMLElement2 * This,
  2805.             /* [out][retval] */ VARIANT *p);
  2806.         
  2807.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ondragleave )( 
  2808.             IHTMLElement2 * This,
  2809.             /* [in] */ VARIANT v);
  2810.         
  2811.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ondragleave )( 
  2812.             IHTMLElement2 * This,
  2813.             /* [out][retval] */ VARIANT *p);
  2814.         
  2815.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ondrop )( 
  2816.             IHTMLElement2 * This,
  2817.             /* [in] */ VARIANT v);
  2818.         
  2819.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ondrop )( 
  2820.             IHTMLElement2 * This,
  2821.             /* [out][retval] */ VARIANT *p);
  2822.         
  2823.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onbeforecut )( 
  2824.             IHTMLElement2 * This,
  2825.             /* [in] */ VARIANT v);
  2826.         
  2827.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onbeforecut )( 
  2828.             IHTMLElement2 * This,
  2829.             /* [out][retval] */ VARIANT *p);
  2830.         
  2831.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_oncut )( 
  2832.             IHTMLElement2 * This,
  2833.             /* [in] */ VARIANT v);
  2834.         
  2835.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_oncut )( 
  2836.             IHTMLElement2 * This,
  2837.             /* [out][retval] */ VARIANT *p);
  2838.         
  2839.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onbeforecopy )( 
  2840.             IHTMLElement2 * This,
  2841.             /* [in] */ VARIANT v);
  2842.         
  2843.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onbeforecopy )( 
  2844.             IHTMLElement2 * This,
  2845.             /* [out][retval] */ VARIANT *p);
  2846.         
  2847.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_oncopy )( 
  2848.             IHTMLElement2 * This,
  2849.             /* [in] */ VARIANT v);
  2850.         
  2851.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_oncopy )( 
  2852.             IHTMLElement2 * This,
  2853.             /* [out][retval] */ VARIANT *p);
  2854.         
  2855.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onbeforepaste )( 
  2856.             IHTMLElement2 * This,
  2857.             /* [in] */ VARIANT v);
  2858.         
  2859.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onbeforepaste )( 
  2860.             IHTMLElement2 * This,
  2861.             /* [out][retval] */ VARIANT *p);
  2862.         
  2863.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onpaste )( 
  2864.             IHTMLElement2 * This,
  2865.             /* [in] */ VARIANT v);
  2866.         
  2867.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onpaste )( 
  2868.             IHTMLElement2 * This,
  2869.             /* [out][retval] */ VARIANT *p);
  2870.         
  2871.         /* [nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_currentStyle )( 
  2872.             IHTMLElement2 * This,
  2873.             /* [out][retval] */ IHTMLCurrentStyle **p);
  2874.         
  2875.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onpropertychange )( 
  2876.             IHTMLElement2 * This,
  2877.             /* [in] */ VARIANT v);
  2878.         
  2879.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onpropertychange )( 
  2880.             IHTMLElement2 * This,
  2881.             /* [out][retval] */ VARIANT *p);
  2882.         
  2883.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *getClientRects )( 
  2884.             IHTMLElement2 * This,
  2885.             /* [out][retval] */ IHTMLRectCollection **pRectCol);
  2886.         
  2887.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *getBoundingClientRect )( 
  2888.             IHTMLElement2 * This,
  2889.             /* [out][retval] */ IHTMLRect **pRect);
  2890.         
  2891.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *setExpression )( 
  2892.             IHTMLElement2 * This,
  2893.             /* [in] */ BSTR propname,
  2894.             /* [in] */ BSTR expression,
  2895.             /* [in][defaultvalue] */ BSTR language);
  2896.         
  2897.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *getExpression )( 
  2898.             IHTMLElement2 * This,
  2899.             /* [in] */ BSTR propname,
  2900.             /* [out][retval] */ VARIANT *expression);
  2901.         
  2902.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *removeExpression )( 
  2903.             IHTMLElement2 * This,
  2904.             /* [in] */ BSTR propname,
  2905.             /* [out][retval] */ VARIANT_BOOL *pfSuccess);
  2906.         
  2907.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_tabIndex )( 
  2908.             IHTMLElement2 * This,
  2909.             /* [in] */ short v);
  2910.         
  2911.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_tabIndex )( 
  2912.             IHTMLElement2 * This,
  2913.             /* [out][retval] */ short *p);
  2914.         
  2915.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *focus )( 
  2916.             IHTMLElement2 * This);
  2917.         
  2918.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_accessKey )( 
  2919.             IHTMLElement2 * This,
  2920.             /* [in] */ BSTR v);
  2921.         
  2922.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_accessKey )( 
  2923.             IHTMLElement2 * This,
  2924.             /* [out][retval] */ BSTR *p);
  2925.         
  2926.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onblur )( 
  2927.             IHTMLElement2 * This,
  2928.             /* [in] */ VARIANT v);
  2929.         
  2930.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onblur )( 
  2931.             IHTMLElement2 * This,
  2932.             /* [out][retval] */ VARIANT *p);
  2933.         
  2934.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onfocus )( 
  2935.             IHTMLElement2 * This,
  2936.             /* [in] */ VARIANT v);
  2937.         
  2938.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onfocus )( 
  2939.             IHTMLElement2 * This,
  2940.             /* [out][retval] */ VARIANT *p);
  2941.         
  2942.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onresize )( 
  2943.             IHTMLElement2 * This,
  2944.             /* [in] */ VARIANT v);
  2945.         
  2946.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onresize )( 
  2947.             IHTMLElement2 * This,
  2948.             /* [out][retval] */ VARIANT *p);
  2949.         
  2950.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *blur )( 
  2951.             IHTMLElement2 * This);
  2952.         
  2953.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *addFilter )( 
  2954.             IHTMLElement2 * This,
  2955.             /* [in] */ IUnknown *pUnk);
  2956.         
  2957.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *removeFilter )( 
  2958.             IHTMLElement2 * This,
  2959.             /* [in] */ IUnknown *pUnk);
  2960.         
  2961.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_clientHeight )( 
  2962.             IHTMLElement2 * This,
  2963.             /* [out][retval] */ long *p);
  2964.         
  2965.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_clientWidth )( 
  2966.             IHTMLElement2 * This,
  2967.             /* [out][retval] */ long *p);
  2968.         
  2969.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_clientTop )( 
  2970.             IHTMLElement2 * This,
  2971.             /* [out][retval] */ long *p);
  2972.         
  2973.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_clientLeft )( 
  2974.             IHTMLElement2 * This,
  2975.             /* [out][retval] */ long *p);
  2976.         
  2977.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *attachEvent )( 
  2978.             IHTMLElement2 * This,
  2979.             /* [in] */ BSTR event,
  2980.             /* [in] */ IDispatch *pDisp,
  2981.             /* [out][retval] */ VARIANT_BOOL *pfResult);
  2982.         
  2983.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *detachEvent )( 
  2984.             IHTMLElement2 * This,
  2985.             /* [in] */ BSTR event,
  2986.             /* [in] */ IDispatch *pDisp);
  2987.         
  2988.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_readyState )( 
  2989.             IHTMLElement2 * This,
  2990.             /* [out][retval] */ VARIANT *p);
  2991.         
  2992.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onreadystatechange )( 
  2993.             IHTMLElement2 * This,
  2994.             /* [in] */ VARIANT v);
  2995.         
  2996.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onreadystatechange )( 
  2997.             IHTMLElement2 * This,
  2998.             /* [out][retval] */ VARIANT *p);
  2999.         
  3000.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onrowsdelete )( 
  3001.             IHTMLElement2 * This,
  3002.             /* [in] */ VARIANT v);
  3003.         
  3004.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onrowsdelete )( 
  3005.             IHTMLElement2 * This,
  3006.             /* [out][retval] */ VARIANT *p);
  3007.         
  3008.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_onrowsinserted )( 
  3009.             IHTMLElement2 * This,
  3010.             /* [in] */ VARIANT v);
  3011.         
  3012.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_onrowsinserted )( 
  3013.             IHTMLElement2 * This,
  3014.             /* [out][retval] */ VARIANT *p);
  3015.         
  3016.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_oncellchange )( 
  3017.             IHTMLElement2 * This,
  3018.             /* [in] */ VARIANT v);
  3019.         
  3020.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_oncellchange )( 
  3021.             IHTMLElement2 * This,
  3022.             /* [out][retval] */ VARIANT *p);
  3023.         
  3024.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_dir )( 
  3025.             IHTMLElement2 * This,
  3026.             /* [in] */ BSTR v);
  3027.         
  3028.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_dir )( 
  3029.             IHTMLElement2 * This,
  3030.             /* [out][retval] */ BSTR *p);
  3031.         
  3032.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *createControlRange )( 
  3033.             IHTMLElement2 * This,
  3034.             /* [out][retval] */ IDispatch **range);
  3035.         
  3036.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_scrollHeight )( 
  3037.             IHTMLElement2 * This,
  3038.             /* [out][retval] */ long *p);
  3039.         
  3040.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_scrollWidth )( 
  3041.             IHTMLElement2 * This,
  3042.             /* [out][retval] */ long *p);
  3043.         
  3044.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_scrollTop )( 
  3045.             IHTMLElement2 * This,
  3046.             /* [in] */ long v);
  3047.         
  3048.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_scrollTop )( 
  3049.             IHTMLElement2 * This,
  3050.             /* [out][retval] */ long *p);
  3051.         
  3052.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_scrollLeft )( 
  3053.             IHTMLElement2 * This,
  3054.             /* [in] */ long v);
  3055.         
  3056.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_scrollLeft )( 
  3057.             IHTMLElement2 * This,
  3058.             /* [out][retval] */ long *p);
  3059.         
  3060.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *clearAttributes )( 
  3061.             IHTMLElement2 * This);
  3062.         
  3063.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *mergeAttributes )( 
  3064.             IHTMLElement2 * This,
  3065.             /* [in] */ IHTMLElement *mergeThis);
  3066.         
  3067.         /* [bindable][displaybind][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_oncontextmenu )( 
  3068.             IHTMLElement2 * This,
  3069.             /* [in] */ VARIANT v);
  3070.         
  3071.         /* [bindable][displaybind][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_oncontextmenu )( 
  3072.             IHTMLElement2 * This,
  3073.             /* [out][retval] */ VARIANT *p);
  3074.         
  3075.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *insertAdjacentElement )( 
  3076.             IHTMLElement2 * This,
  3077.             /* [in] */ BSTR where,
  3078.             /* [in] */ IHTMLElement *insertedElement,
  3079.             /* [out][retval] */ IHTMLElement **inserted);
  3080.         
  3081.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *applyElement )( 
  3082.             IHTMLElement2 * This,
  3083.             /* [in] */ IHTMLElement *apply,
  3084.             /* [in] */ BSTR where,
  3085.             /* [out][retval] */ IHTMLElement **applied);
  3086.         
  3087.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *getAdjacentText )( 
  3088.             IHTMLElement2 * This,
  3089.             /* [in] */ BSTR where,
  3090.             /* [out][retval] */ BSTR *text);
  3091.         
  3092.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *replaceAdjacentText )( 
  3093.             IHTMLElement2 * This,
  3094.             /* [in] */ BSTR where,
  3095.             /* [in] */ BSTR newText,
  3096.             /* [out][retval] */ BSTR *oldText);
  3097.         
  3098.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_canHaveChildren )( 
  3099.             IHTMLElement2 * This,
  3100.             /* [out][retval] */ VARIANT_BOOL *p);
  3101.         
  3102.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *addBehavior )( 
  3103.             IHTMLElement2 * This,
  3104.             /* [in] */ BSTR bstrUrl,
  3105.             /* [in][optional] */ VARIANT *pvarFactory,
  3106.             /* [out][retval] */ long *pCookie);
  3107.         
  3108.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *removeBehavior )( 
  3109.             IHTMLElement2 * This,
  3110.             /* [in] */ long cookie,
  3111.             /* [out][retval] */ VARIANT_BOOL *pfResult);
  3112.         
  3113.         /* [nonbrowsable][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_runtimeStyle )( 
  3114.             IHTMLElement2 * This,
  3115.             /* [out][retval] */ IHTMLStyle **p);
  3116.         
  3117.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_behaviorUrns )( 
  3118.             IHTMLElement2 * This,
  3119.             /* [out][retval] */ IDispatch **p);
  3120.         
  3121.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_tagUrn )( 
  3122.             IHTMLElement2 * This,