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

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2.  
  3.  
  4. /* File created by MIDL compiler version 3.01.75 */
  5. /* at Thu Sep 11 16:03:04 1997
  6.  */
  7. /* Compiler settings for mtxadmin.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 __mtxadmin_h__
  20. #define __mtxadmin_h__
  21.  
  22. #ifdef __cplusplus
  23. extern "C"{
  24. #endif 
  25.  
  26. /* Forward Declarations */ 
  27.  
  28. #ifndef __ICatalog_FWD_DEFINED__
  29. #define __ICatalog_FWD_DEFINED__
  30. typedef interface ICatalog ICatalog;
  31. #endif     /* __ICatalog_FWD_DEFINED__ */
  32.  
  33.  
  34. #ifndef __ICatalogObject_FWD_DEFINED__
  35. #define __ICatalogObject_FWD_DEFINED__
  36. typedef interface ICatalogObject ICatalogObject;
  37. #endif     /* __ICatalogObject_FWD_DEFINED__ */
  38.  
  39.  
  40. #ifndef __ICatalogCollection_FWD_DEFINED__
  41. #define __ICatalogCollection_FWD_DEFINED__
  42. typedef interface ICatalogCollection ICatalogCollection;
  43. #endif     /* __ICatalogCollection_FWD_DEFINED__ */
  44.  
  45.  
  46. #ifndef __IComponentUtil_FWD_DEFINED__
  47. #define __IComponentUtil_FWD_DEFINED__
  48. typedef interface IComponentUtil IComponentUtil;
  49. #endif     /* __IComponentUtil_FWD_DEFINED__ */
  50.  
  51.  
  52. #ifndef __IPackageUtil_FWD_DEFINED__
  53. #define __IPackageUtil_FWD_DEFINED__
  54. typedef interface IPackageUtil IPackageUtil;
  55. #endif     /* __IPackageUtil_FWD_DEFINED__ */
  56.  
  57.  
  58. #ifndef __IRemoteComponentUtil_FWD_DEFINED__
  59. #define __IRemoteComponentUtil_FWD_DEFINED__
  60. typedef interface IRemoteComponentUtil IRemoteComponentUtil;
  61. #endif     /* __IRemoteComponentUtil_FWD_DEFINED__ */
  62.  
  63.  
  64. #ifndef __IRoleAssociationUtil_FWD_DEFINED__
  65. #define __IRoleAssociationUtil_FWD_DEFINED__
  66. typedef interface IRoleAssociationUtil IRoleAssociationUtil;
  67. #endif     /* __IRoleAssociationUtil_FWD_DEFINED__ */
  68.  
  69.  
  70. #ifndef __Catalog_FWD_DEFINED__
  71. #define __Catalog_FWD_DEFINED__
  72.  
  73. #ifdef __cplusplus
  74. typedef class Catalog Catalog;
  75. #else
  76. typedef struct Catalog Catalog;
  77. #endif /* __cplusplus */
  78.  
  79. #endif     /* __Catalog_FWD_DEFINED__ */
  80.  
  81.  
  82. #ifndef __CatalogObject_FWD_DEFINED__
  83. #define __CatalogObject_FWD_DEFINED__
  84.  
  85. #ifdef __cplusplus
  86. typedef class CatalogObject CatalogObject;
  87. #else
  88. typedef struct CatalogObject CatalogObject;
  89. #endif /* __cplusplus */
  90.  
  91. #endif     /* __CatalogObject_FWD_DEFINED__ */
  92.  
  93.  
  94. #ifndef __CatalogCollection_FWD_DEFINED__
  95. #define __CatalogCollection_FWD_DEFINED__
  96.  
  97. #ifdef __cplusplus
  98. typedef class CatalogCollection CatalogCollection;
  99. #else
  100. typedef struct CatalogCollection CatalogCollection;
  101. #endif /* __cplusplus */
  102.  
  103. #endif     /* __CatalogCollection_FWD_DEFINED__ */
  104.  
  105.  
  106. #ifndef __ComponentUtil_FWD_DEFINED__
  107. #define __ComponentUtil_FWD_DEFINED__
  108.  
  109. #ifdef __cplusplus
  110. typedef class ComponentUtil ComponentUtil;
  111. #else
  112. typedef struct ComponentUtil ComponentUtil;
  113. #endif /* __cplusplus */
  114.  
  115. #endif     /* __ComponentUtil_FWD_DEFINED__ */
  116.  
  117.  
  118. #ifndef __PackageUtil_FWD_DEFINED__
  119. #define __PackageUtil_FWD_DEFINED__
  120.  
  121. #ifdef __cplusplus
  122. typedef class PackageUtil PackageUtil;
  123. #else
  124. typedef struct PackageUtil PackageUtil;
  125. #endif /* __cplusplus */
  126.  
  127. #endif     /* __PackageUtil_FWD_DEFINED__ */
  128.  
  129.  
  130. #ifndef __RemoteComponentUtil_FWD_DEFINED__
  131. #define __RemoteComponentUtil_FWD_DEFINED__
  132.  
  133. #ifdef __cplusplus
  134. typedef class RemoteComponentUtil RemoteComponentUtil;
  135. #else
  136. typedef struct RemoteComponentUtil RemoteComponentUtil;
  137. #endif /* __cplusplus */
  138.  
  139. #endif     /* __RemoteComponentUtil_FWD_DEFINED__ */
  140.  
  141.  
  142. #ifndef __RoleAssociationUtil_FWD_DEFINED__
  143. #define __RoleAssociationUtil_FWD_DEFINED__
  144.  
  145. #ifdef __cplusplus
  146. typedef class RoleAssociationUtil RoleAssociationUtil;
  147. #else
  148. typedef struct RoleAssociationUtil RoleAssociationUtil;
  149. #endif /* __cplusplus */
  150.  
  151. #endif     /* __RoleAssociationUtil_FWD_DEFINED__ */
  152.  
  153.  
  154. /* header files for imported files */
  155. #include "unknwn.h"
  156. #include "oaidl.h"
  157.  
  158. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  159. void __RPC_USER MIDL_user_free( void __RPC_FAR * ); 
  160.  
  161. /****************************************
  162.  * Generated header for interface: __MIDL_itf_mtxadmin_0000
  163.  * at Thu Sep 11 16:03:04 1997
  164.  * using MIDL 3.01.75
  165.  ****************************************/
  166. /* [local] */ 
  167.  
  168.  
  169. // -----------------------------------------------------------------------    
  170. // mtxadmin.h  -- Microsoft Transaction Server Programming Interfaces                
  171. //                                                                            
  172. // This file provides the prototypes for the APIs and COM interfaces            
  173. // used by Microsoft Transaction Server applications.                                                    
  174. //                                                                            
  175. // Microsoft Transaction Server SDK                                                
  176. // Copyright (c) 1997 Microsoft Corporation.  All Rights Reserved.        
  177. // -----------------------------------------------------------------------    
  178. #include <objbase.h>
  179. #ifndef DECLSPEC_UUID
  180. #if _MSC_VER >= 1100
  181. #define DECLSPEC_UUID(x)    __declspec(uuid(x))
  182. #else
  183. #define DECLSPEC_UUID(x)
  184. #endif
  185. #endif
  186.  
  187.  
  188. extern RPC_IF_HANDLE __MIDL_itf_mtxadmin_0000_v0_0_c_ifspec;
  189. extern RPC_IF_HANDLE __MIDL_itf_mtxadmin_0000_v0_0_s_ifspec;
  190.  
  191. #ifndef __ICatalog_INTERFACE_DEFINED__
  192. #define __ICatalog_INTERFACE_DEFINED__
  193.  
  194. /****************************************
  195.  * Generated header for interface: ICatalog
  196.  * at Thu Sep 11 16:03:04 1997
  197.  * using MIDL 3.01.75
  198.  ****************************************/
  199. /* [unique][helpstring][dual][uuid][object] */ 
  200.  
  201.  
  202.  
  203. EXTERN_C const IID IID_ICatalog;
  204.  
  205. #if defined(__cplusplus) && !defined(CINTERFACE)
  206.     
  207.     interface DECLSPEC_UUID("6eb22870-8a19-11d0-81b6-00a0c9231c29")
  208.     ICatalog : public IDispatch
  209.     {
  210.     public:
  211.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCollection( 
  212.             /* [in] */ BSTR bstrCollName,
  213.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection) = 0;
  214.         
  215.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Connect( 
  216.             /* [in] */ BSTR bstrConnectString,
  217.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection) = 0;
  218.         
  219.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MajorVersion( 
  220.             /* [retval][out] */ long __RPC_FAR *retval) = 0;
  221.         
  222.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_MinorVersion( 
  223.             /* [retval][out] */ long __RPC_FAR *retval) = 0;
  224.         
  225.     };
  226.     
  227. #else     /* C style interface */
  228.  
  229.     typedef struct ICatalogVtbl
  230.     {
  231.         BEGIN_INTERFACE
  232.         
  233.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  234.             ICatalog __RPC_FAR * This,
  235.             /* [in] */ REFIID riid,
  236.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  237.         
  238.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  239.             ICatalog __RPC_FAR * This);
  240.         
  241.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  242.             ICatalog __RPC_FAR * This);
  243.         
  244.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  245.             ICatalog __RPC_FAR * This,
  246.             /* [out] */ UINT __RPC_FAR *pctinfo);
  247.         
  248.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  249.             ICatalog __RPC_FAR * This,
  250.             /* [in] */ UINT iTInfo,
  251.             /* [in] */ LCID lcid,
  252.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  253.         
  254.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  255.             ICatalog __RPC_FAR * This,
  256.             /* [in] */ REFIID riid,
  257.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  258.             /* [in] */ UINT cNames,
  259.             /* [in] */ LCID lcid,
  260.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  261.         
  262.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  263.             ICatalog __RPC_FAR * This,
  264.             /* [in] */ DISPID dispIdMember,
  265.             /* [in] */ REFIID riid,
  266.             /* [in] */ LCID lcid,
  267.             /* [in] */ WORD wFlags,
  268.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  269.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  270.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  271.             /* [out] */ UINT __RPC_FAR *puArgErr);
  272.         
  273.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCollection )( 
  274.             ICatalog __RPC_FAR * This,
  275.             /* [in] */ BSTR bstrCollName,
  276.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection);
  277.         
  278.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Connect )( 
  279.             ICatalog __RPC_FAR * This,
  280.             /* [in] */ BSTR bstrConnectString,
  281.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection);
  282.         
  283.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MajorVersion )( 
  284.             ICatalog __RPC_FAR * This,
  285.             /* [retval][out] */ long __RPC_FAR *retval);
  286.         
  287.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_MinorVersion )( 
  288.             ICatalog __RPC_FAR * This,
  289.             /* [retval][out] */ long __RPC_FAR *retval);
  290.         
  291.         END_INTERFACE
  292.     } ICatalogVtbl;
  293.  
  294.     interface ICatalog
  295.     {
  296.         CONST_VTBL struct ICatalogVtbl __RPC_FAR *lpVtbl;
  297.     };
  298.  
  299.     
  300.  
  301. #ifdef COBJMACROS
  302.  
  303.  
  304. #define ICatalog_QueryInterface(This,riid,ppvObject)    \
  305.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  306.  
  307. #define ICatalog_AddRef(This)    \
  308.     (This)->lpVtbl -> AddRef(This)
  309.  
  310. #define ICatalog_Release(This)    \
  311.     (This)->lpVtbl -> Release(This)
  312.  
  313.  
  314. #define ICatalog_GetTypeInfoCount(This,pctinfo)    \
  315.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  316.  
  317. #define ICatalog_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  318.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  319.  
  320. #define ICatalog_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  321.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  322.  
  323. #define ICatalog_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  324.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  325.  
  326.  
  327. #define ICatalog_GetCollection(This,bstrCollName,ppCatalogCollection)    \
  328.     (This)->lpVtbl -> GetCollection(This,bstrCollName,ppCatalogCollection)
  329.  
  330. #define ICatalog_Connect(This,bstrConnectString,ppCatalogCollection)    \
  331.     (This)->lpVtbl -> Connect(This,bstrConnectString,ppCatalogCollection)
  332.  
  333. #define ICatalog_get_MajorVersion(This,retval)    \
  334.     (This)->lpVtbl -> get_MajorVersion(This,retval)
  335.  
  336. #define ICatalog_get_MinorVersion(This,retval)    \
  337.     (This)->lpVtbl -> get_MinorVersion(This,retval)
  338.  
  339. #endif /* COBJMACROS */
  340.  
  341.  
  342. #endif     /* C style interface */
  343.  
  344.  
  345.  
  346. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalog_GetCollection_Proxy( 
  347.     ICatalog __RPC_FAR * This,
  348.     /* [in] */ BSTR bstrCollName,
  349.     /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection);
  350.  
  351.  
  352. void __RPC_STUB ICatalog_GetCollection_Stub(
  353.     IRpcStubBuffer *This,
  354.     IRpcChannelBuffer *_pRpcChannelBuffer,
  355.     PRPC_MESSAGE _pRpcMessage,
  356.     DWORD *_pdwStubPhase);
  357.  
  358.  
  359. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalog_Connect_Proxy( 
  360.     ICatalog __RPC_FAR * This,
  361.     /* [in] */ BSTR bstrConnectString,
  362.     /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection);
  363.  
  364.  
  365. void __RPC_STUB ICatalog_Connect_Stub(
  366.     IRpcStubBuffer *This,
  367.     IRpcChannelBuffer *_pRpcChannelBuffer,
  368.     PRPC_MESSAGE _pRpcMessage,
  369.     DWORD *_pdwStubPhase);
  370.  
  371.  
  372. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalog_get_MajorVersion_Proxy( 
  373.     ICatalog __RPC_FAR * This,
  374.     /* [retval][out] */ long __RPC_FAR *retval);
  375.  
  376.  
  377. void __RPC_STUB ICatalog_get_MajorVersion_Stub(
  378.     IRpcStubBuffer *This,
  379.     IRpcChannelBuffer *_pRpcChannelBuffer,
  380.     PRPC_MESSAGE _pRpcMessage,
  381.     DWORD *_pdwStubPhase);
  382.  
  383.  
  384. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalog_get_MinorVersion_Proxy( 
  385.     ICatalog __RPC_FAR * This,
  386.     /* [retval][out] */ long __RPC_FAR *retval);
  387.  
  388.  
  389. void __RPC_STUB ICatalog_get_MinorVersion_Stub(
  390.     IRpcStubBuffer *This,
  391.     IRpcChannelBuffer *_pRpcChannelBuffer,
  392.     PRPC_MESSAGE _pRpcMessage,
  393.     DWORD *_pdwStubPhase);
  394.  
  395.  
  396.  
  397. #endif     /* __ICatalog_INTERFACE_DEFINED__ */
  398.  
  399.  
  400. #ifndef __ICatalogObject_INTERFACE_DEFINED__
  401. #define __ICatalogObject_INTERFACE_DEFINED__
  402.  
  403. /****************************************
  404.  * Generated header for interface: ICatalogObject
  405.  * at Thu Sep 11 16:03:04 1997
  406.  * using MIDL 3.01.75
  407.  ****************************************/
  408. /* [unique][helpstring][dual][uuid][object] */ 
  409.  
  410.  
  411.  
  412. EXTERN_C const IID IID_ICatalogObject;
  413.  
  414. #if defined(__cplusplus) && !defined(CINTERFACE)
  415.     
  416.     interface DECLSPEC_UUID("6eb22871-8a19-11d0-81b6-00a0c9231c29")
  417.     ICatalogObject : public IDispatch
  418.     {
  419.     public:
  420.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
  421.             /* [in] */ BSTR bstrPropName,
  422.             /* [retval][out] */ VARIANT __RPC_FAR *retval) = 0;
  423.         
  424.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
  425.             /* [in] */ BSTR bstrPropName,
  426.             /* [in] */ VARIANT val) = 0;
  427.         
  428.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Key( 
  429.             /* [retval][out] */ VARIANT __RPC_FAR *retval) = 0;
  430.         
  431.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  432.             /* [retval][out] */ VARIANT __RPC_FAR *retval) = 0;
  433.         
  434.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IsPropertyReadOnly( 
  435.             /* [in] */ BSTR bstrPropName,
  436.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval) = 0;
  437.         
  438.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Valid( 
  439.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval) = 0;
  440.         
  441.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IsPropertyWriteOnly( 
  442.             /* [in] */ BSTR bstrPropName,
  443.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval) = 0;
  444.         
  445.     };
  446.     
  447. #else     /* C style interface */
  448.  
  449.     typedef struct ICatalogObjectVtbl
  450.     {
  451.         BEGIN_INTERFACE
  452.         
  453.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  454.             ICatalogObject __RPC_FAR * This,
  455.             /* [in] */ REFIID riid,
  456.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  457.         
  458.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  459.             ICatalogObject __RPC_FAR * This);
  460.         
  461.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  462.             ICatalogObject __RPC_FAR * This);
  463.         
  464.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  465.             ICatalogObject __RPC_FAR * This,
  466.             /* [out] */ UINT __RPC_FAR *pctinfo);
  467.         
  468.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  469.             ICatalogObject __RPC_FAR * This,
  470.             /* [in] */ UINT iTInfo,
  471.             /* [in] */ LCID lcid,
  472.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  473.         
  474.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  475.             ICatalogObject __RPC_FAR * This,
  476.             /* [in] */ REFIID riid,
  477.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  478.             /* [in] */ UINT cNames,
  479.             /* [in] */ LCID lcid,
  480.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  481.         
  482.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  483.             ICatalogObject __RPC_FAR * This,
  484.             /* [in] */ DISPID dispIdMember,
  485.             /* [in] */ REFIID riid,
  486.             /* [in] */ LCID lcid,
  487.             /* [in] */ WORD wFlags,
  488.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  489.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  490.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  491.             /* [out] */ UINT __RPC_FAR *puArgErr);
  492.         
  493.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Value )( 
  494.             ICatalogObject __RPC_FAR * This,
  495.             /* [in] */ BSTR bstrPropName,
  496.             /* [retval][out] */ VARIANT __RPC_FAR *retval);
  497.         
  498.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *put_Value )( 
  499.             ICatalogObject __RPC_FAR * This,
  500.             /* [in] */ BSTR bstrPropName,
  501.             /* [in] */ VARIANT val);
  502.         
  503.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Key )( 
  504.             ICatalogObject __RPC_FAR * This,
  505.             /* [retval][out] */ VARIANT __RPC_FAR *retval);
  506.         
  507.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  508.             ICatalogObject __RPC_FAR * This,
  509.             /* [retval][out] */ VARIANT __RPC_FAR *retval);
  510.         
  511.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsPropertyReadOnly )( 
  512.             ICatalogObject __RPC_FAR * This,
  513.             /* [in] */ BSTR bstrPropName,
  514.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  515.         
  516.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Valid )( 
  517.             ICatalogObject __RPC_FAR * This,
  518.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  519.         
  520.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *IsPropertyWriteOnly )( 
  521.             ICatalogObject __RPC_FAR * This,
  522.             /* [in] */ BSTR bstrPropName,
  523.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  524.         
  525.         END_INTERFACE
  526.     } ICatalogObjectVtbl;
  527.  
  528.     interface ICatalogObject
  529.     {
  530.         CONST_VTBL struct ICatalogObjectVtbl __RPC_FAR *lpVtbl;
  531.     };
  532.  
  533.     
  534.  
  535. #ifdef COBJMACROS
  536.  
  537.  
  538. #define ICatalogObject_QueryInterface(This,riid,ppvObject)    \
  539.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  540.  
  541. #define ICatalogObject_AddRef(This)    \
  542.     (This)->lpVtbl -> AddRef(This)
  543.  
  544. #define ICatalogObject_Release(This)    \
  545.     (This)->lpVtbl -> Release(This)
  546.  
  547.  
  548. #define ICatalogObject_GetTypeInfoCount(This,pctinfo)    \
  549.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  550.  
  551. #define ICatalogObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  552.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  553.  
  554. #define ICatalogObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  555.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  556.  
  557. #define ICatalogObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  558.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  559.  
  560.  
  561. #define ICatalogObject_get_Value(This,bstrPropName,retval)    \
  562.     (This)->lpVtbl -> get_Value(This,bstrPropName,retval)
  563.  
  564. #define ICatalogObject_put_Value(This,bstrPropName,val)    \
  565.     (This)->lpVtbl -> put_Value(This,bstrPropName,val)
  566.  
  567. #define ICatalogObject_get_Key(This,retval)    \
  568.     (This)->lpVtbl -> get_Key(This,retval)
  569.  
  570. #define ICatalogObject_get_Name(This,retval)    \
  571.     (This)->lpVtbl -> get_Name(This,retval)
  572.  
  573. #define ICatalogObject_IsPropertyReadOnly(This,bstrPropName,retval)    \
  574.     (This)->lpVtbl -> IsPropertyReadOnly(This,bstrPropName,retval)
  575.  
  576. #define ICatalogObject_get_Valid(This,retval)    \
  577.     (This)->lpVtbl -> get_Valid(This,retval)
  578.  
  579. #define ICatalogObject_IsPropertyWriteOnly(This,bstrPropName,retval)    \
  580.     (This)->lpVtbl -> IsPropertyWriteOnly(This,bstrPropName,retval)
  581.  
  582. #endif /* COBJMACROS */
  583.  
  584.  
  585. #endif     /* C style interface */
  586.  
  587.  
  588.  
  589. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogObject_get_Value_Proxy( 
  590.     ICatalogObject __RPC_FAR * This,
  591.     /* [in] */ BSTR bstrPropName,
  592.     /* [retval][out] */ VARIANT __RPC_FAR *retval);
  593.  
  594.  
  595. void __RPC_STUB ICatalogObject_get_Value_Stub(
  596.     IRpcStubBuffer *This,
  597.     IRpcChannelBuffer *_pRpcChannelBuffer,
  598.     PRPC_MESSAGE _pRpcMessage,
  599.     DWORD *_pdwStubPhase);
  600.  
  601.  
  602. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE ICatalogObject_put_Value_Proxy( 
  603.     ICatalogObject __RPC_FAR * This,
  604.     /* [in] */ BSTR bstrPropName,
  605.     /* [in] */ VARIANT val);
  606.  
  607.  
  608. void __RPC_STUB ICatalogObject_put_Value_Stub(
  609.     IRpcStubBuffer *This,
  610.     IRpcChannelBuffer *_pRpcChannelBuffer,
  611.     PRPC_MESSAGE _pRpcMessage,
  612.     DWORD *_pdwStubPhase);
  613.  
  614.  
  615. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogObject_get_Key_Proxy( 
  616.     ICatalogObject __RPC_FAR * This,
  617.     /* [retval][out] */ VARIANT __RPC_FAR *retval);
  618.  
  619.  
  620. void __RPC_STUB ICatalogObject_get_Key_Stub(
  621.     IRpcStubBuffer *This,
  622.     IRpcChannelBuffer *_pRpcChannelBuffer,
  623.     PRPC_MESSAGE _pRpcMessage,
  624.     DWORD *_pdwStubPhase);
  625.  
  626.  
  627. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogObject_get_Name_Proxy( 
  628.     ICatalogObject __RPC_FAR * This,
  629.     /* [retval][out] */ VARIANT __RPC_FAR *retval);
  630.  
  631.  
  632. void __RPC_STUB ICatalogObject_get_Name_Stub(
  633.     IRpcStubBuffer *This,
  634.     IRpcChannelBuffer *_pRpcChannelBuffer,
  635.     PRPC_MESSAGE _pRpcMessage,
  636.     DWORD *_pdwStubPhase);
  637.  
  638.  
  639. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalogObject_IsPropertyReadOnly_Proxy( 
  640.     ICatalogObject __RPC_FAR * This,
  641.     /* [in] */ BSTR bstrPropName,
  642.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  643.  
  644.  
  645. void __RPC_STUB ICatalogObject_IsPropertyReadOnly_Stub(
  646.     IRpcStubBuffer *This,
  647.     IRpcChannelBuffer *_pRpcChannelBuffer,
  648.     PRPC_MESSAGE _pRpcMessage,
  649.     DWORD *_pdwStubPhase);
  650.  
  651.  
  652. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogObject_get_Valid_Proxy( 
  653.     ICatalogObject __RPC_FAR * This,
  654.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  655.  
  656.  
  657. void __RPC_STUB ICatalogObject_get_Valid_Stub(
  658.     IRpcStubBuffer *This,
  659.     IRpcChannelBuffer *_pRpcChannelBuffer,
  660.     PRPC_MESSAGE _pRpcMessage,
  661.     DWORD *_pdwStubPhase);
  662.  
  663.  
  664. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalogObject_IsPropertyWriteOnly_Proxy( 
  665.     ICatalogObject __RPC_FAR * This,
  666.     /* [in] */ BSTR bstrPropName,
  667.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  668.  
  669.  
  670. void __RPC_STUB ICatalogObject_IsPropertyWriteOnly_Stub(
  671.     IRpcStubBuffer *This,
  672.     IRpcChannelBuffer *_pRpcChannelBuffer,
  673.     PRPC_MESSAGE _pRpcMessage,
  674.     DWORD *_pdwStubPhase);
  675.  
  676.  
  677.  
  678. #endif     /* __ICatalogObject_INTERFACE_DEFINED__ */
  679.  
  680.  
  681. #ifndef __ICatalogCollection_INTERFACE_DEFINED__
  682. #define __ICatalogCollection_INTERFACE_DEFINED__
  683.  
  684. /****************************************
  685.  * Generated header for interface: ICatalogCollection
  686.  * at Thu Sep 11 16:03:04 1997
  687.  * using MIDL 3.01.75
  688.  ****************************************/
  689. /* [unique][helpstring][dual][uuid][object] */ 
  690.  
  691.  
  692.  
  693. EXTERN_C const IID IID_ICatalogCollection;
  694.  
  695. #if defined(__cplusplus) && !defined(CINTERFACE)
  696.     
  697.     interface DECLSPEC_UUID("6eb22872-8a19-11d0-81b6-00a0c9231c29")
  698.     ICatalogCollection : public IDispatch
  699.     {
  700.     public:
  701.         virtual /* [id][restricted][propget] */ HRESULT STDMETHODCALLTYPE get__NewEnum( 
  702.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppEnumVariant) = 0;
  703.         
  704.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Item( 
  705.             /* [in] */ long lIndex,
  706.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogObject) = 0;
  707.         
  708.         virtual /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE get_Count( 
  709.             /* [retval][out] */ long __RPC_FAR *retval) = 0;
  710.         
  711.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Remove( 
  712.             /* [in] */ long lIndex) = 0;
  713.         
  714.         virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Add( 
  715.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogObject) = 0;
  716.         
  717.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Populate( void) = 0;
  718.         
  719.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveChanges( 
  720.             /* [retval][out] */ long __RPC_FAR *retval) = 0;
  721.         
  722.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCollection( 
  723.             /* [in] */ BSTR bstrCollName,
  724.             /* [in] */ VARIANT varObjectKey,
  725.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection) = 0;
  726.         
  727.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
  728.             /* [retval][out] */ VARIANT __RPC_FAR *retval) = 0;
  729.         
  730.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AddEnabled( 
  731.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval) = 0;
  732.         
  733.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_RemoveEnabled( 
  734.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval) = 0;
  735.         
  736.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetUtilInterface( 
  737.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppUtil) = 0;
  738.         
  739.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DataStoreMajorVersion( 
  740.             /* [retval][out] */ long __RPC_FAR *retval) = 0;
  741.         
  742.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_DataStoreMinorVersion( 
  743.             /* [retval][out] */ long __RPC_FAR *retval) = 0;
  744.         
  745.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE PopulateByKey( 
  746.             /* [in] */ SAFEARRAY __RPC_FAR * aKeys) = 0;
  747.         
  748.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE PopulateByQuery( 
  749.             /* [in] */ BSTR bstrQueryString,
  750.             /* [in] */ long lQueryType) = 0;
  751.         
  752.     };
  753.     
  754. #else     /* C style interface */
  755.  
  756.     typedef struct ICatalogCollectionVtbl
  757.     {
  758.         BEGIN_INTERFACE
  759.         
  760.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  761.             ICatalogCollection __RPC_FAR * This,
  762.             /* [in] */ REFIID riid,
  763.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  764.         
  765.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  766.             ICatalogCollection __RPC_FAR * This);
  767.         
  768.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  769.             ICatalogCollection __RPC_FAR * This);
  770.         
  771.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  772.             ICatalogCollection __RPC_FAR * This,
  773.             /* [out] */ UINT __RPC_FAR *pctinfo);
  774.         
  775.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  776.             ICatalogCollection __RPC_FAR * This,
  777.             /* [in] */ UINT iTInfo,
  778.             /* [in] */ LCID lcid,
  779.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  780.         
  781.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  782.             ICatalogCollection __RPC_FAR * This,
  783.             /* [in] */ REFIID riid,
  784.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  785.             /* [in] */ UINT cNames,
  786.             /* [in] */ LCID lcid,
  787.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  788.         
  789.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  790.             ICatalogCollection __RPC_FAR * This,
  791.             /* [in] */ DISPID dispIdMember,
  792.             /* [in] */ REFIID riid,
  793.             /* [in] */ LCID lcid,
  794.             /* [in] */ WORD wFlags,
  795.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  796.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  797.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  798.             /* [out] */ UINT __RPC_FAR *puArgErr);
  799.         
  800.         /* [id][restricted][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get__NewEnum )( 
  801.             ICatalogCollection __RPC_FAR * This,
  802.             /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppEnumVariant);
  803.         
  804.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Item )( 
  805.             ICatalogCollection __RPC_FAR * This,
  806.             /* [in] */ long lIndex,
  807.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogObject);
  808.         
  809.         /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Count )( 
  810.             ICatalogCollection __RPC_FAR * This,
  811.             /* [retval][out] */ long __RPC_FAR *retval);
  812.         
  813.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Remove )( 
  814.             ICatalogCollection __RPC_FAR * This,
  815.             /* [in] */ long lIndex);
  816.         
  817.         /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Add )( 
  818.             ICatalogCollection __RPC_FAR * This,
  819.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogObject);
  820.         
  821.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Populate )( 
  822.             ICatalogCollection __RPC_FAR * This);
  823.         
  824.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SaveChanges )( 
  825.             ICatalogCollection __RPC_FAR * This,
  826.             /* [retval][out] */ long __RPC_FAR *retval);
  827.         
  828.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCollection )( 
  829.             ICatalogCollection __RPC_FAR * This,
  830.             /* [in] */ BSTR bstrCollName,
  831.             /* [in] */ VARIANT varObjectKey,
  832.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection);
  833.         
  834.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_Name )( 
  835.             ICatalogCollection __RPC_FAR * This,
  836.             /* [retval][out] */ VARIANT __RPC_FAR *retval);
  837.         
  838.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_AddEnabled )( 
  839.             ICatalogCollection __RPC_FAR * This,
  840.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  841.         
  842.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_RemoveEnabled )( 
  843.             ICatalogCollection __RPC_FAR * This,
  844.             /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  845.         
  846.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetUtilInterface )( 
  847.             ICatalogCollection __RPC_FAR * This,
  848.             /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppUtil);
  849.         
  850.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DataStoreMajorVersion )( 
  851.             ICatalogCollection __RPC_FAR * This,
  852.             /* [retval][out] */ long __RPC_FAR *retval);
  853.         
  854.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *get_DataStoreMinorVersion )( 
  855.             ICatalogCollection __RPC_FAR * This,
  856.             /* [retval][out] */ long __RPC_FAR *retval);
  857.         
  858.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PopulateByKey )( 
  859.             ICatalogCollection __RPC_FAR * This,
  860.             /* [in] */ SAFEARRAY __RPC_FAR * aKeys);
  861.         
  862.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PopulateByQuery )( 
  863.             ICatalogCollection __RPC_FAR * This,
  864.             /* [in] */ BSTR bstrQueryString,
  865.             /* [in] */ long lQueryType);
  866.         
  867.         END_INTERFACE
  868.     } ICatalogCollectionVtbl;
  869.  
  870.     interface ICatalogCollection
  871.     {
  872.         CONST_VTBL struct ICatalogCollectionVtbl __RPC_FAR *lpVtbl;
  873.     };
  874.  
  875.     
  876.  
  877. #ifdef COBJMACROS
  878.  
  879.  
  880. #define ICatalogCollection_QueryInterface(This,riid,ppvObject)    \
  881.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  882.  
  883. #define ICatalogCollection_AddRef(This)    \
  884.     (This)->lpVtbl -> AddRef(This)
  885.  
  886. #define ICatalogCollection_Release(This)    \
  887.     (This)->lpVtbl -> Release(This)
  888.  
  889.  
  890. #define ICatalogCollection_GetTypeInfoCount(This,pctinfo)    \
  891.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  892.  
  893. #define ICatalogCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  894.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  895.  
  896. #define ICatalogCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  897.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  898.  
  899. #define ICatalogCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  900.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  901.  
  902.  
  903. #define ICatalogCollection_get__NewEnum(This,ppEnumVariant)    \
  904.     (This)->lpVtbl -> get__NewEnum(This,ppEnumVariant)
  905.  
  906. #define ICatalogCollection_get_Item(This,lIndex,ppCatalogObject)    \
  907.     (This)->lpVtbl -> get_Item(This,lIndex,ppCatalogObject)
  908.  
  909. #define ICatalogCollection_get_Count(This,retval)    \
  910.     (This)->lpVtbl -> get_Count(This,retval)
  911.  
  912. #define ICatalogCollection_Remove(This,lIndex)    \
  913.     (This)->lpVtbl -> Remove(This,lIndex)
  914.  
  915. #define ICatalogCollection_Add(This,ppCatalogObject)    \
  916.     (This)->lpVtbl -> Add(This,ppCatalogObject)
  917.  
  918. #define ICatalogCollection_Populate(This)    \
  919.     (This)->lpVtbl -> Populate(This)
  920.  
  921. #define ICatalogCollection_SaveChanges(This,retval)    \
  922.     (This)->lpVtbl -> SaveChanges(This,retval)
  923.  
  924. #define ICatalogCollection_GetCollection(This,bstrCollName,varObjectKey,ppCatalogCollection)    \
  925.     (This)->lpVtbl -> GetCollection(This,bstrCollName,varObjectKey,ppCatalogCollection)
  926.  
  927. #define ICatalogCollection_get_Name(This,retval)    \
  928.     (This)->lpVtbl -> get_Name(This,retval)
  929.  
  930. #define ICatalogCollection_get_AddEnabled(This,retval)    \
  931.     (This)->lpVtbl -> get_AddEnabled(This,retval)
  932.  
  933. #define ICatalogCollection_get_RemoveEnabled(This,retval)    \
  934.     (This)->lpVtbl -> get_RemoveEnabled(This,retval)
  935.  
  936. #define ICatalogCollection_GetUtilInterface(This,ppUtil)    \
  937.     (This)->lpVtbl -> GetUtilInterface(This,ppUtil)
  938.  
  939. #define ICatalogCollection_get_DataStoreMajorVersion(This,retval)    \
  940.     (This)->lpVtbl -> get_DataStoreMajorVersion(This,retval)
  941.  
  942. #define ICatalogCollection_get_DataStoreMinorVersion(This,retval)    \
  943.     (This)->lpVtbl -> get_DataStoreMinorVersion(This,retval)
  944.  
  945. #define ICatalogCollection_PopulateByKey(This,aKeys)    \
  946.     (This)->lpVtbl -> PopulateByKey(This,aKeys)
  947.  
  948. #define ICatalogCollection_PopulateByQuery(This,bstrQueryString,lQueryType)    \
  949.     (This)->lpVtbl -> PopulateByQuery(This,bstrQueryString,lQueryType)
  950.  
  951. #endif /* COBJMACROS */
  952.  
  953.  
  954. #endif     /* C style interface */
  955.  
  956.  
  957.  
  958. /* [id][restricted][propget] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_get__NewEnum_Proxy( 
  959.     ICatalogCollection __RPC_FAR * This,
  960.     /* [retval][out] */ IUnknown __RPC_FAR *__RPC_FAR *ppEnumVariant);
  961.  
  962.  
  963. void __RPC_STUB ICatalogCollection_get__NewEnum_Stub(
  964.     IRpcStubBuffer *This,
  965.     IRpcChannelBuffer *_pRpcChannelBuffer,
  966.     PRPC_MESSAGE _pRpcMessage,
  967.     DWORD *_pdwStubPhase);
  968.  
  969.  
  970. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_get_Item_Proxy( 
  971.     ICatalogCollection __RPC_FAR * This,
  972.     /* [in] */ long lIndex,
  973.     /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogObject);
  974.  
  975.  
  976. void __RPC_STUB ICatalogCollection_get_Item_Stub(
  977.     IRpcStubBuffer *This,
  978.     IRpcChannelBuffer *_pRpcChannelBuffer,
  979.     PRPC_MESSAGE _pRpcMessage,
  980.     DWORD *_pdwStubPhase);
  981.  
  982.  
  983. /* [helpstring][propget] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_get_Count_Proxy( 
  984.     ICatalogCollection __RPC_FAR * This,
  985.     /* [retval][out] */ long __RPC_FAR *retval);
  986.  
  987.  
  988. void __RPC_STUB ICatalogCollection_get_Count_Stub(
  989.     IRpcStubBuffer *This,
  990.     IRpcChannelBuffer *_pRpcChannelBuffer,
  991.     PRPC_MESSAGE _pRpcMessage,
  992.     DWORD *_pdwStubPhase);
  993.  
  994.  
  995. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_Remove_Proxy( 
  996.     ICatalogCollection __RPC_FAR * This,
  997.     /* [in] */ long lIndex);
  998.  
  999.  
  1000. void __RPC_STUB ICatalogCollection_Remove_Stub(
  1001.     IRpcStubBuffer *This,
  1002.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1003.     PRPC_MESSAGE _pRpcMessage,
  1004.     DWORD *_pdwStubPhase);
  1005.  
  1006.  
  1007. /* [helpstring] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_Add_Proxy( 
  1008.     ICatalogCollection __RPC_FAR * This,
  1009.     /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogObject);
  1010.  
  1011.  
  1012. void __RPC_STUB ICatalogCollection_Add_Stub(
  1013.     IRpcStubBuffer *This,
  1014.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1015.     PRPC_MESSAGE _pRpcMessage,
  1016.     DWORD *_pdwStubPhase);
  1017.  
  1018.  
  1019. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_Populate_Proxy( 
  1020.     ICatalogCollection __RPC_FAR * This);
  1021.  
  1022.  
  1023. void __RPC_STUB ICatalogCollection_Populate_Stub(
  1024.     IRpcStubBuffer *This,
  1025.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1026.     PRPC_MESSAGE _pRpcMessage,
  1027.     DWORD *_pdwStubPhase);
  1028.  
  1029.  
  1030. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_SaveChanges_Proxy( 
  1031.     ICatalogCollection __RPC_FAR * This,
  1032.     /* [retval][out] */ long __RPC_FAR *retval);
  1033.  
  1034.  
  1035. void __RPC_STUB ICatalogCollection_SaveChanges_Stub(
  1036.     IRpcStubBuffer *This,
  1037.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1038.     PRPC_MESSAGE _pRpcMessage,
  1039.     DWORD *_pdwStubPhase);
  1040.  
  1041.  
  1042. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_GetCollection_Proxy( 
  1043.     ICatalogCollection __RPC_FAR * This,
  1044.     /* [in] */ BSTR bstrCollName,
  1045.     /* [in] */ VARIANT varObjectKey,
  1046.     /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppCatalogCollection);
  1047.  
  1048.  
  1049. void __RPC_STUB ICatalogCollection_GetCollection_Stub(
  1050.     IRpcStubBuffer *This,
  1051.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1052.     PRPC_MESSAGE _pRpcMessage,
  1053.     DWORD *_pdwStubPhase);
  1054.  
  1055.  
  1056. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_get_Name_Proxy( 
  1057.     ICatalogCollection __RPC_FAR * This,
  1058.     /* [retval][out] */ VARIANT __RPC_FAR *retval);
  1059.  
  1060.  
  1061. void __RPC_STUB ICatalogCollection_get_Name_Stub(
  1062.     IRpcStubBuffer *This,
  1063.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1064.     PRPC_MESSAGE _pRpcMessage,
  1065.     DWORD *_pdwStubPhase);
  1066.  
  1067.  
  1068. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_get_AddEnabled_Proxy( 
  1069.     ICatalogCollection __RPC_FAR * This,
  1070.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  1071.  
  1072.  
  1073. void __RPC_STUB ICatalogCollection_get_AddEnabled_Stub(
  1074.     IRpcStubBuffer *This,
  1075.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1076.     PRPC_MESSAGE _pRpcMessage,
  1077.     DWORD *_pdwStubPhase);
  1078.  
  1079.  
  1080. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_get_RemoveEnabled_Proxy( 
  1081.     ICatalogCollection __RPC_FAR * This,
  1082.     /* [retval][out] */ VARIANT_BOOL __RPC_FAR *retval);
  1083.  
  1084.  
  1085. void __RPC_STUB ICatalogCollection_get_RemoveEnabled_Stub(
  1086.     IRpcStubBuffer *This,
  1087.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1088.     PRPC_MESSAGE _pRpcMessage,
  1089.     DWORD *_pdwStubPhase);
  1090.  
  1091.  
  1092. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_GetUtilInterface_Proxy( 
  1093.     ICatalogCollection __RPC_FAR * This,
  1094.     /* [retval][out] */ IDispatch __RPC_FAR *__RPC_FAR *ppUtil);
  1095.  
  1096.  
  1097. void __RPC_STUB ICatalogCollection_GetUtilInterface_Stub(
  1098.     IRpcStubBuffer *This,
  1099.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1100.     PRPC_MESSAGE _pRpcMessage,
  1101.     DWORD *_pdwStubPhase);
  1102.  
  1103.  
  1104. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_get_DataStoreMajorVersion_Proxy( 
  1105.     ICatalogCollection __RPC_FAR * This,
  1106.     /* [retval][out] */ long __RPC_FAR *retval);
  1107.  
  1108.  
  1109. void __RPC_STUB ICatalogCollection_get_DataStoreMajorVersion_Stub(
  1110.     IRpcStubBuffer *This,
  1111.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1112.     PRPC_MESSAGE _pRpcMessage,
  1113.     DWORD *_pdwStubPhase);
  1114.  
  1115.  
  1116. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_get_DataStoreMinorVersion_Proxy( 
  1117.     ICatalogCollection __RPC_FAR * This,
  1118.     /* [retval][out] */ long __RPC_FAR *retval);
  1119.  
  1120.  
  1121. void __RPC_STUB ICatalogCollection_get_DataStoreMinorVersion_Stub(
  1122.     IRpcStubBuffer *This,
  1123.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1124.     PRPC_MESSAGE _pRpcMessage,
  1125.     DWORD *_pdwStubPhase);
  1126.  
  1127.  
  1128. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_PopulateByKey_Proxy( 
  1129.     ICatalogCollection __RPC_FAR * This,
  1130.     /* [in] */ SAFEARRAY __RPC_FAR * aKeys);
  1131.  
  1132.  
  1133. void __RPC_STUB ICatalogCollection_PopulateByKey_Stub(
  1134.     IRpcStubBuffer *This,
  1135.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1136.     PRPC_MESSAGE _pRpcMessage,
  1137.     DWORD *_pdwStubPhase);
  1138.  
  1139.  
  1140. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ICatalogCollection_PopulateByQuery_Proxy( 
  1141.     ICatalogCollection __RPC_FAR * This,
  1142.     /* [in] */ BSTR bstrQueryString,
  1143.     /* [in] */ long lQueryType);
  1144.  
  1145.  
  1146. void __RPC_STUB ICatalogCollection_PopulateByQuery_Stub(
  1147.     IRpcStubBuffer *This,
  1148.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1149.     PRPC_MESSAGE _pRpcMessage,
  1150.     DWORD *_pdwStubPhase);
  1151.  
  1152.  
  1153.  
  1154. #endif     /* __ICatalogCollection_INTERFACE_DEFINED__ */
  1155.  
  1156.  
  1157. #ifndef __IComponentUtil_INTERFACE_DEFINED__
  1158. #define __IComponentUtil_INTERFACE_DEFINED__
  1159.  
  1160. /****************************************
  1161.  * Generated header for interface: IComponentUtil
  1162.  * at Thu Sep 11 16:03:04 1997
  1163.  * using MIDL 3.01.75
  1164.  ****************************************/
  1165. /* [unique][helpstring][dual][uuid][object] */ 
  1166.  
  1167.  
  1168.  
  1169. EXTERN_C const IID IID_IComponentUtil;
  1170.  
  1171. #if defined(__cplusplus) && !defined(CINTERFACE)
  1172.     
  1173.     interface DECLSPEC_UUID("6eb22873-8a19-11d0-81b6-00a0c9231c29")
  1174.     IComponentUtil : public IDispatch
  1175.     {
  1176.     public:
  1177.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InstallComponent( 
  1178.             /* [in] */ BSTR bstrDLLFile,
  1179.             /* [in] */ BSTR bstrTypelibFile,
  1180.             /* [in] */ BSTR bstrProxyStubDLLFile) = 0;
  1181.         
  1182.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImportComponent( 
  1183.             /* [in] */ BSTR bstrCLSID) = 0;
  1184.         
  1185.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImportComponentByName( 
  1186.             /* [in] */ BSTR bstrProgID) = 0;
  1187.         
  1188.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCLSIDs( 
  1189.             /* [in] */ BSTR bstrDLLFile,
  1190.             /* [in] */ BSTR bstrTypelibFile,
  1191.             /* [out] */ SAFEARRAY __RPC_FAR * __RPC_FAR *aCLSIDs) = 0;
  1192.         
  1193.     };
  1194.     
  1195. #else     /* C style interface */
  1196.  
  1197.     typedef struct IComponentUtilVtbl
  1198.     {
  1199.         BEGIN_INTERFACE
  1200.         
  1201.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1202.             IComponentUtil __RPC_FAR * This,
  1203.             /* [in] */ REFIID riid,
  1204.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1205.         
  1206.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1207.             IComponentUtil __RPC_FAR * This);
  1208.         
  1209.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1210.             IComponentUtil __RPC_FAR * This);
  1211.         
  1212.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1213.             IComponentUtil __RPC_FAR * This,
  1214.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1215.         
  1216.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1217.             IComponentUtil __RPC_FAR * This,
  1218.             /* [in] */ UINT iTInfo,
  1219.             /* [in] */ LCID lcid,
  1220.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  1221.         
  1222.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1223.             IComponentUtil __RPC_FAR * This,
  1224.             /* [in] */ REFIID riid,
  1225.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1226.             /* [in] */ UINT cNames,
  1227.             /* [in] */ LCID lcid,
  1228.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  1229.         
  1230.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1231.             IComponentUtil __RPC_FAR * This,
  1232.             /* [in] */ DISPID dispIdMember,
  1233.             /* [in] */ REFIID riid,
  1234.             /* [in] */ LCID lcid,
  1235.             /* [in] */ WORD wFlags,
  1236.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  1237.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  1238.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  1239.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1240.         
  1241.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InstallComponent )( 
  1242.             IComponentUtil __RPC_FAR * This,
  1243.             /* [in] */ BSTR bstrDLLFile,
  1244.             /* [in] */ BSTR bstrTypelibFile,
  1245.             /* [in] */ BSTR bstrProxyStubDLLFile);
  1246.         
  1247.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ImportComponent )( 
  1248.             IComponentUtil __RPC_FAR * This,
  1249.             /* [in] */ BSTR bstrCLSID);
  1250.         
  1251.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ImportComponentByName )( 
  1252.             IComponentUtil __RPC_FAR * This,
  1253.             /* [in] */ BSTR bstrProgID);
  1254.         
  1255.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCLSIDs )( 
  1256.             IComponentUtil __RPC_FAR * This,
  1257.             /* [in] */ BSTR bstrDLLFile,
  1258.             /* [in] */ BSTR bstrTypelibFile,
  1259.             /* [out] */ SAFEARRAY __RPC_FAR * __RPC_FAR *aCLSIDs);
  1260.         
  1261.         END_INTERFACE
  1262.     } IComponentUtilVtbl;
  1263.  
  1264.     interface IComponentUtil
  1265.     {
  1266.         CONST_VTBL struct IComponentUtilVtbl __RPC_FAR *lpVtbl;
  1267.     };
  1268.  
  1269.     
  1270.  
  1271. #ifdef COBJMACROS
  1272.  
  1273.  
  1274. #define IComponentUtil_QueryInterface(This,riid,ppvObject)    \
  1275.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1276.  
  1277. #define IComponentUtil_AddRef(This)    \
  1278.     (This)->lpVtbl -> AddRef(This)
  1279.  
  1280. #define IComponentUtil_Release(This)    \
  1281.     (This)->lpVtbl -> Release(This)
  1282.  
  1283.  
  1284. #define IComponentUtil_GetTypeInfoCount(This,pctinfo)    \
  1285.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1286.  
  1287. #define IComponentUtil_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  1288.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1289.  
  1290. #define IComponentUtil_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  1291.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1292.  
  1293. #define IComponentUtil_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  1294.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1295.  
  1296.  
  1297. #define IComponentUtil_InstallComponent(This,bstrDLLFile,bstrTypelibFile,bstrProxyStubDLLFile)    \
  1298.     (This)->lpVtbl -> InstallComponent(This,bstrDLLFile,bstrTypelibFile,bstrProxyStubDLLFile)
  1299.  
  1300. #define IComponentUtil_ImportComponent(This,bstrCLSID)    \
  1301.     (This)->lpVtbl -> ImportComponent(This,bstrCLSID)
  1302.  
  1303. #define IComponentUtil_ImportComponentByName(This,bstrProgID)    \
  1304.     (This)->lpVtbl -> ImportComponentByName(This,bstrProgID)
  1305.  
  1306. #define IComponentUtil_GetCLSIDs(This,bstrDLLFile,bstrTypelibFile,aCLSIDs)    \
  1307.     (This)->lpVtbl -> GetCLSIDs(This,bstrDLLFile,bstrTypelibFile,aCLSIDs)
  1308.  
  1309. #endif /* COBJMACROS */
  1310.  
  1311.  
  1312. #endif     /* C style interface */
  1313.  
  1314.  
  1315.  
  1316. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IComponentUtil_InstallComponent_Proxy( 
  1317.     IComponentUtil __RPC_FAR * This,
  1318.     /* [in] */ BSTR bstrDLLFile,
  1319.     /* [in] */ BSTR bstrTypelibFile,
  1320.     /* [in] */ BSTR bstrProxyStubDLLFile);
  1321.  
  1322.  
  1323. void __RPC_STUB IComponentUtil_InstallComponent_Stub(
  1324.     IRpcStubBuffer *This,
  1325.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1326.     PRPC_MESSAGE _pRpcMessage,
  1327.     DWORD *_pdwStubPhase);
  1328.  
  1329.  
  1330. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IComponentUtil_ImportComponent_Proxy( 
  1331.     IComponentUtil __RPC_FAR * This,
  1332.     /* [in] */ BSTR bstrCLSID);
  1333.  
  1334.  
  1335. void __RPC_STUB IComponentUtil_ImportComponent_Stub(
  1336.     IRpcStubBuffer *This,
  1337.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1338.     PRPC_MESSAGE _pRpcMessage,
  1339.     DWORD *_pdwStubPhase);
  1340.  
  1341.  
  1342. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IComponentUtil_ImportComponentByName_Proxy( 
  1343.     IComponentUtil __RPC_FAR * This,
  1344.     /* [in] */ BSTR bstrProgID);
  1345.  
  1346.  
  1347. void __RPC_STUB IComponentUtil_ImportComponentByName_Stub(
  1348.     IRpcStubBuffer *This,
  1349.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1350.     PRPC_MESSAGE _pRpcMessage,
  1351.     DWORD *_pdwStubPhase);
  1352.  
  1353.  
  1354. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IComponentUtil_GetCLSIDs_Proxy( 
  1355.     IComponentUtil __RPC_FAR * This,
  1356.     /* [in] */ BSTR bstrDLLFile,
  1357.     /* [in] */ BSTR bstrTypelibFile,
  1358.     /* [out] */ SAFEARRAY __RPC_FAR * __RPC_FAR *aCLSIDs);
  1359.  
  1360.  
  1361. void __RPC_STUB IComponentUtil_GetCLSIDs_Stub(
  1362.     IRpcStubBuffer *This,
  1363.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1364.     PRPC_MESSAGE _pRpcMessage,
  1365.     DWORD *_pdwStubPhase);
  1366.  
  1367.  
  1368.  
  1369. #endif     /* __IComponentUtil_INTERFACE_DEFINED__ */
  1370.  
  1371.  
  1372. #ifndef __IPackageUtil_INTERFACE_DEFINED__
  1373. #define __IPackageUtil_INTERFACE_DEFINED__
  1374.  
  1375. /****************************************
  1376.  * Generated header for interface: IPackageUtil
  1377.  * at Thu Sep 11 16:03:04 1997
  1378.  * using MIDL 3.01.75
  1379.  ****************************************/
  1380. /* [unique][helpstring][dual][uuid][object] */ 
  1381.  
  1382.  
  1383.  
  1384. EXTERN_C const IID IID_IPackageUtil;
  1385.  
  1386. #if defined(__cplusplus) && !defined(CINTERFACE)
  1387.     
  1388.     interface DECLSPEC_UUID("6eb22874-8a19-11d0-81b6-00a0c9231c29")
  1389.     IPackageUtil : public IDispatch
  1390.     {
  1391.     public:
  1392.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InstallPackage( 
  1393.             /* [in] */ BSTR bstrPackageFile,
  1394.             /* [in] */ BSTR bstrInstallPath,
  1395.             /* [in] */ long lOptions) = 0;
  1396.         
  1397.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ExportPackage( 
  1398.             /* [in] */ BSTR bstrPackageID,
  1399.             /* [in] */ BSTR bstrPackageFile,
  1400.             /* [in] */ long lOptions) = 0;
  1401.         
  1402.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ShutdownPackage( 
  1403.             /* [in] */ BSTR bstrPackageID) = 0;
  1404.         
  1405.     };
  1406.     
  1407. #else     /* C style interface */
  1408.  
  1409.     typedef struct IPackageUtilVtbl
  1410.     {
  1411.         BEGIN_INTERFACE
  1412.         
  1413.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1414.             IPackageUtil __RPC_FAR * This,
  1415.             /* [in] */ REFIID riid,
  1416.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1417.         
  1418.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1419.             IPackageUtil __RPC_FAR * This);
  1420.         
  1421.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1422.             IPackageUtil __RPC_FAR * This);
  1423.         
  1424.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1425.             IPackageUtil __RPC_FAR * This,
  1426.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1427.         
  1428.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1429.             IPackageUtil __RPC_FAR * This,
  1430.             /* [in] */ UINT iTInfo,
  1431.             /* [in] */ LCID lcid,
  1432.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  1433.         
  1434.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1435.             IPackageUtil __RPC_FAR * This,
  1436.             /* [in] */ REFIID riid,
  1437.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1438.             /* [in] */ UINT cNames,
  1439.             /* [in] */ LCID lcid,
  1440.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  1441.         
  1442.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1443.             IPackageUtil __RPC_FAR * This,
  1444.             /* [in] */ DISPID dispIdMember,
  1445.             /* [in] */ REFIID riid,
  1446.             /* [in] */ LCID lcid,
  1447.             /* [in] */ WORD wFlags,
  1448.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  1449.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  1450.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  1451.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1452.         
  1453.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InstallPackage )( 
  1454.             IPackageUtil __RPC_FAR * This,
  1455.             /* [in] */ BSTR bstrPackageFile,
  1456.             /* [in] */ BSTR bstrInstallPath,
  1457.             /* [in] */ long lOptions);
  1458.         
  1459.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ExportPackage )( 
  1460.             IPackageUtil __RPC_FAR * This,
  1461.             /* [in] */ BSTR bstrPackageID,
  1462.             /* [in] */ BSTR bstrPackageFile,
  1463.             /* [in] */ long lOptions);
  1464.         
  1465.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ShutdownPackage )( 
  1466.             IPackageUtil __RPC_FAR * This,
  1467.             /* [in] */ BSTR bstrPackageID);
  1468.         
  1469.         END_INTERFACE
  1470.     } IPackageUtilVtbl;
  1471.  
  1472.     interface IPackageUtil
  1473.     {
  1474.         CONST_VTBL struct IPackageUtilVtbl __RPC_FAR *lpVtbl;
  1475.     };
  1476.  
  1477.     
  1478.  
  1479. #ifdef COBJMACROS
  1480.  
  1481.  
  1482. #define IPackageUtil_QueryInterface(This,riid,ppvObject)    \
  1483.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1484.  
  1485. #define IPackageUtil_AddRef(This)    \
  1486.     (This)->lpVtbl -> AddRef(This)
  1487.  
  1488. #define IPackageUtil_Release(This)    \
  1489.     (This)->lpVtbl -> Release(This)
  1490.  
  1491.  
  1492. #define IPackageUtil_GetTypeInfoCount(This,pctinfo)    \
  1493.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1494.  
  1495. #define IPackageUtil_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  1496.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1497.  
  1498. #define IPackageUtil_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  1499.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1500.  
  1501. #define IPackageUtil_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  1502.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1503.  
  1504.  
  1505. #define IPackageUtil_InstallPackage(This,bstrPackageFile,bstrInstallPath,lOptions)    \
  1506.     (This)->lpVtbl -> InstallPackage(This,bstrPackageFile,bstrInstallPath,lOptions)
  1507.  
  1508. #define IPackageUtil_ExportPackage(This,bstrPackageID,bstrPackageFile,lOptions)    \
  1509.     (This)->lpVtbl -> ExportPackage(This,bstrPackageID,bstrPackageFile,lOptions)
  1510.  
  1511. #define IPackageUtil_ShutdownPackage(This,bstrPackageID)    \
  1512.     (This)->lpVtbl -> ShutdownPackage(This,bstrPackageID)
  1513.  
  1514. #endif /* COBJMACROS */
  1515.  
  1516.  
  1517. #endif     /* C style interface */
  1518.  
  1519.  
  1520.  
  1521. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IPackageUtil_InstallPackage_Proxy( 
  1522.     IPackageUtil __RPC_FAR * This,
  1523.     /* [in] */ BSTR bstrPackageFile,
  1524.     /* [in] */ BSTR bstrInstallPath,
  1525.     /* [in] */ long lOptions);
  1526.  
  1527.  
  1528. void __RPC_STUB IPackageUtil_InstallPackage_Stub(
  1529.     IRpcStubBuffer *This,
  1530.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1531.     PRPC_MESSAGE _pRpcMessage,
  1532.     DWORD *_pdwStubPhase);
  1533.  
  1534.  
  1535. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IPackageUtil_ExportPackage_Proxy( 
  1536.     IPackageUtil __RPC_FAR * This,
  1537.     /* [in] */ BSTR bstrPackageID,
  1538.     /* [in] */ BSTR bstrPackageFile,
  1539.     /* [in] */ long lOptions);
  1540.  
  1541.  
  1542. void __RPC_STUB IPackageUtil_ExportPackage_Stub(
  1543.     IRpcStubBuffer *This,
  1544.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1545.     PRPC_MESSAGE _pRpcMessage,
  1546.     DWORD *_pdwStubPhase);
  1547.  
  1548.  
  1549. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IPackageUtil_ShutdownPackage_Proxy( 
  1550.     IPackageUtil __RPC_FAR * This,
  1551.     /* [in] */ BSTR bstrPackageID);
  1552.  
  1553.  
  1554. void __RPC_STUB IPackageUtil_ShutdownPackage_Stub(
  1555.     IRpcStubBuffer *This,
  1556.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1557.     PRPC_MESSAGE _pRpcMessage,
  1558.     DWORD *_pdwStubPhase);
  1559.  
  1560.  
  1561.  
  1562. #endif     /* __IPackageUtil_INTERFACE_DEFINED__ */
  1563.  
  1564.  
  1565. #ifndef __IRemoteComponentUtil_INTERFACE_DEFINED__
  1566. #define __IRemoteComponentUtil_INTERFACE_DEFINED__
  1567.  
  1568. /****************************************
  1569.  * Generated header for interface: IRemoteComponentUtil
  1570.  * at Thu Sep 11 16:03:04 1997
  1571.  * using MIDL 3.01.75
  1572.  ****************************************/
  1573. /* [unique][helpstring][dual][uuid][object] */ 
  1574.  
  1575.  
  1576.  
  1577. EXTERN_C const IID IID_IRemoteComponentUtil;
  1578.  
  1579. #if defined(__cplusplus) && !defined(CINTERFACE)
  1580.     
  1581.     interface DECLSPEC_UUID("6eb22875-8a19-11d0-81b6-00a0c9231c29")
  1582.     IRemoteComponentUtil : public IDispatch
  1583.     {
  1584.     public:
  1585.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InstallRemoteComponent( 
  1586.             /* [in] */ BSTR bstrServer,
  1587.             /* [in] */ BSTR bstrPackageID,
  1588.             /* [in] */ BSTR bstrCLSID) = 0;
  1589.         
  1590.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InstallRemoteComponentByName( 
  1591.             /* [in] */ BSTR bstrServer,
  1592.             /* [in] */ BSTR bstrPackageName,
  1593.             /* [in] */ BSTR bstrProgID) = 0;
  1594.         
  1595.     };
  1596.     
  1597. #else     /* C style interface */
  1598.  
  1599.     typedef struct IRemoteComponentUtilVtbl
  1600.     {
  1601.         BEGIN_INTERFACE
  1602.         
  1603.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1604.             IRemoteComponentUtil __RPC_FAR * This,
  1605.             /* [in] */ REFIID riid,
  1606.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1607.         
  1608.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1609.             IRemoteComponentUtil __RPC_FAR * This);
  1610.         
  1611.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1612.             IRemoteComponentUtil __RPC_FAR * This);
  1613.         
  1614.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1615.             IRemoteComponentUtil __RPC_FAR * This,
  1616.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1617.         
  1618.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1619.             IRemoteComponentUtil __RPC_FAR * This,
  1620.             /* [in] */ UINT iTInfo,
  1621.             /* [in] */ LCID lcid,
  1622.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  1623.         
  1624.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1625.             IRemoteComponentUtil __RPC_FAR * This,
  1626.             /* [in] */ REFIID riid,
  1627.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1628.             /* [in] */ UINT cNames,
  1629.             /* [in] */ LCID lcid,
  1630.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  1631.         
  1632.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1633.             IRemoteComponentUtil __RPC_FAR * This,
  1634.             /* [in] */ DISPID dispIdMember,
  1635.             /* [in] */ REFIID riid,
  1636.             /* [in] */ LCID lcid,
  1637.             /* [in] */ WORD wFlags,
  1638.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  1639.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  1640.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  1641.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1642.         
  1643.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InstallRemoteComponent )( 
  1644.             IRemoteComponentUtil __RPC_FAR * This,
  1645.             /* [in] */ BSTR bstrServer,
  1646.             /* [in] */ BSTR bstrPackageID,
  1647.             /* [in] */ BSTR bstrCLSID);
  1648.         
  1649.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *InstallRemoteComponentByName )( 
  1650.             IRemoteComponentUtil __RPC_FAR * This,
  1651.             /* [in] */ BSTR bstrServer,
  1652.             /* [in] */ BSTR bstrPackageName,
  1653.             /* [in] */ BSTR bstrProgID);
  1654.         
  1655.         END_INTERFACE
  1656.     } IRemoteComponentUtilVtbl;
  1657.  
  1658.     interface IRemoteComponentUtil
  1659.     {
  1660.         CONST_VTBL struct IRemoteComponentUtilVtbl __RPC_FAR *lpVtbl;
  1661.     };
  1662.  
  1663.     
  1664.  
  1665. #ifdef COBJMACROS
  1666.  
  1667.  
  1668. #define IRemoteComponentUtil_QueryInterface(This,riid,ppvObject)    \
  1669.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1670.  
  1671. #define IRemoteComponentUtil_AddRef(This)    \
  1672.     (This)->lpVtbl -> AddRef(This)
  1673.  
  1674. #define IRemoteComponentUtil_Release(This)    \
  1675.     (This)->lpVtbl -> Release(This)
  1676.  
  1677.  
  1678. #define IRemoteComponentUtil_GetTypeInfoCount(This,pctinfo)    \
  1679.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1680.  
  1681. #define IRemoteComponentUtil_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  1682.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1683.  
  1684. #define IRemoteComponentUtil_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  1685.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1686.  
  1687. #define IRemoteComponentUtil_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  1688.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1689.  
  1690.  
  1691. #define IRemoteComponentUtil_InstallRemoteComponent(This,bstrServer,bstrPackageID,bstrCLSID)    \
  1692.     (This)->lpVtbl -> InstallRemoteComponent(This,bstrServer,bstrPackageID,bstrCLSID)
  1693.  
  1694. #define IRemoteComponentUtil_InstallRemoteComponentByName(This,bstrServer,bstrPackageName,bstrProgID)    \
  1695.     (This)->lpVtbl -> InstallRemoteComponentByName(This,bstrServer,bstrPackageName,bstrProgID)
  1696.  
  1697. #endif /* COBJMACROS */
  1698.  
  1699.  
  1700. #endif     /* C style interface */
  1701.  
  1702.  
  1703.  
  1704. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRemoteComponentUtil_InstallRemoteComponent_Proxy( 
  1705.     IRemoteComponentUtil __RPC_FAR * This,
  1706.     /* [in] */ BSTR bstrServer,
  1707.     /* [in] */ BSTR bstrPackageID,
  1708.     /* [in] */ BSTR bstrCLSID);
  1709.  
  1710.  
  1711. void __RPC_STUB IRemoteComponentUtil_InstallRemoteComponent_Stub(
  1712.     IRpcStubBuffer *This,
  1713.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1714.     PRPC_MESSAGE _pRpcMessage,
  1715.     DWORD *_pdwStubPhase);
  1716.  
  1717.  
  1718. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRemoteComponentUtil_InstallRemoteComponentByName_Proxy( 
  1719.     IRemoteComponentUtil __RPC_FAR * This,
  1720.     /* [in] */ BSTR bstrServer,
  1721.     /* [in] */ BSTR bstrPackageName,
  1722.     /* [in] */ BSTR bstrProgID);
  1723.  
  1724.  
  1725. void __RPC_STUB IRemoteComponentUtil_InstallRemoteComponentByName_Stub(
  1726.     IRpcStubBuffer *This,
  1727.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1728.     PRPC_MESSAGE _pRpcMessage,
  1729.     DWORD *_pdwStubPhase);
  1730.  
  1731.  
  1732.  
  1733. #endif     /* __IRemoteComponentUtil_INTERFACE_DEFINED__ */
  1734.  
  1735.  
  1736. #ifndef __IRoleAssociationUtil_INTERFACE_DEFINED__
  1737. #define __IRoleAssociationUtil_INTERFACE_DEFINED__
  1738.  
  1739. /****************************************
  1740.  * Generated header for interface: IRoleAssociationUtil
  1741.  * at Thu Sep 11 16:03:04 1997
  1742.  * using MIDL 3.01.75
  1743.  ****************************************/
  1744. /* [unique][helpstring][dual][uuid][object] */ 
  1745.  
  1746.  
  1747.  
  1748. EXTERN_C const IID IID_IRoleAssociationUtil;
  1749.  
  1750. #if defined(__cplusplus) && !defined(CINTERFACE)
  1751.     
  1752.     interface DECLSPEC_UUID("6eb22876-8a19-11d0-81b6-00a0c9231c29")
  1753.     IRoleAssociationUtil : public IDispatch
  1754.     {
  1755.     public:
  1756.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AssociateRole( 
  1757.             /* [in] */ BSTR bstrRoleID) = 0;
  1758.         
  1759.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE AssociateRoleByName( 
  1760.             /* [in] */ BSTR bstrRoleName) = 0;
  1761.         
  1762.     };
  1763.     
  1764. #else     /* C style interface */
  1765.  
  1766.     typedef struct IRoleAssociationUtilVtbl
  1767.     {
  1768.         BEGIN_INTERFACE
  1769.         
  1770.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )( 
  1771.             IRoleAssociationUtil __RPC_FAR * This,
  1772.             /* [in] */ REFIID riid,
  1773.             /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1774.         
  1775.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )( 
  1776.             IRoleAssociationUtil __RPC_FAR * This);
  1777.         
  1778.         ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )( 
  1779.             IRoleAssociationUtil __RPC_FAR * This);
  1780.         
  1781.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfoCount )( 
  1782.             IRoleAssociationUtil __RPC_FAR * This,
  1783.             /* [out] */ UINT __RPC_FAR *pctinfo);
  1784.         
  1785.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetTypeInfo )( 
  1786.             IRoleAssociationUtil __RPC_FAR * This,
  1787.             /* [in] */ UINT iTInfo,
  1788.             /* [in] */ LCID lcid,
  1789.             /* [out] */ ITypeInfo __RPC_FAR *__RPC_FAR *ppTInfo);
  1790.         
  1791.         HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetIDsOfNames )( 
  1792.             IRoleAssociationUtil __RPC_FAR * This,
  1793.             /* [in] */ REFIID riid,
  1794.             /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  1795.             /* [in] */ UINT cNames,
  1796.             /* [in] */ LCID lcid,
  1797.             /* [size_is][out] */ DISPID __RPC_FAR *rgDispId);
  1798.         
  1799.         /* [local] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Invoke )( 
  1800.             IRoleAssociationUtil __RPC_FAR * This,
  1801.             /* [in] */ DISPID dispIdMember,
  1802.             /* [in] */ REFIID riid,
  1803.             /* [in] */ LCID lcid,
  1804.             /* [in] */ WORD wFlags,
  1805.             /* [out][in] */ DISPPARAMS __RPC_FAR *pDispParams,
  1806.             /* [out] */ VARIANT __RPC_FAR *pVarResult,
  1807.             /* [out] */ EXCEPINFO __RPC_FAR *pExcepInfo,
  1808.             /* [out] */ UINT __RPC_FAR *puArgErr);
  1809.         
  1810.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AssociateRole )( 
  1811.             IRoleAssociationUtil __RPC_FAR * This,
  1812.             /* [in] */ BSTR bstrRoleID);
  1813.         
  1814.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE __RPC_FAR *AssociateRoleByName )( 
  1815.             IRoleAssociationUtil __RPC_FAR * This,
  1816.             /* [in] */ BSTR bstrRoleName);
  1817.         
  1818.         END_INTERFACE
  1819.     } IRoleAssociationUtilVtbl;
  1820.  
  1821.     interface IRoleAssociationUtil
  1822.     {
  1823.         CONST_VTBL struct IRoleAssociationUtilVtbl __RPC_FAR *lpVtbl;
  1824.     };
  1825.  
  1826.     
  1827.  
  1828. #ifdef COBJMACROS
  1829.  
  1830.  
  1831. #define IRoleAssociationUtil_QueryInterface(This,riid,ppvObject)    \
  1832.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1833.  
  1834. #define IRoleAssociationUtil_AddRef(This)    \
  1835.     (This)->lpVtbl -> AddRef(This)
  1836.  
  1837. #define IRoleAssociationUtil_Release(This)    \
  1838.     (This)->lpVtbl -> Release(This)
  1839.  
  1840.  
  1841. #define IRoleAssociationUtil_GetTypeInfoCount(This,pctinfo)    \
  1842.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1843.  
  1844. #define IRoleAssociationUtil_GetTypeInfo(This,iTInfo,lcid,ppTInfo)    \
  1845.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1846.  
  1847. #define IRoleAssociationUtil_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)    \
  1848.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1849.  
  1850. #define IRoleAssociationUtil_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)    \
  1851.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1852.  
  1853.  
  1854. #define IRoleAssociationUtil_AssociateRole(This,bstrRoleID)    \
  1855.     (This)->lpVtbl -> AssociateRole(This,bstrRoleID)
  1856.  
  1857. #define IRoleAssociationUtil_AssociateRoleByName(This,bstrRoleName)    \
  1858.     (This)->lpVtbl -> AssociateRoleByName(This,bstrRoleName)
  1859.  
  1860. #endif /* COBJMACROS */
  1861.  
  1862.  
  1863. #endif     /* C style interface */
  1864.  
  1865.  
  1866.  
  1867. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRoleAssociationUtil_AssociateRole_Proxy( 
  1868.     IRoleAssociationUtil __RPC_FAR * This,
  1869.     /* [in] */ BSTR bstrRoleID);
  1870.  
  1871.  
  1872. void __RPC_STUB IRoleAssociationUtil_AssociateRole_Stub(
  1873.     IRpcStubBuffer *This,
  1874.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1875.     PRPC_MESSAGE _pRpcMessage,
  1876.     DWORD *_pdwStubPhase);
  1877.  
  1878.  
  1879. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRoleAssociationUtil_AssociateRoleByName_Proxy( 
  1880.     IRoleAssociationUtil __RPC_FAR * This,
  1881.     /* [in] */ BSTR bstrRoleName);
  1882.  
  1883.  
  1884. void __RPC_STUB IRoleAssociationUtil_AssociateRoleByName_Stub(
  1885.     IRpcStubBuffer *This,
  1886.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1887.     PRPC_MESSAGE _pRpcMessage,
  1888.     DWORD *_pdwStubPhase);
  1889.  
  1890.  
  1891.  
  1892. #endif     /* __IRoleAssociationUtil_INTERFACE_DEFINED__ */
  1893.  
  1894.  
  1895.  
  1896. #ifndef __MTSAdmin_LIBRARY_DEFINED__
  1897. #define __MTSAdmin_LIBRARY_DEFINED__
  1898.  
  1899. /****************************************
  1900.  * Generated header for library: MTSAdmin
  1901.  * at Thu Sep 11 16:03:04 1997
  1902.  * using MIDL 3.01.75
  1903.  ****************************************/
  1904. /* [helpstring][version][uuid] */ 
  1905.  
  1906.  
  1907. typedef /* [public][helpstring] */ 
  1908. enum __MIDL___MIDL_itf_mtxadmin_0107_0001
  1909.     {    mtsInstallUsers    = 1
  1910.     }    MTSPackageInstallOptions;
  1911.  
  1912. typedef /* [public][helpstring] */ 
  1913. enum __MIDL___MIDL_itf_mtxadmin_0107_0002
  1914.     {    mtsExportUsers    = 1
  1915.     }    MTSPackageExportOptions;
  1916.  
  1917. typedef /* [public][helpstring] */ 
  1918. enum __MIDL___MIDL_itf_mtxadmin_0107_0003
  1919.     {    mtsErrObjectErrors    = 0x80110401,
  1920.     mtsErrObjectInvalid    = 0x80110402,
  1921.     mtsErrKeyMissing    = 0x80110403,
  1922.     mtsErrAlreadyInstalled    = 0x80110404,
  1923.     mtsErrDownloadFailed    = 0x80110405,
  1924.     mtsErrPDFWriteFail    = 0x80110407,
  1925.     mtsErrPDFReadFail    = 0x80110408,
  1926.     mtsErrPDFVersion    = 0x80110409,
  1927.     mtsErrCoReqCompInstalled    = 0x80110410,
  1928.     mtsErrBadPath    = 0x8011040a,
  1929.     mtsErrPackageExists    = 0x8011040b,
  1930.     mtsErrRoleExists    = 0x8011040c,
  1931.     mtsErrCantCopyFile    = 0x8011040d,
  1932.     mtsErrNoTypeLib    = 0x8011040e,
  1933.     mtsErrNoUser    = 0x8011040f,
  1934.     mtsErrInvalidUserids    = 0x80110410,
  1935.     mtsErrNoRegistryCLSID    = 0x80110411,
  1936.     mtsErrBadRegistryProgID    = 0x80110412,
  1937.     mtsErrAuthenticationLevel    = 0x80110413,
  1938.     mtsErrUserPasswdNotValid    = 0x80110414,
  1939.     mtsErrNoRegistryRead    = 0x80110415,
  1940.     mtsErrNoRegistryWrite    = 0x80110416,
  1941.     mtsErrNoRegistryRepair    = 0x80110417,
  1942.     mtsErrCLSIDOrIIDMismatch    = 0x80110418,
  1943.     mtsErrRemoteInterface    = 0x80110419,
  1944.     mtsErrDllRegisterServer    = 0x8011041a,
  1945.     mtsErrNoServerShare    = 0x8011041b,
  1946.     mtsErrNoAccessToUNC    = 0x8011041c,
  1947.     mtsErrDllLoadFailed    = 0x8011041d,
  1948.     mtsErrBadRegistryLibID    = 0x8011041e,
  1949.     mtsErrPackDirNotFound    = 0x8011041f,
  1950.     mtsErrTreatAs    = 0x80110420,
  1951.     mtsErrBadForward    = 0x80110421,
  1952.     mtsErrBadIID    = 0x80110422,
  1953.     mtsErrRegistrarFailed    = 0x80110423,
  1954.     mtsErrCompFileDoesNotExist    = 0x80110424,
  1955.     mtsErrCompFileLoadDLLFail    = 0x80110425,
  1956.     mtsErrCompFileGetClassObj    = 0x80110426,
  1957.     mtsErrCompFileClassNotAvail    = 0x80110427,
  1958.     mtsErrCompFileBadTLB    = 0x80110428,
  1959.     mtsErrCompFileNotInstallable    = 0x80110429,
  1960.     mtsErrNotChangeable    = 0x8011042a,
  1961.     mtsErrNotDeletable    = 0x8011042b,
  1962.     mtsErrSession    = 0x8011042c,
  1963.     mtsErrCompFileNoRegistrar    = 0x80110434
  1964.     }    MTSAdminErrorCodes;
  1965.  
  1966. #define E_MTS_OBJECTERRORS                 mtsErrObjectErrors                
  1967. #define E_MTS_OBJECTINVALID                mtsErrObjectInvalid                
  1968. #define E_MTS_KEYMISSING                mtsErrKeyMissing                
  1969. #define E_MTS_ALREADYINSTALLED            mtsErrAlreadyInstalled            
  1970. #define E_MTS_DOWNLOADFAILED            mtsErrDownloadFailed            
  1971. #define E_MTS_PDFWRITEFAIL                mtsErrPDFWriteFail                
  1972. #define E_MTS_PDFREADFAIL                mtsErrPDFReadFail                
  1973. #define E_MTS_PDFVERSION                mtsErrPDFVersion                
  1974. #define E_MTS_COREQCOMPINSTALLED        mtsErrCoReqCompInstalled        
  1975. #define E_MTS_BADPATH                    mtsErrBadPath                    
  1976. #define E_MTS_PACKAGEEXISTS                mtsErrPackageExists                
  1977. #define E_MTS_ROLEEXISTS                mtsErrRoleExists                
  1978. #define E_MTS_CANTCOPYFILE                mtsErrCantCopyFile                
  1979. #define E_MTS_NOTYPELIB                    mtsErrNoTypeLib                    
  1980. #define E_MTS_NOUSER                    mtsErrNoUser                    
  1981. #define E_MTS_INVALIDUSERIDS            mtsErrInvalidUserids            
  1982. #define E_MTS_NOREGISTRYCLSID            mtsErrNoRegistryCLSID            
  1983. #define E_MTS_BADREGISTRYPROGID            mtsErrBadRegistryProgID            
  1984. #define E_MTS_AUTHENTICATIONLEVEL        mtsErrAuthenticationLevel        
  1985. #define E_MTS_USERPASSWDNOTVALID        mtsErrUserPasswdNotValid        
  1986. #define E_MTS_NOREGISTRYREAD            mtsErrNoRegistryRead            
  1987. #define E_MTS_NOREGISTRYWRITE            mtsErrNoRegistryWrite            
  1988. #define E_MTS_NOREGISTRYREPAIR            mtsErrNoRegistryRepair            
  1989. #define E_MTS_CLSIDORIIDMISMATCH        mtsErrCLSIDOrIIDMismatch        
  1990. #define E_MTS_REMOTEINTERFACE            mtsErrRemoteInterface            
  1991. #define E_MTS_DLLREGISTERSERVER            mtsErrDllRegisterServer            
  1992. #define E_MTS_NOSERVERSHARE                mtsErrNoServerShare                
  1993. #define E_MTS_NOACCESSTOUNC                mtsErrNoAccessToUNC                
  1994. #define E_MTS_DLLLOADFAILED                mtsErrDllLoadFailed                
  1995. #define E_MTS_BADREGISTRYLIBID            mtsErrBadRegistryLibID            
  1996. #define E_MTS_PACKDIRNOTFOUND            mtsErrPackDirNotFound            
  1997. #define E_MTS_TREATAS                    mtsErrTreatAs                    
  1998. #define E_MTS_BADFORWARD                mtsErrBadForward                
  1999. #define E_MTS_BADIID                    mtsErrBadIID                    
  2000. #define E_MTS_REGISTRARFAILED            mtsErrRegistrarFailed            
  2001. #define E_MTS_COMPFILE_DOESNOTEXIST        mtsErrCompFileDoesNotExist        
  2002. #define E_MTS_COMPFILE_LOADDLLFAIL        mtsErrCompFileLoadDLLFail        
  2003. #define E_MTS_COMPFILE_GETCLASSOBJ        mtsErrCompFileGetClassObj        
  2004. #define E_MTS_COMPFILE_CLASSNOTAVAIL    mtsErrCompFileClassNotAvail        
  2005. #define E_MTS_COMPFILE_BADTLB            mtsErrCompFileBadTLB            
  2006. #define E_MTS_COMPFILE_NOTINSTALLABLE    mtsErrCompFileNotInstallable    
  2007. #define E_MTS_NOTCHANGEABLE                mtsErrNotChangeable                
  2008. #define E_MTS_NOTDELETEABLE                mtsErrNotDeleteable                
  2009. #define E_MTS_SESSION                    mtsErrSession                    
  2010. #define E_MTS_COMPFILE_NOREGISTRAR        mtsErrCompFileNoRegistrar        
  2011.  
  2012. EXTERN_C const IID LIBID_MTSAdmin;
  2013.  
  2014. #ifdef __cplusplus
  2015. EXTERN_C const CLSID CLSID_Catalog;
  2016.  
  2017. class DECLSPEC_UUID("6eb22881-8a19-11d0-81b6-00a0c9231c29")
  2018. Catalog;
  2019. #endif
  2020.  
  2021. #ifdef __cplusplus
  2022. EXTERN_C const CLSID CLSID_CatalogObject;
  2023.  
  2024. class DECLSPEC_UUID("6eb22882-8a19-11d0-81b6-00a0c9231c29")
  2025. CatalogObject;
  2026. #endif
  2027.  
  2028. #ifdef __cplusplus
  2029. EXTERN_C const CLSID CLSID_CatalogCollection;
  2030.  
  2031. class DECLSPEC_UUID("6eb22883-8a19-11d0-81b6-00a0c9231c29")
  2032. CatalogCollection;
  2033. #endif
  2034.  
  2035. #ifdef __cplusplus
  2036. EXTERN_C const CLSID CLSID_ComponentUtil;
  2037.  
  2038. class DECLSPEC_UUID("6eb22884-8a19-11d0-81b6-00a0c9231c29")
  2039. ComponentUtil;
  2040. #endif
  2041.  
  2042. #ifdef __cplusplus
  2043. EXTERN_C const CLSID CLSID_PackageUtil;
  2044.  
  2045. class DECLSPEC_UUID("6eb22885-8a19-11d0-81b6-00a0c9231c29")
  2046. PackageUtil;
  2047. #endif
  2048.  
  2049. #ifdef __cplusplus
  2050. EXTERN_C const CLSID CLSID_RemoteComponentUtil;
  2051.  
  2052. class DECLSPEC_UUID("6eb22886-8a19-11d0-81b6-00a0c9231c29")
  2053. RemoteComponentUtil;
  2054. #endif
  2055.  
  2056. #ifdef __cplusplus
  2057. EXTERN_C const CLSID CLSID_RoleAssociationUtil;
  2058.  
  2059. class DECLSPEC_UUID("6eb22887-8a19-11d0-81b6-00a0c9231c29")
  2060. RoleAssociationUtil;
  2061. #endif
  2062. #endif /* __MTSAdmin_LIBRARY_DEFINED__ */
  2063.  
  2064. /* Additional Prototypes for ALL interfaces */
  2065.  
  2066. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long __RPC_FAR *, unsigned long            , BSTR __RPC_FAR * ); 
  2067. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  2068. unsigned char __RPC_FAR * __RPC_USER  BSTR_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, BSTR __RPC_FAR * ); 
  2069. void                      __RPC_USER  BSTR_UserFree(     unsigned long __RPC_FAR *, BSTR __RPC_FAR * ); 
  2070.  
  2071. unsigned long             __RPC_USER  LPSAFEARRAY_UserSize(     unsigned long __RPC_FAR *, unsigned long            , LPSAFEARRAY __RPC_FAR * ); 
  2072. unsigned char __RPC_FAR * __RPC_USER  LPSAFEARRAY_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, LPSAFEARRAY __RPC_FAR * ); 
  2073. unsigned char __RPC_FAR * __RPC_USER  LPSAFEARRAY_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, LPSAFEARRAY __RPC_FAR * ); 
  2074. void                      __RPC_USER  LPSAFEARRAY_UserFree(     unsigned long __RPC_FAR *, LPSAFEARRAY __RPC_FAR * ); 
  2075.  
  2076. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long __RPC_FAR *, unsigned long            , VARIANT __RPC_FAR * ); 
  2077. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserMarshal(  unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  2078. unsigned char __RPC_FAR * __RPC_USER  VARIANT_UserUnmarshal(unsigned long __RPC_FAR *, unsigned char __RPC_FAR *, VARIANT __RPC_FAR * ); 
  2079. void                      __RPC_USER  VARIANT_UserFree(     unsigned long __RPC_FAR *, VARIANT __RPC_FAR * ); 
  2080.  
  2081. /* end of Additional Prototypes */
  2082.  
  2083. #ifdef __cplusplus
  2084. }
  2085. #endif
  2086.  
  2087. #endif
  2088.