home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / vc98 / include / dispex.h < prev    next >
C/C++ Source or Header  |  1998-04-25  |  31KB  |  975 lines

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2.  
  3.  
  4. /* File created by MIDL compiler version 3.02.88 */
  5. /* at Mon Nov 17 12:04:12 1997
  6.  */
  7. /* Compiler settings for dispex.idl:
  8.     Oicf (OptLev=i2), W1, Zp8, env=Win32, ms_ext, c_ext
  9.     error checks: none
  10. */
  11. //@@MIDL_FILE_HEADING(  )
  12. #include "rpc.h"
  13. #include "rpcndr.h"
  14. #ifndef COM_NO_WINDOWS_H
  15. #include "windows.h"
  16. #include "ole2.h"
  17. #endif /*COM_NO_WINDOWS_H*/
  18.  
  19. #ifndef __dispex_h__
  20. #define __dispex_h__
  21.  
  22. #ifdef __cplusplus
  23. extern "C"{
  24. #endif 
  25.  
  26. /* Forward Declarations */ 
  27.  
  28. #ifndef __IDispatchEx_FWD_DEFINED__
  29. #define __IDispatchEx_FWD_DEFINED__
  30. typedef interface IDispatchEx IDispatchEx;
  31. #endif     /* __IDispatchEx_FWD_DEFINED__ */
  32.  
  33.  
  34. #ifndef __IDispError_FWD_DEFINED__
  35. #define __IDispError_FWD_DEFINED__
  36. typedef interface IDispError IDispError;
  37. #endif     /* __IDispError_FWD_DEFINED__ */
  38.  
  39.  
  40. #ifndef __IVariantChangeType_FWD_DEFINED__
  41. #define __IVariantChangeType_FWD_DEFINED__
  42. typedef interface IVariantChangeType IVariantChangeType;
  43. #endif     /* __IVariantChangeType_FWD_DEFINED__ */
  44.  
  45.  
  46. #ifndef __IObjectIdentity_FWD_DEFINED__
  47. #define __IObjectIdentity_FWD_DEFINED__
  48. typedef interface IObjectIdentity IObjectIdentity;
  49. #endif     /* __IObjectIdentity_FWD_DEFINED__ */
  50.  
  51.  
  52. /* header files for imported files */
  53. #include "ocidl.h"
  54. #include "servprov.h"
  55.  
  56. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  57. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  58.  
  59. /****************************************
  60.  * Generated header for interface: __MIDL_itf_dispex_0000
  61.  * at Mon Nov 17 12:04:12 1997
  62.  * using MIDL 3.02.88
  63.  ****************************************/
  64. /* [local] */ 
  65.  
  66.  
  67. //=--------------------------------------------------------------------------=
  68. // DispEx.h
  69. //=--------------------------------------------------------------------------=
  70. // (C) Copyright 1997 - 1998 Microsoft Corporation.  All Rights Reserved.
  71. //
  72. // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  73. // ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  74. // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  75. // PARTICULAR PURPOSE.
  76. //=--------------------------------------------------------------------------=
  77.  
  78. #pragma comment(lib,"uuid.lib")
  79.  
  80. //---------------------------------------------------------------------------=
  81. // IDispatchEx Interfaces.
  82. //
  83.  
  84. #ifndef DISPEX_H_
  85. #define DISPEX_H_
  86.  
  87.  
  88.  
  89.  
  90.  
  91. #ifndef _NO_DISPATCHEX_GUIDS
  92.  
  93. // {A6EF9860-C720-11d0-9337-00A0C90DCAA9}
  94. DEFINE_GUID(IID_IDispatchEx, 0xa6ef9860, 0xc720, 0x11d0, 0x93, 0x37, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
  95.  
  96. // {A6EF9861-C720-11d0-9337-00A0C90DCAA9}
  97. DEFINE_GUID(IID_IDispError, 0xa6ef9861, 0xc720, 0x11d0, 0x93, 0x37, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
  98.  
  99. // {A6EF9862-C720-11d0-9337-00A0C90DCAA9}
  100. DEFINE_GUID(IID_IVariantChangeType, 0xa6ef9862, 0xc720, 0x11d0, 0x93, 0x37, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
  101.  
  102. // {1F101481-BCCD-11d0-9336-00A0C90DCAA9}
  103. DEFINE_GUID(SID_VariantConversion, 0x1f101481, 0xbccd, 0x11d0, 0x93, 0x36, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
  104.  
  105. // {4717CC40-BCB9-11d0-9336-00A0C90DCAA9}
  106. DEFINE_GUID(SID_GetCaller, 0x4717cc40, 0xbcb9, 0x11d0, 0x93, 0x36, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
  107.  
  108. // {CA04B7E6-0D21-11d1-8CC5-00C04FC2B085}
  109. DEFINE_GUID(IID_IObjectIdentity, 0xca04b7e6, 0xd21, 0x11d1, 0x8c, 0xc5, 0x0, 0xc0, 0x4f, 0xc2, 0xb0, 0x85);
  110.  
  111. #define SID_GetScriptSite IID_IActiveScriptSite
  112.  
  113. #endif // _NO_DISPATCHEX_GUIDS
  114.  
  115.  
  116. #ifndef _NO_DISPATCHEX_CONSTS
  117.  
  118. // Input flags for GetDispID
  119. #define fdexNameCaseSensitive       0x00000001L
  120. #define fdexNameEnsure              0x00000002L
  121. #define fdexNameImplicit            0x00000004L
  122. #define fdexNameCaseInsensitive     0x00000008L
  123.  
  124. // Output flags for GetMemberProperties
  125. #define fdexPropCanGet              0x00000001L
  126. #define fdexPropCannotGet           0x00000002L
  127. #define fdexPropCanPut              0x00000004L
  128. #define fdexPropCannotPut           0x00000008L
  129. #define fdexPropCanPutRef           0x00000010L
  130. #define fdexPropCannotPutRef        0x00000020L
  131. #define fdexPropNoSideEffects       0x00000040L
  132. #define fdexPropDynamicType         0x00000080L
  133. #define fdexPropCanCall             0x00000100L
  134. #define fdexPropCannotCall          0x00000200L
  135. #define fdexPropCanConstruct        0x00000400L
  136. #define fdexPropCannotConstruct     0x00000800L
  137. #define fdexPropCanSourceEvents     0x00001000L
  138. #define fdexPropCannotSourceEvents  0x00002000L
  139.  
  140. #define grfdexPropCanAll \
  141.        (fdexPropCanGet | fdexPropCanPut | fdexPropCanPutRef | \
  142.         fdexPropCanCall | fdexPropCanConstruct | fdexPropCanSourceEvents)
  143. #define grfdexPropCannotAll \
  144.        (fdexPropCannotGet | fdexPropCannotPut | fdexPropCannotPutRef | \
  145.         fdexPropCannotCall | fdexPropCannotConstruct | fdexPropCannotSourceEvents)
  146. #define grfdexPropExtraAll \
  147.        (fdexPropNoSideEffects | fdexPropDynamicType)
  148. #define grfdexPropAll \
  149.        (grfdexPropCanAll | grfdexPropCannotAll | grfdexPropExtraAll)
  150.  
  151. // Input flags for GetNextDispID
  152. #define fdexEnumDefault             0x00000001L
  153. #define fdexEnumAll                 0x00000002L
  154.  
  155. // Additional flags for Invoke - when object member is
  156. // used as a constructor.
  157. #define DISPATCH_CONSTRUCT 0x4000
  158.  
  159. // Standard DISPIDs
  160. #define DISPID_THIS (-613)
  161. #define DISPID_STARTENUM DISPID_UNKNOWN
  162.  
  163. #endif //_NO_DISPATCHEX_CONSTS
  164.  
  165.  
  166.  
  167. extern RPC_IF_HANDLE __MIDL_itf_dispex_0000_v0_0_c_ifspec;
  168. extern RPC_IF_HANDLE __MIDL_itf_dispex_0000_v0_0_s_ifspec;
  169.  
  170. #ifndef __IDispatchEx_INTERFACE_DEFINED__
  171. #define __IDispatchEx_INTERFACE_DEFINED__
  172.  
  173. /****************************************
  174.  * Generated header for interface: IDispatchEx
  175.  * at Mon Nov 17 12:04:12 1997
  176.  * using MIDL 3.02.88
  177.  ****************************************/
  178. /* [unique][uuid][object] */ 
  179.  
  180.  
  181.  
  182. EXTERN_C const IID IID_IDispatchEx;
  183.  
  184. #if defined(__cplusplus) && !defined(CINTERFACE)
  185.     
  186.     interface DECLSPEC_UUID("A6EF9860-C720-11d0-9337-00A0C90DCAA9")
  187.     IDispatchEx : public IDispatch
  188.     {
  189.     public:
  190.         virtual HRESULT STDMETHODCALLTYPE GetDispID( 
  191.             /* [in] */ BSTR bstrName,
  192.             /* [in] */ DWORD grfdex,
  193.             /* [out] */ DISPID __RPC_FAR *pid) = 0;
  194.         
  195.         virtual /* [local] */ HRESULT STDMETHODCALLTYPE InvokeEx( 
  196.             /* [in] */ DISPID id,
  197.             /* [in] */ LCID lcid,
  198.             /* [in] */ WORD wFlags,
  199.             /* [in] */ DISPPARAMS __RPC_FAR *pdp,
  200.             /* [out] */ VARIANT __RPC_FAR *pvarRes,
  201.             /* [out] */ EXCEPINFO __RPC_FAR *pei,
  202.             /* [unique][in] */ IServiceProvider __RPC_FAR *pspCaller) = 0;
  203.         
  204.         virtual HRESULT STDMETHODCALLTYPE DeleteMemberByName( 
  205.             /* [in] */ BSTR bstr,
  206.             /* [in] */ DWORD grfdex) = 0;
  207.         
  208.         virtual HRESULT STDMETHODCALLTYPE DeleteMemberByDispID( 
  209.             /* [in] */ DISPID id) = 0;
  210.         
  211.         virtual HRESULT STDMETHODCALLTYPE GetMemberProperties( 
  212.             /* [in] */ DISPID id,
  213.             /* [in] */ DWORD grfdexFetch,
  214.             /* [out] */ DWORD __RPC_FAR *pgrfdex) = 0;
  215.         
  216.         virtual HRESULT STDMETHODCALLTYPE GetMemberName( 
  217.             /* [in] */ DISPID id,
  218.             /* [out] */ BSTR __RPC_FAR *pbstrName) = 0;
  219.         
  220.         virtual HRESULT STDMETHODCALLTYPE GetNextDispID( 
  221.             /* [in] */ DWORD grfdex,
  222.             /* [in] */ DISPID id,
  223.             /* [out] */ DISPID __RPC_FAR *pid) = 0;
  224.         
  225.         virtual HRESULT STDMETHODCALLTYPE GetNameSpaceParent( 
  226.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppunk) = 0;
  227.         
  228.     };
  229.     
  230. #else     /* C style interface */
  231.  
  232.     typedef struct IDispatchExVtbl
  233.     {
  234.         BEGIN_INTERFACE
  235.         
  236.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  237.             IDispatchEx __RPC_FAR * This,
  238.             /* [in] */ REFIID riid,
  239.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  240.         
  241.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  242.             IDispatchEx __RPC_FAR * This);
  243.         
  244.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  245.             IDispatchEx __RPC_FAR * This);
  246.         
  247.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  248.             IDispatchEx __RPC_FAR * This,
  249.             /* [out] */ UINT __RPC_FAR *pctinfo);
  250.         
  251.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  252.             IDispatchEx __RPC_FAR * This,
  253.             /* [in] */ UINT iTInfo,
  254.             /* [in] */ LCID lcid,
  255.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  256.         
  257.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  258.             IDispatchEx __RPC_FAR * This,
  259.             /* [in] */ REFIID riid,
  260.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  261.             /* [in] */ UINT cNames,
  262.             /* [in] */ LCID lcid,
  263.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  264.         
  265.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  266.             IDispatchEx __RPC_FAR * This,
  267.             /* [in] */ DISPID dispIdMember,
  268.             /* [in] */ REFIID riid,
  269.             /* [in] */ LCID lcid,
  270.             /* [in] */ WORD wFlags,
  271.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  272.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  273.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  274.             /* [out] */ UINT __RPC_FAR *puArgErr);
  275.         
  276.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDispID )( 
  277.             IDispatchEx __RPC_FAR * This,
  278.             /* [in] */ BSTR bstrName,
  279.             /* [in] */ DWORD grfdex,
  280.             /* [out] */ DISPID __RPC_FAR *pid);
  281.         
  282.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InvokeEx )( 
  283.             IDispatchEx __RPC_FAR * This,
  284.             /* [in] */ DISPID id,
  285.             /* [in] */ LCID lcid,
  286.             /* [in] */ WORD wFlags,
  287.             /* [in] */ DISPPARAMS __RPC_FAR *pdp,
  288.             /* [out] */ VARIANT __RPC_FAR *pvarRes,
  289.             /* [out] */ EXCEPINFO __RPC_FAR *pei,
  290.             /* [unique][in] */ IServiceProvider __RPC_FAR *pspCaller);
  291.         
  292.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteMemberByName )( 
  293.             IDispatchEx __RPC_FAR * This,
  294.             /* [in] */ BSTR bstr,
  295.             /* [in] */ DWORD grfdex);
  296.         
  297.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteMemberByDispID )( 
  298.             IDispatchEx __RPC_FAR * This,
  299.             /* [in] */ DISPID id);
  300.         
  301.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMemberProperties )( 
  302.             IDispatchEx __RPC_FAR * This,
  303.             /* [in] */ DISPID id,
  304.             /* [in] */ DWORD grfdexFetch,
  305.             /* [out] */ DWORD __RPC_FAR *pgrfdex);
  306.         
  307.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetMemberName )( 
  308.             IDispatchEx __RPC_FAR * This,
  309.             /* [in] */ DISPID id,
  310.             /* [out] */ BSTR __RPC_FAR *pbstrName);
  311.         
  312.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNextDispID )( 
  313.             IDispatchEx __RPC_FAR * This,
  314.             /* [in] */ DWORD grfdex,
  315.             /* [in] */ DISPID id,
  316.             /* [out] */ DISPID __RPC_FAR *pid);
  317.         
  318.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNameSpaceParent )( 
  319.             IDispatchEx __RPC_FAR * This,
  320.             /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppunk);
  321.         
  322.         END_INTERFACE
  323.     } IDispatchExVtbl;
  324.  
  325.     interface IDispatchEx
  326.     {
  327.         CONST_VTBL struct IDispatchExVtbl __RPC_FAR *lpVtbl;
  328.     };
  329.  
  330.     
  331.  
  332. #ifdef COBJMACROS
  333.  
  334.  
  335. #define IDispatchEx_QueryInterface(This,riid,ppvObject)    \
  336.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  337.  
  338. #define IDispatchEx_AddRef(This)    \
  339.     (This)->lpVtbl -> AddRef(This)
  340.  
  341. #define IDispatchEx_Release(This)    \
  342.     (This)->lpVtbl -> Release(This)
  343.  
  344.  
  345. #define IDispatchEx_GetTypeInfoCount(This,pctinfo)    \
  346.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  347.  
  348. #define IDispatchEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  349.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  350.  
  351. #define IDispatchEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  352.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  353.  
  354. #define IDispatchEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  355.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  356.  
  357.  
  358. #define IDispatchEx_GetDispID(This,bstrName,grfdex,pid)    \
  359.     (This)->lpVtbl -> GetDispID(This,bstrName,grfdex,pid)
  360.  
  361. #define IDispatchEx_InvokeEx(This,id,lcid,wFlags,pdp,pvarRes,pei,pspCaller)    \
  362.     (This)->lpVtbl -> InvokeEx(This,id,lcid,wFlags,pdp,pvarRes,pei,pspCaller)
  363.  
  364. #define IDispatchEx_DeleteMemberByName(This,bstr,grfdex)    \
  365.     (This)->lpVtbl -> DeleteMemberByName(This,bstr,grfdex)
  366.  
  367. #define IDispatchEx_DeleteMemberByDispID(This,id)    \
  368.     (This)->lpVtbl -> DeleteMemberByDispID(This,id)
  369.  
  370. #define IDispatchEx_GetMemberProperties(This,id,grfdexFetch,pgrfdex)    \
  371.     (This)->lpVtbl -> GetMemberProperties(This,id,grfdexFetch,pgrfdex)
  372.  
  373. #define IDispatchEx_GetMemberName(This,id,pbstrName)    \
  374.     (This)->lpVtbl -> GetMemberName(This,id,pbstrName)
  375.  
  376. #define IDispatchEx_GetNextDispID(This,grfdex,id,pid)    \
  377.     (This)->lpVtbl -> GetNextDispID(This,grfdex,id,pid)
  378.  
  379. #define IDispatchEx_GetNameSpaceParent(This,ppunk)    \
  380.     (This)->lpVtbl -> GetNameSpaceParent(This,ppunk)
  381.  
  382. #endif /* COBJMACROS */
  383.  
  384.  
  385. #endif     /* C style interface */
  386.  
  387.  
  388.  
  389. HRESULT STDMETHODCALLTYPE IDispatchEx_GetDispID_Proxy( 
  390.     IDispatchEx __RPC_FAR * This,
  391.     /* [in] */ BSTR bstrName,
  392.     /* [in] */ DWORD grfdex,
  393.     /* [out] */ DISPID __RPC_FAR *pid);
  394.  
  395.  
  396. void __RPC_STUB IDispatchEx_GetDispID_Stub(
  397.     IRpcStubBuffer *This,
  398.     IRpcChannelBuffer *_pRpcChannelBuffer,
  399.     PRPC_MESSAGE _pRpcMessage,
  400.     DWORD *_pdwStubPhase);
  401.  
  402.  
  403. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDispatchEx_RemoteInvokeEx_Proxy( 
  404.     IDispatchEx __RPC_FAR * This,
  405.     /* [in] */ DISPID id,
  406.     /* [in] */ LCID lcid,
  407.     /* [in] */ DWORD dwFlags,
  408.     /* [in] */ DISPPARAMS __RPC_FAR *pdp,
  409.     /* [out] */ VARIANT __RPC_FAR *pvarRes,
  410.     /* [out] */ EXCEPINFO __RPC_FAR *pei,
  411.     /* [unique][in] */ IServiceProvider __RPC_FAR *pspCaller,
  412.     /* [in] */ UINT cvarRefArg,
  413.     /* [size_is][in] */ UINT __RPC_FAR *rgiRefArg,
  414.     /* [size_is][out][in] */ VARIANT __RPC_FAR *rgvarRefArg);
  415.  
  416.  
  417. void __RPC_STUB IDispatchEx_RemoteInvokeEx_Stub(
  418.     IRpcStubBuffer *This,
  419.     IRpcChannelBuffer *_pRpcChannelBuffer,
  420.     PRPC_MESSAGE _pRpcMessage,
  421.     DWORD *_pdwStubPhase);
  422.  
  423.  
  424. HRESULT STDMETHODCALLTYPE IDispatchEx_DeleteMemberByName_Proxy( 
  425.     IDispatchEx __RPC_FAR * This,
  426.     /* [in] */ BSTR bstr,
  427.     /* [in] */ DWORD grfdex);
  428.  
  429.  
  430. void __RPC_STUB IDispatchEx_DeleteMemberByName_Stub(
  431.     IRpcStubBuffer *This,
  432.     IRpcChannelBuffer *_pRpcChannelBuffer,
  433.     PRPC_MESSAGE _pRpcMessage,
  434.     DWORD *_pdwStubPhase);
  435.  
  436.  
  437. HRESULT STDMETHODCALLTYPE IDispatchEx_DeleteMemberByDispID_Proxy( 
  438.     IDispatchEx __RPC_FAR * This,
  439.     /* [in] */ DISPID id);
  440.  
  441.  
  442. void __RPC_STUB IDispatchEx_DeleteMemberByDispID_Stub(
  443.     IRpcStubBuffer *This,
  444.     IRpcChannelBuffer *_pRpcChannelBuffer,
  445.     PRPC_MESSAGE _pRpcMessage,
  446.     DWORD *_pdwStubPhase);
  447.  
  448.  
  449. HRESULT STDMETHODCALLTYPE IDispatchEx_GetMemberProperties_Proxy( 
  450.     IDispatchEx __RPC_FAR * This,
  451.     /* [in] */ DISPID id,
  452.     /* [in] */ DWORD grfdexFetch,
  453.     /* [out] */ DWORD __RPC_FAR *pgrfdex);
  454.  
  455.  
  456. void __RPC_STUB IDispatchEx_GetMemberProperties_Stub(
  457.     IRpcStubBuffer *This,
  458.     IRpcChannelBuffer *_pRpcChannelBuffer,
  459.     PRPC_MESSAGE _pRpcMessage,
  460.     DWORD *_pdwStubPhase);
  461.  
  462.  
  463. HRESULT STDMETHODCALLTYPE IDispatchEx_GetMemberName_Proxy( 
  464.     IDispatchEx __RPC_FAR * This,
  465.     /* [in] */ DISPID id,
  466.     /* [out] */ BSTR __RPC_FAR *pbstrName);
  467.  
  468.  
  469. void __RPC_STUB IDispatchEx_GetMemberName_Stub(
  470.     IRpcStubBuffer *This,
  471.     IRpcChannelBuffer *_pRpcChannelBuffer,
  472.     PRPC_MESSAGE _pRpcMessage,
  473.     DWORD *_pdwStubPhase);
  474.  
  475.  
  476. HRESULT STDMETHODCALLTYPE IDispatchEx_GetNextDispID_Proxy( 
  477.     IDispatchEx __RPC_FAR * This,
  478.     /* [in] */ DWORD grfdex,
  479.     /* [in] */ DISPID id,
  480.     /* [out] */ DISPID __RPC_FAR *pid);
  481.  
  482.  
  483. void __RPC_STUB IDispatchEx_GetNextDispID_Stub(
  484.     IRpcStubBuffer *This,
  485.     IRpcChannelBuffer *_pRpcChannelBuffer,
  486.     PRPC_MESSAGE _pRpcMessage,
  487.     DWORD *_pdwStubPhase);
  488.  
  489.  
  490. HRESULT STDMETHODCALLTYPE IDispatchEx_GetNameSpaceParent_Proxy( 
  491.     IDispatchEx __RPC_FAR * This,
  492.     /* [out] */ IUnknown __RPC_FAR *__RPC_FAR *ppunk);
  493.  
  494.  
  495. void __RPC_STUB IDispatchEx_GetNameSpaceParent_Stub(
  496.     IRpcStubBuffer *This,
  497.     IRpcChannelBuffer *_pRpcChannelBuffer,
  498.     PRPC_MESSAGE _pRpcMessage,
  499.     DWORD *_pdwStubPhase);
  500.  
  501.  
  502.  
  503. #endif     /* __IDispatchEx_INTERFACE_DEFINED__ */
  504.  
  505.  
  506. #ifndef __IDispError_INTERFACE_DEFINED__
  507. #define __IDispError_INTERFACE_DEFINED__
  508.  
  509. /****************************************
  510.  * Generated header for interface: IDispError
  511.  * at Mon Nov 17 12:04:12 1997
  512.  * using MIDL 3.02.88
  513.  ****************************************/
  514. /* [unique][uuid][object] */ 
  515.  
  516.  
  517.  
  518. EXTERN_C const IID IID_IDispError;
  519.  
  520. #if defined(__cplusplus) && !defined(CINTERFACE)
  521.     
  522.     interface DECLSPEC_UUID("A6EF9861-C720-11d0-9337-00A0C90DCAA9")
  523.     IDispError : public IUnknown
  524.     {
  525.     public:
  526.         virtual HRESULT STDMETHODCALLTYPE QueryErrorInfo( 
  527.             /* [in] */ GUID guidErrorType,
  528.             /* [out] */ IDispError __RPC_FAR *__RPC_FAR *ppde) = 0;
  529.         
  530.         virtual HRESULT STDMETHODCALLTYPE GetNext( 
  531.             /* [out] */ IDispError __RPC_FAR *__RPC_FAR *ppde) = 0;
  532.         
  533.         virtual HRESULT STDMETHODCALLTYPE GetHresult( 
  534.             /* [out] */ HRESULT __RPC_FAR *phr) = 0;
  535.         
  536.         virtual HRESULT STDMETHODCALLTYPE GetSource( 
  537.             /* [out] */ BSTR __RPC_FAR *pbstrSource) = 0;
  538.         
  539.         virtual HRESULT STDMETHODCALLTYPE GetHelpInfo( 
  540.             /* [out] */ BSTR __RPC_FAR *pbstrFileName,
  541.             /* [out] */ DWORD __RPC_FAR *pdwContext) = 0;
  542.         
  543.         virtual HRESULT STDMETHODCALLTYPE GetDescription( 
  544.             /* [out] */ BSTR __RPC_FAR *pbstrDescription) = 0;
  545.         
  546.     };
  547.     
  548. #else     /* C style interface */
  549.  
  550.     typedef struct IDispErrorVtbl
  551.     {
  552.         BEGIN_INTERFACE
  553.         
  554.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  555.             IDispError __RPC_FAR * This,
  556.             /* [in] */ REFIID riid,
  557.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  558.         
  559.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  560.             IDispError __RPC_FAR * This);
  561.         
  562.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  563.             IDispError __RPC_FAR * This);
  564.         
  565.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryErrorInfo )( 
  566.             IDispError __RPC_FAR * This,
  567.             /* [in] */ GUID guidErrorType,
  568.             /* [out] */ IDispError __RPC_FAR *__RPC_FAR *ppde);
  569.         
  570.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetNext )( 
  571.             IDispError __RPC_FAR * This,
  572.             /* [out] */ IDispError __RPC_FAR *__RPC_FAR *ppde);
  573.         
  574.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetHresult )( 
  575.             IDispError __RPC_FAR * This,
  576.             /* [out] */ HRESULT __RPC_FAR *phr);
  577.         
  578.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetSource )( 
  579.             IDispError __RPC_FAR * This,
  580.             /* [out] */ BSTR __RPC_FAR *pbstrSource);
  581.         
  582.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetHelpInfo )( 
  583.             IDispError __RPC_FAR * This,
  584.             /* [out] */ BSTR __RPC_FAR *pbstrFileName,
  585.             /* [out] */ DWORD __RPC_FAR *pdwContext);
  586.         
  587.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetDescription )( 
  588.             IDispError __RPC_FAR * This,
  589.             /* [out] */ BSTR __RPC_FAR *pbstrDescription);
  590.         
  591.         END_INTERFACE
  592.     } IDispErrorVtbl;
  593.  
  594.     interface IDispError
  595.     {
  596.         CONST_VTBL struct IDispErrorVtbl __RPC_FAR *lpVtbl;
  597.     };
  598.  
  599.     
  600.  
  601. #ifdef COBJMACROS
  602.  
  603.  
  604. #define IDispError_QueryInterface(This,riid,ppvObject)    \
  605.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  606.  
  607. #define IDispError_AddRef(This)    \
  608.     (This)->lpVtbl -> AddRef(This)
  609.  
  610. #define IDispError_Release(This)    \
  611.     (This)->lpVtbl -> Release(This)
  612.  
  613.  
  614. #define IDispError_QueryErrorInfo(This,guidErrorType,ppde)    \
  615.     (This)->lpVtbl -> QueryErrorInfo(This,guidErrorType,ppde)
  616.  
  617. #define IDispError_GetNext(This,ppde)    \
  618.     (This)->lpVtbl -> GetNext(This,ppde)
  619.  
  620. #define IDispError_GetHresult(This,phr)    \
  621.     (This)->lpVtbl -> GetHresult(This,phr)
  622.  
  623. #define IDispError_GetSource(This,pbstrSource)    \
  624.     (This)->lpVtbl -> GetSource(This,pbstrSource)
  625.  
  626. #define IDispError_GetHelpInfo(This,pbstrFileName,pdwContext)    \
  627.     (This)->lpVtbl -> GetHelpInfo(This,pbstrFileName,pdwContext)
  628.  
  629. #define IDispError_GetDescription(This,pbstrDescription)    \
  630.     (This)->lpVtbl -> GetDescription(This,pbstrDescription)
  631.  
  632. #endif /* COBJMACROS */
  633.  
  634.  
  635. #endif     /* C style interface */
  636.  
  637.  
  638.  
  639. HRESULT STDMETHODCALLTYPE IDispError_QueryErrorInfo_Proxy( 
  640.     IDispError __RPC_FAR * This,
  641.     /* [in] */ GUID guidErrorType,
  642.     /* [out] */ IDispError __RPC_FAR *__RPC_FAR *ppde);
  643.  
  644.  
  645. void __RPC_STUB IDispError_QueryErrorInfo_Stub(
  646.     IRpcStubBuffer *This,
  647.     IRpcChannelBuffer *_pRpcChannelBuffer,
  648.     PRPC_MESSAGE _pRpcMessage,
  649.     DWORD *_pdwStubPhase);
  650.  
  651.  
  652. HRESULT STDMETHODCALLTYPE IDispError_GetNext_Proxy( 
  653.     IDispError __RPC_FAR * This,
  654.     /* [out] */ IDispError __RPC_FAR *__RPC_FAR *ppde);
  655.  
  656.  
  657. void __RPC_STUB IDispError_GetNext_Stub(
  658.     IRpcStubBuffer *This,
  659.     IRpcChannelBuffer *_pRpcChannelBuffer,
  660.     PRPC_MESSAGE _pRpcMessage,
  661.     DWORD *_pdwStubPhase);
  662.  
  663.  
  664. HRESULT STDMETHODCALLTYPE IDispError_GetHresult_Proxy( 
  665.     IDispError __RPC_FAR * This,
  666.     /* [out] */ HRESULT __RPC_FAR *phr);
  667.  
  668.  
  669. void __RPC_STUB IDispError_GetHresult_Stub(
  670.     IRpcStubBuffer *This,
  671.     IRpcChannelBuffer *_pRpcChannelBuffer,
  672.     PRPC_MESSAGE _pRpcMessage,
  673.     DWORD *_pdwStubPhase);
  674.  
  675.  
  676. HRESULT STDMETHODCALLTYPE IDispError_GetSource_Proxy( 
  677.     IDispError __RPC_FAR * This,
  678.     /* [out] */ BSTR __RPC_FAR *pbstrSource);
  679.  
  680.  
  681. void __RPC_STUB IDispError_GetSource_Stub(
  682.     IRpcStubBuffer *This,
  683.     IRpcChannelBuffer *_pRpcChannelBuffer,
  684.     PRPC_MESSAGE _pRpcMessage,
  685.     DWORD *_pdwStubPhase);
  686.  
  687.  
  688. HRESULT STDMETHODCALLTYPE IDispError_GetHelpInfo_Proxy( 
  689.     IDispError __RPC_FAR * This,
  690.     /* [out] */ BSTR __RPC_FAR *pbstrFileName,
  691.     /* [out] */ DWORD __RPC_FAR *pdwContext);
  692.  
  693.  
  694. void __RPC_STUB IDispError_GetHelpInfo_Stub(
  695.     IRpcStubBuffer *This,
  696.     IRpcChannelBuffer *_pRpcChannelBuffer,
  697.     PRPC_MESSAGE _pRpcMessage,
  698.     DWORD *_pdwStubPhase);
  699.  
  700.  
  701. HRESULT STDMETHODCALLTYPE IDispError_GetDescription_Proxy( 
  702.     IDispError __RPC_FAR * This,
  703.     /* [out] */ BSTR __RPC_FAR *pbstrDescription);
  704.  
  705.  
  706. void __RPC_STUB IDispError_GetDescription_Stub(
  707.     IRpcStubBuffer *This,
  708.     IRpcChannelBuffer *_pRpcChannelBuffer,
  709.     PRPC_MESSAGE _pRpcMessage,
  710.     DWORD *_pdwStubPhase);
  711.  
  712.  
  713.  
  714. #endif     /* __IDispError_INTERFACE_DEFINED__ */
  715.  
  716.  
  717. #ifndef __IVariantChangeType_INTERFACE_DEFINED__
  718. #define __IVariantChangeType_INTERFACE_DEFINED__
  719.  
  720. /****************************************
  721.  * Generated header for interface: IVariantChangeType
  722.  * at Mon Nov 17 12:04:12 1997
  723.  * using MIDL 3.02.88
  724.  ****************************************/
  725. /* [unique][uuid][object] */ 
  726.  
  727.  
  728.  
  729. EXTERN_C const IID IID_IVariantChangeType;
  730.  
  731. #if defined(__cplusplus) && !defined(CINTERFACE)
  732.     
  733.     interface DECLSPEC_UUID("A6EF9862-C720-11d0-9337-00A0C90DCAA9")
  734.     IVariantChangeType : public IUnknown
  735.     {
  736.     public:
  737.         virtual HRESULT STDMETHODCALLTYPE ChangeType( 
  738.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarDst,
  739.             /* [unique][in] */ VARIANT __RPC_FAR *pvarSrc,
  740.             /* [in] */ LCID lcid,
  741.             /* [in] */ VARTYPE vtNew) = 0;
  742.         
  743.     };
  744.     
  745. #else     /* C style interface */
  746.  
  747.     typedef struct IVariantChangeTypeVtbl
  748.     {
  749.         BEGIN_INTERFACE
  750.         
  751.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  752.             IVariantChangeType __RPC_FAR * This,
  753.             /* [in] */ REFIID riid,
  754.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  755.         
  756.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  757.             IVariantChangeType __RPC_FAR * This);
  758.         
  759.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  760.             IVariantChangeType __RPC_FAR * This);
  761.         
  762.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ChangeType )( 
  763.             IVariantChangeType __RPC_FAR * This,
  764.             /* [unique][out][in] */ VARIANT __RPC_FAR *pvarDst,
  765.             /* [unique][in] */ VARIANT __RPC_FAR *pvarSrc,
  766.             /* [in] */ LCID lcid,
  767.             /* [in] */ VARTYPE vtNew);
  768.         
  769.         END_INTERFACE
  770.     } IVariantChangeTypeVtbl;
  771.  
  772.     interface IVariantChangeType
  773.     {
  774.         CONST_VTBL struct IVariantChangeTypeVtbl __RPC_FAR *lpVtbl;
  775.     };
  776.  
  777.     
  778.  
  779. #ifdef COBJMACROS
  780.  
  781.  
  782. #define IVariantChangeType_QueryInterface(This,riid,ppvObject)    \
  783.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  784.  
  785. #define IVariantChangeType_AddRef(This)    \
  786.     (This)->lpVtbl -> AddRef(This)
  787.  
  788. #define IVariantChangeType_Release(This)    \
  789.     (This)->lpVtbl -> Release(This)
  790.  
  791.  
  792. #define IVariantChangeType_ChangeType(This,pvarDst,pvarSrc,lcid,vtNew)    \
  793.     (This)->lpVtbl -> ChangeType(This,pvarDst,pvarSrc,lcid,vtNew)
  794.  
  795. #endif /* COBJMACROS */
  796.  
  797.  
  798. #endif     /* C style interface */
  799.  
  800.  
  801.  
  802. HRESULT STDMETHODCALLTYPE IVariantChangeType_ChangeType_Proxy( 
  803.     IVariantChangeType __RPC_FAR * This,
  804.     /* [unique][out][in] */ VARIANT __RPC_FAR *pvarDst,
  805.     /* [unique][in] */ VARIANT __RPC_FAR *pvarSrc,
  806.     /* [in] */ LCID lcid,
  807.     /* [in] */ VARTYPE vtNew);
  808.  
  809.  
  810. void __RPC_STUB IVariantChangeType_ChangeType_Stub(
  811.     IRpcStubBuffer *This,
  812.     IRpcChannelBuffer *_pRpcChannelBuffer,
  813.     PRPC_MESSAGE _pRpcMessage,
  814.     DWORD *_pdwStubPhase);
  815.  
  816.  
  817.  
  818. #endif     /* __IVariantChangeType_INTERFACE_DEFINED__ */
  819.  
  820.  
  821. #ifndef __IObjectIdentity_INTERFACE_DEFINED__
  822. #define __IObjectIdentity_INTERFACE_DEFINED__
  823.  
  824. /****************************************
  825.  * Generated header for interface: IObjectIdentity
  826.  * at Mon Nov 17 12:04:12 1997
  827.  * using MIDL 3.02.88
  828.  ****************************************/
  829. /* [unique][uuid][object] */ 
  830.  
  831.  
  832.  
  833. EXTERN_C const IID IID_IObjectIdentity;
  834.  
  835. #if defined(__cplusplus) && !defined(CINTERFACE)
  836.     
  837.     interface DECLSPEC_UUID("CA04B7E6-0D21-11d1-8CC5-00C04FC2B085")
  838.     IObjectIdentity : public IUnknown
  839.     {
  840.     public:
  841.         virtual HRESULT STDMETHODCALLTYPE IsEqualObject( 
  842.             /* [in] */ IUnknown __RPC_FAR *punk) = 0;
  843.         
  844.     };
  845.     
  846. #else     /* C style interface */
  847.  
  848.     typedef struct IObjectIdentityVtbl
  849.     {
  850.         BEGIN_INTERFACE
  851.         
  852.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  853.             IObjectIdentity __RPC_FAR * This,
  854.             /* [in] */ REFIID riid,
  855.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  856.         
  857.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  858.             IObjectIdentity __RPC_FAR * This);
  859.         
  860.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  861.             IObjectIdentity __RPC_FAR * This);
  862.         
  863.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsEqualObject )( 
  864.             IObjectIdentity __RPC_FAR * This,
  865.             /* [in] */ IUnknown __RPC_FAR *punk);
  866.         
  867.         END_INTERFACE
  868.     } IObjectIdentityVtbl;
  869.  
  870.     interface IObjectIdentity
  871.     {
  872.         CONST_VTBL struct IObjectIdentityVtbl __RPC_FAR *lpVtbl;
  873.     };
  874.  
  875.     
  876.  
  877. #ifdef COBJMACROS
  878.  
  879.  
  880. #define IObjectIdentity_QueryInterface(This,riid,ppvObject)    \
  881.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  882.  
  883. #define IObjectIdentity_AddRef(This)    \
  884.     (This)->lpVtbl -> AddRef(This)
  885.  
  886. #define IObjectIdentity_Release(This)    \
  887.     (This)->lpVtbl -> Release(This)
  888.  
  889.  
  890. #define IObjectIdentity_IsEqualObject(This,punk)    \
  891.     (This)->lpVtbl -> IsEqualObject(This,punk)
  892.  
  893. #endif /* COBJMACROS */
  894.  
  895.  
  896. #endif     /* C style interface */
  897.  
  898.  
  899.  
  900. HRESULT STDMETHODCALLTYPE IObjectIdentity_IsEqualObject_Proxy( 
  901.     IObjectIdentity __RPC_FAR * This,
  902.     /* [in] */ IUnknown __RPC_FAR *punk);
  903.  
  904.  
  905. void __RPC_STUB IObjectIdentity_IsEqualObject_Stub(
  906.     IRpcStubBuffer *This,
  907.     IRpcChannelBuffer *_pRpcChannelBuffer,
  908.     PRPC_MESSAGE _pRpcMessage,
  909.     DWORD *_pdwStubPhase);
  910.  
  911.  
  912.  
  913. #endif     /* __IObjectIdentity_INTERFACE_DEFINED__ */
  914.  
  915.  
  916. /****************************************
  917.  * Generated header for interface: __MIDL_itf_dispex_0144
  918.  * at Mon Nov 17 12:04:12 1997
  919.  * using MIDL 3.02.88
  920.  ****************************************/
  921. /* [local] */ 
  922.  
  923.  
  924. #endif //DISPEX_H_
  925.  
  926.  
  927. extern RPC_IF_HANDLE __MIDL_itf_dispex_0144_v0_0_c_ifspec;
  928. extern RPC_IF_HANDLE __MIDL_itf_dispex_0144_v0_0_s_ifspec;
  929.  
  930. /* Additional Prototypes for ALL interfaces */
  931.  
  932. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  933. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  934. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  935. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  936.  
  937. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long __RPC_FAR *, unsigned long            , VARIANT __RPC_FAR * ); 
  938. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  939. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  940. void                      __RPC_USER  VARIANT_UserFree(     unsigned long __RPC_FAR *, VARIANT __RPC_FAR * ); 
  941.  
  942. /* [local] */ HRESULT STDMETHODCALLTYPE IDispatchEx_InvokeEx_Proxy( 
  943.     IDispatchEx __RPC_FAR * This,
  944.     /* [in] */ DISPID id,
  945.     /* [in] */ LCID lcid,
  946.     /* [in] */ WORD wFlags,
  947.     /* [in] */ DISPPARAMS __RPC_FAR *pdp,
  948.     /* [out] */ VARIANT __RPC_FAR *pvarRes,
  949.     /* [out] */ EXCEPINFO __RPC_FAR *pei,
  950.     /* [unique][in] */ IServiceProvider __RPC_FAR *pspCaller);
  951.  
  952.  
  953. /* [call_as] */ HRESULT STDMETHODCALLTYPE IDispatchEx_InvokeEx_Stub( 
  954.     IDispatchEx __RPC_FAR * This,
  955.     /* [in] */ DISPID id,
  956.     /* [in] */ LCID lcid,
  957.     /* [in] */ DWORD dwFlags,
  958.     /* [in] */ DISPPARAMS __RPC_FAR *pdp,
  959.     /* [out] */ VARIANT __RPC_FAR *pvarRes,
  960.     /* [out] */ EXCEPINFO __RPC_FAR *pei,
  961.     /* [unique][in] */ IServiceProvider __RPC_FAR *pspCaller,
  962.     /* [in] */ UINT cvarRefArg,
  963.     /* [size_is][in] */ UINT __RPC_FAR *rgiRefArg,
  964.     /* [size_is][out][in] */ VARIANT __RPC_FAR *rgvarRefArg);
  965.  
  966.  
  967.  
  968. /* end of Additional Prototypes */
  969.  
  970. #ifdef __cplusplus
  971. }
  972. #endif
  973.  
  974. #endif
  975.