mtxadmin.h 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #include "rpc.h"
  7. #include "rpcndr.h"
  8. #ifndef COM_NO_WINDOWS_H
  9. #include "windows.h"
  10. #include "ole2.h"
  11. #endif
  12. #ifndef __mtxadmin_h__
  13. #define __mtxadmin_h__
  14. #ifdef __cplusplus
  15. extern "C"{
  16. #endif
  17. #ifndef __ICatalog_FWD_DEFINED__
  18. #define __ICatalog_FWD_DEFINED__
  19. typedef struct ICatalog ICatalog;
  20. #endif
  21. #ifndef __ICatalogObject_FWD_DEFINED__
  22. #define __ICatalogObject_FWD_DEFINED__
  23. typedef struct ICatalogObject ICatalogObject;
  24. #endif
  25. #ifndef __ICatalogCollection_FWD_DEFINED__
  26. #define __ICatalogCollection_FWD_DEFINED__
  27. typedef struct ICatalogCollection ICatalogCollection;
  28. #endif
  29. #ifndef __IComponentUtil_FWD_DEFINED__
  30. #define __IComponentUtil_FWD_DEFINED__
  31. typedef struct IComponentUtil IComponentUtil;
  32. #endif
  33. #ifndef __IPackageUtil_FWD_DEFINED__
  34. #define __IPackageUtil_FWD_DEFINED__
  35. typedef struct IPackageUtil IPackageUtil;
  36. #endif
  37. #ifndef __IRemoteComponentUtil_FWD_DEFINED__
  38. #define __IRemoteComponentUtil_FWD_DEFINED__
  39. typedef struct IRemoteComponentUtil IRemoteComponentUtil;
  40. #endif
  41. #ifndef __IRoleAssociationUtil_FWD_DEFINED__
  42. #define __IRoleAssociationUtil_FWD_DEFINED__
  43. typedef struct IRoleAssociationUtil IRoleAssociationUtil;
  44. #endif
  45. #ifndef __Catalog_FWD_DEFINED__
  46. #define __Catalog_FWD_DEFINED__
  47. #ifdef __cplusplus
  48. typedef class Catalog Catalog;
  49. #else
  50. typedef struct Catalog Catalog;
  51. #endif
  52. #endif
  53. #ifndef __CatalogObject_FWD_DEFINED__
  54. #define __CatalogObject_FWD_DEFINED__
  55. #ifdef __cplusplus
  56. typedef class CatalogObject CatalogObject;
  57. #else
  58. typedef struct CatalogObject CatalogObject;
  59. #endif
  60. #endif
  61. #ifndef __CatalogCollection_FWD_DEFINED__
  62. #define __CatalogCollection_FWD_DEFINED__
  63. #ifdef __cplusplus
  64. typedef class CatalogCollection CatalogCollection;
  65. #else
  66. typedef struct CatalogCollection CatalogCollection;
  67. #endif
  68. #endif
  69. #ifndef __ComponentUtil_FWD_DEFINED__
  70. #define __ComponentUtil_FWD_DEFINED__
  71. #ifdef __cplusplus
  72. typedef class ComponentUtil ComponentUtil;
  73. #else
  74. typedef struct ComponentUtil ComponentUtil;
  75. #endif
  76. #endif
  77. #ifndef __PackageUtil_FWD_DEFINED__
  78. #define __PackageUtil_FWD_DEFINED__
  79. #ifdef __cplusplus
  80. typedef class PackageUtil PackageUtil;
  81. #else
  82. typedef struct PackageUtil PackageUtil;
  83. #endif
  84. #endif
  85. #ifndef __RemoteComponentUtil_FWD_DEFINED__
  86. #define __RemoteComponentUtil_FWD_DEFINED__
  87. #ifdef __cplusplus
  88. typedef class RemoteComponentUtil RemoteComponentUtil;
  89. #else
  90. typedef struct RemoteComponentUtil RemoteComponentUtil;
  91. #endif
  92. #endif
  93. #ifndef __RoleAssociationUtil_FWD_DEFINED__
  94. #define __RoleAssociationUtil_FWD_DEFINED__
  95. #ifdef __cplusplus
  96. typedef class RoleAssociationUtil RoleAssociationUtil;
  97. #else
  98. typedef struct RoleAssociationUtil RoleAssociationUtil;
  99. #endif
  100. #endif
  101. #include "unknwn.h"
  102. #include "oaidl.h"
  103. #ifndef __MIDL_user_allocate_free_DEFINED__
  104. #define __MIDL_user_allocate_free_DEFINED__
  105. void *__RPC_API MIDL_user_allocate(size_t);
  106. void __RPC_API MIDL_user_free(void *);
  107. #endif
  108. #include <objbase.h>
  109. extern RPC_IF_HANDLE __MIDL_itf_mtxadmin_0000_v0_0_c_ifspec;
  110. extern RPC_IF_HANDLE __MIDL_itf_mtxadmin_0000_v0_0_s_ifspec;
  111. #ifndef __ICatalog_INTERFACE_DEFINED__
  112. #define __ICatalog_INTERFACE_DEFINED__
  113. EXTERN_C const IID IID_ICatalog;
  114. #if defined(__cplusplus) && !defined(CINTERFACE)
  115. struct ICatalog : public IDispatch {
  116. public:
  117. virtual HRESULT WINAPI GetCollection(BSTR bstrCollName,IDispatch **ppCatalogCollection) = 0;
  118. virtual HRESULT WINAPI Connect(BSTR bstrConnectString,IDispatch **ppCatalogCollection) = 0;
  119. virtual HRESULT WINAPI get_MajorVersion(__LONG32 *retval) = 0;
  120. virtual HRESULT WINAPI get_MinorVersion(__LONG32 *retval) = 0;
  121. };
  122. #else
  123. typedef struct ICatalogVtbl {
  124. BEGIN_INTERFACE
  125. HRESULT (WINAPI *QueryInterface)(ICatalog *This,REFIID riid,void **ppvObject);
  126. ULONG (WINAPI *AddRef)(ICatalog *This);
  127. ULONG (WINAPI *Release)(ICatalog *This);
  128. HRESULT (WINAPI *GetTypeInfoCount)(ICatalog *This,UINT *pctinfo);
  129. HRESULT (WINAPI *GetTypeInfo)(ICatalog *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
  130. HRESULT (WINAPI *GetIDsOfNames)(ICatalog *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
  131. HRESULT (WINAPI *Invoke)(ICatalog *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
  132. HRESULT (WINAPI *GetCollection)(ICatalog *This,BSTR bstrCollName,IDispatch **ppCatalogCollection);
  133. HRESULT (WINAPI *Connect)(ICatalog *This,BSTR bstrConnectString,IDispatch **ppCatalogCollection);
  134. HRESULT (WINAPI *get_MajorVersion)(ICatalog *This,__LONG32 *retval);
  135. HRESULT (WINAPI *get_MinorVersion)(ICatalog *This,__LONG32 *retval);
  136. END_INTERFACE
  137. } ICatalogVtbl;
  138. struct ICatalog {
  139. CONST_VTBL struct ICatalogVtbl *lpVtbl;
  140. };
  141. #ifdef COBJMACROS
  142. #define ICatalog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  143. #define ICatalog_AddRef(This) (This)->lpVtbl->AddRef(This)
  144. #define ICatalog_Release(This) (This)->lpVtbl->Release(This)
  145. #define ICatalog_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  146. #define ICatalog_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  147. #define ICatalog_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  148. #define ICatalog_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  149. #define ICatalog_GetCollection(This,bstrCollName,ppCatalogCollection) (This)->lpVtbl->GetCollection(This,bstrCollName,ppCatalogCollection)
  150. #define ICatalog_Connect(This,bstrConnectString,ppCatalogCollection) (This)->lpVtbl->Connect(This,bstrConnectString,ppCatalogCollection)
  151. #define ICatalog_get_MajorVersion(This,retval) (This)->lpVtbl->get_MajorVersion(This,retval)
  152. #define ICatalog_get_MinorVersion(This,retval) (This)->lpVtbl->get_MinorVersion(This,retval)
  153. #endif
  154. #endif
  155. HRESULT WINAPI ICatalog_GetCollection_Proxy(ICatalog *This,BSTR bstrCollName,IDispatch **ppCatalogCollection);
  156. void __RPC_STUB ICatalog_GetCollection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  157. HRESULT WINAPI ICatalog_Connect_Proxy(ICatalog *This,BSTR bstrConnectString,IDispatch **ppCatalogCollection);
  158. void __RPC_STUB ICatalog_Connect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  159. HRESULT WINAPI ICatalog_get_MajorVersion_Proxy(ICatalog *This,__LONG32 *retval);
  160. void __RPC_STUB ICatalog_get_MajorVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  161. HRESULT WINAPI ICatalog_get_MinorVersion_Proxy(ICatalog *This,__LONG32 *retval);
  162. void __RPC_STUB ICatalog_get_MinorVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  163. #endif
  164. #ifndef __ICatalogObject_INTERFACE_DEFINED__
  165. #define __ICatalogObject_INTERFACE_DEFINED__
  166. EXTERN_C const IID IID_ICatalogObject;
  167. #if defined(__cplusplus) && !defined(CINTERFACE)
  168. struct ICatalogObject : public IDispatch {
  169. public:
  170. virtual HRESULT WINAPI get_Value(BSTR bstrPropName,VARIANT *retval) = 0;
  171. virtual HRESULT WINAPI put_Value(BSTR bstrPropName,VARIANT val) = 0;
  172. virtual HRESULT WINAPI get_Key(VARIANT *retval) = 0;
  173. virtual HRESULT WINAPI get_Name(VARIANT *retval) = 0;
  174. virtual HRESULT WINAPI IsPropertyReadOnly(BSTR bstrPropName,VARIANT_BOOL *retval) = 0;
  175. virtual HRESULT WINAPI get_Valid(VARIANT_BOOL *retval) = 0;
  176. virtual HRESULT WINAPI IsPropertyWriteOnly(BSTR bstrPropName,VARIANT_BOOL *retval) = 0;
  177. };
  178. #else
  179. typedef struct ICatalogObjectVtbl {
  180. BEGIN_INTERFACE
  181. HRESULT (WINAPI *QueryInterface)(ICatalogObject *This,REFIID riid,void **ppvObject);
  182. ULONG (WINAPI *AddRef)(ICatalogObject *This);
  183. ULONG (WINAPI *Release)(ICatalogObject *This);
  184. HRESULT (WINAPI *GetTypeInfoCount)(ICatalogObject *This,UINT *pctinfo);
  185. HRESULT (WINAPI *GetTypeInfo)(ICatalogObject *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
  186. HRESULT (WINAPI *GetIDsOfNames)(ICatalogObject *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
  187. HRESULT (WINAPI *Invoke)(ICatalogObject *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
  188. HRESULT (WINAPI *get_Value)(ICatalogObject *This,BSTR bstrPropName,VARIANT *retval);
  189. HRESULT (WINAPI *put_Value)(ICatalogObject *This,BSTR bstrPropName,VARIANT val);
  190. HRESULT (WINAPI *get_Key)(ICatalogObject *This,VARIANT *retval);
  191. HRESULT (WINAPI *get_Name)(ICatalogObject *This,VARIANT *retval);
  192. HRESULT (WINAPI *IsPropertyReadOnly)(ICatalogObject *This,BSTR bstrPropName,VARIANT_BOOL *retval);
  193. HRESULT (WINAPI *get_Valid)(ICatalogObject *This,VARIANT_BOOL *retval);
  194. HRESULT (WINAPI *IsPropertyWriteOnly)(ICatalogObject *This,BSTR bstrPropName,VARIANT_BOOL *retval);
  195. END_INTERFACE
  196. } ICatalogObjectVtbl;
  197. struct ICatalogObject {
  198. CONST_VTBL struct ICatalogObjectVtbl *lpVtbl;
  199. };
  200. #ifdef COBJMACROS
  201. #define ICatalogObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  202. #define ICatalogObject_AddRef(This) (This)->lpVtbl->AddRef(This)
  203. #define ICatalogObject_Release(This) (This)->lpVtbl->Release(This)
  204. #define ICatalogObject_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  205. #define ICatalogObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  206. #define ICatalogObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  207. #define ICatalogObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  208. #define ICatalogObject_get_Value(This,bstrPropName,retval) (This)->lpVtbl->get_Value(This,bstrPropName,retval)
  209. #define ICatalogObject_put_Value(This,bstrPropName,val) (This)->lpVtbl->put_Value(This,bstrPropName,val)
  210. #define ICatalogObject_get_Key(This,retval) (This)->lpVtbl->get_Key(This,retval)
  211. #define ICatalogObject_get_Name(This,retval) (This)->lpVtbl->get_Name(This,retval)
  212. #define ICatalogObject_IsPropertyReadOnly(This,bstrPropName,retval) (This)->lpVtbl->IsPropertyReadOnly(This,bstrPropName,retval)
  213. #define ICatalogObject_get_Valid(This,retval) (This)->lpVtbl->get_Valid(This,retval)
  214. #define ICatalogObject_IsPropertyWriteOnly(This,bstrPropName,retval) (This)->lpVtbl->IsPropertyWriteOnly(This,bstrPropName,retval)
  215. #endif
  216. #endif
  217. HRESULT WINAPI ICatalogObject_get_Value_Proxy(ICatalogObject *This,BSTR bstrPropName,VARIANT *retval);
  218. void __RPC_STUB ICatalogObject_get_Value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  219. HRESULT WINAPI ICatalogObject_put_Value_Proxy(ICatalogObject *This,BSTR bstrPropName,VARIANT val);
  220. void __RPC_STUB ICatalogObject_put_Value_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  221. HRESULT WINAPI ICatalogObject_get_Key_Proxy(ICatalogObject *This,VARIANT *retval);
  222. void __RPC_STUB ICatalogObject_get_Key_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  223. HRESULT WINAPI ICatalogObject_get_Name_Proxy(ICatalogObject *This,VARIANT *retval);
  224. void __RPC_STUB ICatalogObject_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  225. HRESULT WINAPI ICatalogObject_IsPropertyReadOnly_Proxy(ICatalogObject *This,BSTR bstrPropName,VARIANT_BOOL *retval);
  226. void __RPC_STUB ICatalogObject_IsPropertyReadOnly_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  227. HRESULT WINAPI ICatalogObject_get_Valid_Proxy(ICatalogObject *This,VARIANT_BOOL *retval);
  228. void __RPC_STUB ICatalogObject_get_Valid_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  229. HRESULT WINAPI ICatalogObject_IsPropertyWriteOnly_Proxy(ICatalogObject *This,BSTR bstrPropName,VARIANT_BOOL *retval);
  230. void __RPC_STUB ICatalogObject_IsPropertyWriteOnly_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  231. #endif
  232. #ifndef __ICatalogCollection_INTERFACE_DEFINED__
  233. #define __ICatalogCollection_INTERFACE_DEFINED__
  234. EXTERN_C const IID IID_ICatalogCollection;
  235. #if defined(__cplusplus) && !defined(CINTERFACE)
  236. struct ICatalogCollection : public IDispatch {
  237. public:
  238. virtual HRESULT WINAPI get__NewEnum(IUnknown **ppEnumVariant) = 0;
  239. virtual HRESULT WINAPI get_Item(__LONG32 lIndex,IDispatch **ppCatalogObject) = 0;
  240. virtual HRESULT WINAPI get_Count(__LONG32 *retval) = 0;
  241. virtual HRESULT WINAPI Remove(__LONG32 lIndex) = 0;
  242. virtual HRESULT WINAPI Add(IDispatch **ppCatalogObject) = 0;
  243. virtual HRESULT WINAPI Populate(void) = 0;
  244. virtual HRESULT WINAPI SaveChanges(__LONG32 *retval) = 0;
  245. virtual HRESULT WINAPI GetCollection(BSTR bstrCollName,VARIANT varObjectKey,IDispatch **ppCatalogCollection) = 0;
  246. virtual HRESULT WINAPI get_Name(VARIANT *retval) = 0;
  247. virtual HRESULT WINAPI get_AddEnabled(VARIANT_BOOL *retval) = 0;
  248. virtual HRESULT WINAPI get_RemoveEnabled(VARIANT_BOOL *retval) = 0;
  249. virtual HRESULT WINAPI GetUtilInterface(IDispatch **ppUtil) = 0;
  250. virtual HRESULT WINAPI get_DataStoreMajorVersion(__LONG32 *retval) = 0;
  251. virtual HRESULT WINAPI get_DataStoreMinorVersion(__LONG32 *retval) = 0;
  252. virtual HRESULT WINAPI PopulateByKey(SAFEARRAY *aKeys) = 0;
  253. virtual HRESULT WINAPI PopulateByQuery(BSTR bstrQueryString,__LONG32 lQueryType) = 0;
  254. };
  255. #else
  256. typedef struct ICatalogCollectionVtbl {
  257. BEGIN_INTERFACE
  258. HRESULT (WINAPI *QueryInterface)(ICatalogCollection *This,REFIID riid,void **ppvObject);
  259. ULONG (WINAPI *AddRef)(ICatalogCollection *This);
  260. ULONG (WINAPI *Release)(ICatalogCollection *This);
  261. HRESULT (WINAPI *GetTypeInfoCount)(ICatalogCollection *This,UINT *pctinfo);
  262. HRESULT (WINAPI *GetTypeInfo)(ICatalogCollection *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
  263. HRESULT (WINAPI *GetIDsOfNames)(ICatalogCollection *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
  264. HRESULT (WINAPI *Invoke)(ICatalogCollection *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
  265. HRESULT (WINAPI *get__NewEnum)(ICatalogCollection *This,IUnknown **ppEnumVariant);
  266. HRESULT (WINAPI *get_Item)(ICatalogCollection *This,__LONG32 lIndex,IDispatch **ppCatalogObject);
  267. HRESULT (WINAPI *get_Count)(ICatalogCollection *This,__LONG32 *retval);
  268. HRESULT (WINAPI *Remove)(ICatalogCollection *This,__LONG32 lIndex);
  269. HRESULT (WINAPI *Add)(ICatalogCollection *This,IDispatch **ppCatalogObject);
  270. HRESULT (WINAPI *Populate)(ICatalogCollection *This);
  271. HRESULT (WINAPI *SaveChanges)(ICatalogCollection *This,__LONG32 *retval);
  272. HRESULT (WINAPI *GetCollection)(ICatalogCollection *This,BSTR bstrCollName,VARIANT varObjectKey,IDispatch **ppCatalogCollection);
  273. HRESULT (WINAPI *get_Name)(ICatalogCollection *This,VARIANT *retval);
  274. HRESULT (WINAPI *get_AddEnabled)(ICatalogCollection *This,VARIANT_BOOL *retval);
  275. HRESULT (WINAPI *get_RemoveEnabled)(ICatalogCollection *This,VARIANT_BOOL *retval);
  276. HRESULT (WINAPI *GetUtilInterface)(ICatalogCollection *This,IDispatch **ppUtil);
  277. HRESULT (WINAPI *get_DataStoreMajorVersion)(ICatalogCollection *This,__LONG32 *retval);
  278. HRESULT (WINAPI *get_DataStoreMinorVersion)(ICatalogCollection *This,__LONG32 *retval);
  279. HRESULT (WINAPI *PopulateByKey)(ICatalogCollection *This,SAFEARRAY *aKeys);
  280. HRESULT (WINAPI *PopulateByQuery)(ICatalogCollection *This,BSTR bstrQueryString,__LONG32 lQueryType);
  281. END_INTERFACE
  282. } ICatalogCollectionVtbl;
  283. struct ICatalogCollection {
  284. CONST_VTBL struct ICatalogCollectionVtbl *lpVtbl;
  285. };
  286. #ifdef COBJMACROS
  287. #define ICatalogCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  288. #define ICatalogCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
  289. #define ICatalogCollection_Release(This) (This)->lpVtbl->Release(This)
  290. #define ICatalogCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  291. #define ICatalogCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  292. #define ICatalogCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  293. #define ICatalogCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  294. #define ICatalogCollection_get__NewEnum(This,ppEnumVariant) (This)->lpVtbl->get__NewEnum(This,ppEnumVariant)
  295. #define ICatalogCollection_get_Item(This,lIndex,ppCatalogObject) (This)->lpVtbl->get_Item(This,lIndex,ppCatalogObject)
  296. #define ICatalogCollection_get_Count(This,retval) (This)->lpVtbl->get_Count(This,retval)
  297. #define ICatalogCollection_Remove(This,lIndex) (This)->lpVtbl->Remove(This,lIndex)
  298. #define ICatalogCollection_Add(This,ppCatalogObject) (This)->lpVtbl->Add(This,ppCatalogObject)
  299. #define ICatalogCollection_Populate(This) (This)->lpVtbl->Populate(This)
  300. #define ICatalogCollection_SaveChanges(This,retval) (This)->lpVtbl->SaveChanges(This,retval)
  301. #define ICatalogCollection_GetCollection(This,bstrCollName,varObjectKey,ppCatalogCollection) (This)->lpVtbl->GetCollection(This,bstrCollName,varObjectKey,ppCatalogCollection)
  302. #define ICatalogCollection_get_Name(This,retval) (This)->lpVtbl->get_Name(This,retval)
  303. #define ICatalogCollection_get_AddEnabled(This,retval) (This)->lpVtbl->get_AddEnabled(This,retval)
  304. #define ICatalogCollection_get_RemoveEnabled(This,retval) (This)->lpVtbl->get_RemoveEnabled(This,retval)
  305. #define ICatalogCollection_GetUtilInterface(This,ppUtil) (This)->lpVtbl->GetUtilInterface(This,ppUtil)
  306. #define ICatalogCollection_get_DataStoreMajorVersion(This,retval) (This)->lpVtbl->get_DataStoreMajorVersion(This,retval)
  307. #define ICatalogCollection_get_DataStoreMinorVersion(This,retval) (This)->lpVtbl->get_DataStoreMinorVersion(This,retval)
  308. #define ICatalogCollection_PopulateByKey(This,aKeys) (This)->lpVtbl->PopulateByKey(This,aKeys)
  309. #define ICatalogCollection_PopulateByQuery(This,bstrQueryString,lQueryType) (This)->lpVtbl->PopulateByQuery(This,bstrQueryString,lQueryType)
  310. #endif
  311. #endif
  312. HRESULT WINAPI ICatalogCollection_get__NewEnum_Proxy(ICatalogCollection *This,IUnknown **ppEnumVariant);
  313. void __RPC_STUB ICatalogCollection_get__NewEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  314. HRESULT WINAPI ICatalogCollection_get_Item_Proxy(ICatalogCollection *This,__LONG32 lIndex,IDispatch **ppCatalogObject);
  315. void __RPC_STUB ICatalogCollection_get_Item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  316. HRESULT WINAPI ICatalogCollection_get_Count_Proxy(ICatalogCollection *This,__LONG32 *retval);
  317. void __RPC_STUB ICatalogCollection_get_Count_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  318. HRESULT WINAPI ICatalogCollection_Remove_Proxy(ICatalogCollection *This,__LONG32 lIndex);
  319. void __RPC_STUB ICatalogCollection_Remove_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  320. HRESULT WINAPI ICatalogCollection_Add_Proxy(ICatalogCollection *This,IDispatch **ppCatalogObject);
  321. void __RPC_STUB ICatalogCollection_Add_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  322. HRESULT WINAPI ICatalogCollection_Populate_Proxy(ICatalogCollection *This);
  323. void __RPC_STUB ICatalogCollection_Populate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  324. HRESULT WINAPI ICatalogCollection_SaveChanges_Proxy(ICatalogCollection *This,__LONG32 *retval);
  325. void __RPC_STUB ICatalogCollection_SaveChanges_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  326. HRESULT WINAPI ICatalogCollection_GetCollection_Proxy(ICatalogCollection *This,BSTR bstrCollName,VARIANT varObjectKey,IDispatch **ppCatalogCollection);
  327. void __RPC_STUB ICatalogCollection_GetCollection_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  328. HRESULT WINAPI ICatalogCollection_get_Name_Proxy(ICatalogCollection *This,VARIANT *retval);
  329. void __RPC_STUB ICatalogCollection_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  330. HRESULT WINAPI ICatalogCollection_get_AddEnabled_Proxy(ICatalogCollection *This,VARIANT_BOOL *retval);
  331. void __RPC_STUB ICatalogCollection_get_AddEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  332. HRESULT WINAPI ICatalogCollection_get_RemoveEnabled_Proxy(ICatalogCollection *This,VARIANT_BOOL *retval);
  333. void __RPC_STUB ICatalogCollection_get_RemoveEnabled_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  334. HRESULT WINAPI ICatalogCollection_GetUtilInterface_Proxy(ICatalogCollection *This,IDispatch **ppUtil);
  335. void __RPC_STUB ICatalogCollection_GetUtilInterface_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  336. HRESULT WINAPI ICatalogCollection_get_DataStoreMajorVersion_Proxy(ICatalogCollection *This,__LONG32 *retval);
  337. void __RPC_STUB ICatalogCollection_get_DataStoreMajorVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  338. HRESULT WINAPI ICatalogCollection_get_DataStoreMinorVersion_Proxy(ICatalogCollection *This,__LONG32 *retval);
  339. void __RPC_STUB ICatalogCollection_get_DataStoreMinorVersion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  340. HRESULT WINAPI ICatalogCollection_PopulateByKey_Proxy(ICatalogCollection *This,SAFEARRAY *aKeys);
  341. void __RPC_STUB ICatalogCollection_PopulateByKey_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  342. HRESULT WINAPI ICatalogCollection_PopulateByQuery_Proxy(ICatalogCollection *This,BSTR bstrQueryString,__LONG32 lQueryType);
  343. void __RPC_STUB ICatalogCollection_PopulateByQuery_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  344. #endif
  345. #ifndef __IComponentUtil_INTERFACE_DEFINED__
  346. #define __IComponentUtil_INTERFACE_DEFINED__
  347. EXTERN_C const IID IID_IComponentUtil;
  348. #if defined(__cplusplus) && !defined(CINTERFACE)
  349. struct IComponentUtil : public IDispatch {
  350. public:
  351. virtual HRESULT WINAPI InstallComponent(BSTR bstrDLLFile,BSTR bstrTypelibFile,BSTR bstrProxyStubDLLFile) = 0;
  352. virtual HRESULT WINAPI ImportComponent(BSTR bstrCLSID) = 0;
  353. virtual HRESULT WINAPI ImportComponentByName(BSTR bstrProgID) = 0;
  354. virtual HRESULT WINAPI GetCLSIDs(BSTR bstrDLLFile,BSTR bstrTypelibFile,SAFEARRAY **aCLSIDs) = 0;
  355. };
  356. #else
  357. typedef struct IComponentUtilVtbl {
  358. BEGIN_INTERFACE
  359. HRESULT (WINAPI *QueryInterface)(IComponentUtil *This,REFIID riid,void **ppvObject);
  360. ULONG (WINAPI *AddRef)(IComponentUtil *This);
  361. ULONG (WINAPI *Release)(IComponentUtil *This);
  362. HRESULT (WINAPI *GetTypeInfoCount)(IComponentUtil *This,UINT *pctinfo);
  363. HRESULT (WINAPI *GetTypeInfo)(IComponentUtil *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
  364. HRESULT (WINAPI *GetIDsOfNames)(IComponentUtil *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
  365. HRESULT (WINAPI *Invoke)(IComponentUtil *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
  366. HRESULT (WINAPI *InstallComponent)(IComponentUtil *This,BSTR bstrDLLFile,BSTR bstrTypelibFile,BSTR bstrProxyStubDLLFile);
  367. HRESULT (WINAPI *ImportComponent)(IComponentUtil *This,BSTR bstrCLSID);
  368. HRESULT (WINAPI *ImportComponentByName)(IComponentUtil *This,BSTR bstrProgID);
  369. HRESULT (WINAPI *GetCLSIDs)(IComponentUtil *This,BSTR bstrDLLFile,BSTR bstrTypelibFile,SAFEARRAY **aCLSIDs);
  370. END_INTERFACE
  371. } IComponentUtilVtbl;
  372. struct IComponentUtil {
  373. CONST_VTBL struct IComponentUtilVtbl *lpVtbl;
  374. };
  375. #ifdef COBJMACROS
  376. #define IComponentUtil_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  377. #define IComponentUtil_AddRef(This) (This)->lpVtbl->AddRef(This)
  378. #define IComponentUtil_Release(This) (This)->lpVtbl->Release(This)
  379. #define IComponentUtil_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  380. #define IComponentUtil_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  381. #define IComponentUtil_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  382. #define IComponentUtil_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  383. #define IComponentUtil_InstallComponent(This,bstrDLLFile,bstrTypelibFile,bstrProxyStubDLLFile) (This)->lpVtbl->InstallComponent(This,bstrDLLFile,bstrTypelibFile,bstrProxyStubDLLFile)
  384. #define IComponentUtil_ImportComponent(This,bstrCLSID) (This)->lpVtbl->ImportComponent(This,bstrCLSID)
  385. #define IComponentUtil_ImportComponentByName(This,bstrProgID) (This)->lpVtbl->ImportComponentByName(This,bstrProgID)
  386. #define IComponentUtil_GetCLSIDs(This,bstrDLLFile,bstrTypelibFile,aCLSIDs) (This)->lpVtbl->GetCLSIDs(This,bstrDLLFile,bstrTypelibFile,aCLSIDs)
  387. #endif
  388. #endif
  389. HRESULT WINAPI IComponentUtil_InstallComponent_Proxy(IComponentUtil *This,BSTR bstrDLLFile,BSTR bstrTypelibFile,BSTR bstrProxyStubDLLFile);
  390. void __RPC_STUB IComponentUtil_InstallComponent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  391. HRESULT WINAPI IComponentUtil_ImportComponent_Proxy(IComponentUtil *This,BSTR bstrCLSID);
  392. void __RPC_STUB IComponentUtil_ImportComponent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  393. HRESULT WINAPI IComponentUtil_ImportComponentByName_Proxy(IComponentUtil *This,BSTR bstrProgID);
  394. void __RPC_STUB IComponentUtil_ImportComponentByName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  395. HRESULT WINAPI IComponentUtil_GetCLSIDs_Proxy(IComponentUtil *This,BSTR bstrDLLFile,BSTR bstrTypelibFile,SAFEARRAY **aCLSIDs);
  396. void __RPC_STUB IComponentUtil_GetCLSIDs_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  397. #endif
  398. #ifndef __IPackageUtil_INTERFACE_DEFINED__
  399. #define __IPackageUtil_INTERFACE_DEFINED__
  400. EXTERN_C const IID IID_IPackageUtil;
  401. #if defined(__cplusplus) && !defined(CINTERFACE)
  402. struct IPackageUtil : public IDispatch {
  403. public:
  404. virtual HRESULT WINAPI InstallPackage(BSTR bstrPackageFile,BSTR bstrInstallPath,__LONG32 lOptions) = 0;
  405. virtual HRESULT WINAPI ExportPackage(BSTR bstrPackageID,BSTR bstrPackageFile,__LONG32 lOptions) = 0;
  406. virtual HRESULT WINAPI ShutdownPackage(BSTR bstrPackageID) = 0;
  407. };
  408. #else
  409. typedef struct IPackageUtilVtbl {
  410. BEGIN_INTERFACE
  411. HRESULT (WINAPI *QueryInterface)(IPackageUtil *This,REFIID riid,void **ppvObject);
  412. ULONG (WINAPI *AddRef)(IPackageUtil *This);
  413. ULONG (WINAPI *Release)(IPackageUtil *This);
  414. HRESULT (WINAPI *GetTypeInfoCount)(IPackageUtil *This,UINT *pctinfo);
  415. HRESULT (WINAPI *GetTypeInfo)(IPackageUtil *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
  416. HRESULT (WINAPI *GetIDsOfNames)(IPackageUtil *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
  417. HRESULT (WINAPI *Invoke)(IPackageUtil *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
  418. HRESULT (WINAPI *InstallPackage)(IPackageUtil *This,BSTR bstrPackageFile,BSTR bstrInstallPath,__LONG32 lOptions);
  419. HRESULT (WINAPI *ExportPackage)(IPackageUtil *This,BSTR bstrPackageID,BSTR bstrPackageFile,__LONG32 lOptions);
  420. HRESULT (WINAPI *ShutdownPackage)(IPackageUtil *This,BSTR bstrPackageID);
  421. END_INTERFACE
  422. } IPackageUtilVtbl;
  423. struct IPackageUtil {
  424. CONST_VTBL struct IPackageUtilVtbl *lpVtbl;
  425. };
  426. #ifdef COBJMACROS
  427. #define IPackageUtil_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  428. #define IPackageUtil_AddRef(This) (This)->lpVtbl->AddRef(This)
  429. #define IPackageUtil_Release(This) (This)->lpVtbl->Release(This)
  430. #define IPackageUtil_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  431. #define IPackageUtil_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  432. #define IPackageUtil_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  433. #define IPackageUtil_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  434. #define IPackageUtil_InstallPackage(This,bstrPackageFile,bstrInstallPath,lOptions) (This)->lpVtbl->InstallPackage(This,bstrPackageFile,bstrInstallPath,lOptions)
  435. #define IPackageUtil_ExportPackage(This,bstrPackageID,bstrPackageFile,lOptions) (This)->lpVtbl->ExportPackage(This,bstrPackageID,bstrPackageFile,lOptions)
  436. #define IPackageUtil_ShutdownPackage(This,bstrPackageID) (This)->lpVtbl->ShutdownPackage(This,bstrPackageID)
  437. #endif
  438. #endif
  439. HRESULT WINAPI IPackageUtil_InstallPackage_Proxy(IPackageUtil *This,BSTR bstrPackageFile,BSTR bstrInstallPath,__LONG32 lOptions);
  440. void __RPC_STUB IPackageUtil_InstallPackage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  441. HRESULT WINAPI IPackageUtil_ExportPackage_Proxy(IPackageUtil *This,BSTR bstrPackageID,BSTR bstrPackageFile,__LONG32 lOptions);
  442. void __RPC_STUB IPackageUtil_ExportPackage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  443. HRESULT WINAPI IPackageUtil_ShutdownPackage_Proxy(IPackageUtil *This,BSTR bstrPackageID);
  444. void __RPC_STUB IPackageUtil_ShutdownPackage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  445. #endif
  446. #ifndef __IRemoteComponentUtil_INTERFACE_DEFINED__
  447. #define __IRemoteComponentUtil_INTERFACE_DEFINED__
  448. EXTERN_C const IID IID_IRemoteComponentUtil;
  449. #if defined(__cplusplus) && !defined(CINTERFACE)
  450. struct IRemoteComponentUtil : public IDispatch {
  451. public:
  452. virtual HRESULT WINAPI InstallRemoteComponent(BSTR bstrServer,BSTR bstrPackageID,BSTR bstrCLSID) = 0;
  453. virtual HRESULT WINAPI InstallRemoteComponentByName(BSTR bstrServer,BSTR bstrPackageName,BSTR bstrProgID) = 0;
  454. };
  455. #else
  456. typedef struct IRemoteComponentUtilVtbl {
  457. BEGIN_INTERFACE
  458. HRESULT (WINAPI *QueryInterface)(IRemoteComponentUtil *This,REFIID riid,void **ppvObject);
  459. ULONG (WINAPI *AddRef)(IRemoteComponentUtil *This);
  460. ULONG (WINAPI *Release)(IRemoteComponentUtil *This);
  461. HRESULT (WINAPI *GetTypeInfoCount)(IRemoteComponentUtil *This,UINT *pctinfo);
  462. HRESULT (WINAPI *GetTypeInfo)(IRemoteComponentUtil *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
  463. HRESULT (WINAPI *GetIDsOfNames)(IRemoteComponentUtil *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
  464. HRESULT (WINAPI *Invoke)(IRemoteComponentUtil *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
  465. HRESULT (WINAPI *InstallRemoteComponent)(IRemoteComponentUtil *This,BSTR bstrServer,BSTR bstrPackageID,BSTR bstrCLSID);
  466. HRESULT (WINAPI *InstallRemoteComponentByName)(IRemoteComponentUtil *This,BSTR bstrServer,BSTR bstrPackageName,BSTR bstrProgID);
  467. END_INTERFACE
  468. } IRemoteComponentUtilVtbl;
  469. struct IRemoteComponentUtil {
  470. CONST_VTBL struct IRemoteComponentUtilVtbl *lpVtbl;
  471. };
  472. #ifdef COBJMACROS
  473. #define IRemoteComponentUtil_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  474. #define IRemoteComponentUtil_AddRef(This) (This)->lpVtbl->AddRef(This)
  475. #define IRemoteComponentUtil_Release(This) (This)->lpVtbl->Release(This)
  476. #define IRemoteComponentUtil_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  477. #define IRemoteComponentUtil_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  478. #define IRemoteComponentUtil_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  479. #define IRemoteComponentUtil_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  480. #define IRemoteComponentUtil_InstallRemoteComponent(This,bstrServer,bstrPackageID,bstrCLSID) (This)->lpVtbl->InstallRemoteComponent(This,bstrServer,bstrPackageID,bstrCLSID)
  481. #define IRemoteComponentUtil_InstallRemoteComponentByName(This,bstrServer,bstrPackageName,bstrProgID) (This)->lpVtbl->InstallRemoteComponentByName(This,bstrServer,bstrPackageName,bstrProgID)
  482. #endif
  483. #endif
  484. HRESULT WINAPI IRemoteComponentUtil_InstallRemoteComponent_Proxy(IRemoteComponentUtil *This,BSTR bstrServer,BSTR bstrPackageID,BSTR bstrCLSID);
  485. void __RPC_STUB IRemoteComponentUtil_InstallRemoteComponent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  486. HRESULT WINAPI IRemoteComponentUtil_InstallRemoteComponentByName_Proxy(IRemoteComponentUtil *This,BSTR bstrServer,BSTR bstrPackageName,BSTR bstrProgID);
  487. void __RPC_STUB IRemoteComponentUtil_InstallRemoteComponentByName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  488. #endif
  489. #ifndef __IRoleAssociationUtil_INTERFACE_DEFINED__
  490. #define __IRoleAssociationUtil_INTERFACE_DEFINED__
  491. EXTERN_C const IID IID_IRoleAssociationUtil;
  492. #if defined(__cplusplus) && !defined(CINTERFACE)
  493. struct IRoleAssociationUtil : public IDispatch {
  494. public:
  495. virtual HRESULT WINAPI AssociateRole(BSTR bstrRoleID) = 0;
  496. virtual HRESULT WINAPI AssociateRoleByName(BSTR bstrRoleName) = 0;
  497. };
  498. #else
  499. typedef struct IRoleAssociationUtilVtbl {
  500. BEGIN_INTERFACE
  501. HRESULT (WINAPI *QueryInterface)(IRoleAssociationUtil *This,REFIID riid,void **ppvObject);
  502. ULONG (WINAPI *AddRef)(IRoleAssociationUtil *This);
  503. ULONG (WINAPI *Release)(IRoleAssociationUtil *This);
  504. HRESULT (WINAPI *GetTypeInfoCount)(IRoleAssociationUtil *This,UINT *pctinfo);
  505. HRESULT (WINAPI *GetTypeInfo)(IRoleAssociationUtil *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
  506. HRESULT (WINAPI *GetIDsOfNames)(IRoleAssociationUtil *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
  507. HRESULT (WINAPI *Invoke)(IRoleAssociationUtil *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
  508. HRESULT (WINAPI *AssociateRole)(IRoleAssociationUtil *This,BSTR bstrRoleID);
  509. HRESULT (WINAPI *AssociateRoleByName)(IRoleAssociationUtil *This,BSTR bstrRoleName);
  510. END_INTERFACE
  511. } IRoleAssociationUtilVtbl;
  512. struct IRoleAssociationUtil {
  513. CONST_VTBL struct IRoleAssociationUtilVtbl *lpVtbl;
  514. };
  515. #ifdef COBJMACROS
  516. #define IRoleAssociationUtil_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
  517. #define IRoleAssociationUtil_AddRef(This) (This)->lpVtbl->AddRef(This)
  518. #define IRoleAssociationUtil_Release(This) (This)->lpVtbl->Release(This)
  519. #define IRoleAssociationUtil_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
  520. #define IRoleAssociationUtil_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  521. #define IRoleAssociationUtil_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  522. #define IRoleAssociationUtil_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  523. #define IRoleAssociationUtil_AssociateRole(This,bstrRoleID) (This)->lpVtbl->AssociateRole(This,bstrRoleID)
  524. #define IRoleAssociationUtil_AssociateRoleByName(This,bstrRoleName) (This)->lpVtbl->AssociateRoleByName(This,bstrRoleName)
  525. #endif
  526. #endif
  527. HRESULT WINAPI IRoleAssociationUtil_AssociateRole_Proxy(IRoleAssociationUtil *This,BSTR bstrRoleID);
  528. void __RPC_STUB IRoleAssociationUtil_AssociateRole_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  529. HRESULT WINAPI IRoleAssociationUtil_AssociateRoleByName_Proxy(IRoleAssociationUtil *This,BSTR bstrRoleName);
  530. void __RPC_STUB IRoleAssociationUtil_AssociateRoleByName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
  531. #endif
  532. #ifndef __MTSAdmin_LIBRARY_DEFINED__
  533. #define __MTSAdmin_LIBRARY_DEFINED__
  534. typedef enum __MIDL___MIDL_itf_mtxadmin_0107_0001 {
  535. mtsInstallUsers = 1
  536. } MTSPackageInstallOptions;
  537. typedef enum __MIDL___MIDL_itf_mtxadmin_0107_0002 {
  538. mtsExportUsers = 1
  539. } MTSPackageExportOptions;
  540. typedef enum __MIDL___MIDL_itf_mtxadmin_0107_0003 {
  541. mtsErrObjectErrors = 0x80110401,mtsErrObjectInvalid = 0x80110402,mtsErrKeyMissing = 0x80110403,mtsErrAlreadyInstalled = 0x80110404,
  542. mtsErrDownloadFailed = 0x80110405,mtsErrPDFWriteFail = 0x80110407,mtsErrPDFReadFail = 0x80110408,mtsErrPDFVersion = 0x80110409,
  543. mtsErrCoReqCompInstalled = 0x80110410,mtsErrBadPath = 0x8011040a,mtsErrPackageExists = 0x8011040b,mtsErrRoleExists = 0x8011040c,
  544. mtsErrCantCopyFile = 0x8011040d,mtsErrNoTypeLib = 0x8011040e,mtsErrNoUser = 0x8011040f,mtsErrInvalidUserids = 0x80110410,
  545. mtsErrNoRegistryCLSID = 0x80110411,mtsErrBadRegistryProgID = 0x80110412,mtsErrAuthenticationLevel = 0x80110413,
  546. mtsErrUserPasswdNotValid = 0x80110414,mtsErrNoRegistryRead = 0x80110415,mtsErrNoRegistryWrite = 0x80110416,mtsErrNoRegistryRepair = 0x80110417,
  547. mtsErrCLSIDOrIIDMismatch = 0x80110418,mtsErrRemoteInterface = 0x80110419,mtsErrDllRegisterServer = 0x8011041a,mtsErrNoServerShare = 0x8011041b,
  548. mtsErrNoAccessToUNC = 0x8011041c,mtsErrDllLoadFailed = 0x8011041d,mtsErrBadRegistryLibID = 0x8011041e,mtsErrPackDirNotFound = 0x8011041f,
  549. mtsErrTreatAs = 0x80110420,mtsErrBadForward = 0x80110421,mtsErrBadIID = 0x80110422,mtsErrRegistrarFailed = 0x80110423,
  550. mtsErrCompFileDoesNotExist = 0x80110424,mtsErrCompFileLoadDLLFail = 0x80110425,mtsErrCompFileGetClassObj = 0x80110426,
  551. mtsErrCompFileClassNotAvail = 0x80110427,mtsErrCompFileBadTLB = 0x80110428,mtsErrCompFileNotInstallable = 0x80110429,
  552. mtsErrNotChangeable = 0x8011042a,mtsErrNotDeletable = 0x8011042b,mtsErrSession = 0x8011042c,mtsErrCompFileNoRegistrar = 0x80110434
  553. } MTSAdminErrorCodes;
  554. #define E_MTS_OBJECTERRORS mtsErrObjectErrors
  555. #define E_MTS_OBJECTINVALID mtsErrObjectInvalid
  556. #define E_MTS_KEYMISSING mtsErrKeyMissing
  557. #define E_MTS_ALREADYINSTALLED mtsErrAlreadyInstalled
  558. #define E_MTS_DOWNLOADFAILED mtsErrDownloadFailed
  559. #define E_MTS_PDFWRITEFAIL mtsErrPDFWriteFail
  560. #define E_MTS_PDFREADFAIL mtsErrPDFReadFail
  561. #define E_MTS_PDFVERSION mtsErrPDFVersion
  562. #define E_MTS_COREQCOMPINSTALLED mtsErrCoReqCompInstalled
  563. #define E_MTS_BADPATH mtsErrBadPath
  564. #define E_MTS_PACKAGEEXISTS mtsErrPackageExists
  565. #define E_MTS_ROLEEXISTS mtsErrRoleExists
  566. #define E_MTS_CANTCOPYFILE mtsErrCantCopyFile
  567. #define E_MTS_NOTYPELIB mtsErrNoTypeLib
  568. #define E_MTS_NOUSER mtsErrNoUser
  569. #define E_MTS_INVALIDUSERIDS mtsErrInvalidUserids
  570. #define E_MTS_NOREGISTRYCLSID mtsErrNoRegistryCLSID
  571. #define E_MTS_BADREGISTRYPROGID mtsErrBadRegistryProgID
  572. #define E_MTS_AUTHENTICATIONLEVEL mtsErrAuthenticationLevel
  573. #define E_MTS_USERPASSWDNOTVALID mtsErrUserPasswdNotValid
  574. #define E_MTS_NOREGISTRYREAD mtsErrNoRegistryRead
  575. #define E_MTS_NOREGISTRYWRITE mtsErrNoRegistryWrite
  576. #define E_MTS_NOREGISTRYREPAIR mtsErrNoRegistryRepair
  577. #define E_MTS_CLSIDORIIDMISMATCH mtsErrCLSIDOrIIDMismatch
  578. #define E_MTS_REMOTEINTERFACE mtsErrRemoteInterface
  579. #define E_MTS_DLLREGISTERSERVER mtsErrDllRegisterServer
  580. #define E_MTS_NOSERVERSHARE mtsErrNoServerShare
  581. #define E_MTS_NOACCESSTOUNC mtsErrNoAccessToUNC
  582. #define E_MTS_DLLLOADFAILED mtsErrDllLoadFailed
  583. #define E_MTS_BADREGISTRYLIBID mtsErrBadRegistryLibID
  584. #define E_MTS_PACKDIRNOTFOUND mtsErrPackDirNotFound
  585. #define E_MTS_TREATAS mtsErrTreatAs
  586. #define E_MTS_BADFORWARD mtsErrBadForward
  587. #define E_MTS_BADIID mtsErrBadIID
  588. #define E_MTS_REGISTRARFAILED mtsErrRegistrarFailed
  589. #define E_MTS_COMPFILE_DOESNOTEXIST mtsErrCompFileDoesNotExist
  590. #define E_MTS_COMPFILE_LOADDLLFAIL mtsErrCompFileLoadDLLFail
  591. #define E_MTS_COMPFILE_GETCLASSOBJ mtsErrCompFileGetClassObj
  592. #define E_MTS_COMPFILE_CLASSNOTAVAIL mtsErrCompFileClassNotAvail
  593. #define E_MTS_COMPFILE_BADTLB mtsErrCompFileBadTLB
  594. #define E_MTS_COMPFILE_NOTINSTALLABLE mtsErrCompFileNotInstallable
  595. #define E_MTS_NOTCHANGEABLE mtsErrNotChangeable
  596. #define E_MTS_NOTDELETEABLE mtsErrNotDeleteable
  597. #define E_MTS_SESSION mtsErrSession
  598. #define E_MTS_COMPFILE_NOREGISTRAR mtsErrCompFileNoRegistrar
  599. EXTERN_C const IID LIBID_MTSAdmin;
  600. #ifdef __cplusplus
  601. EXTERN_C const CLSID CLSID_Catalog;
  602. class Catalog;
  603. #endif
  604. #ifdef __cplusplus
  605. EXTERN_C const CLSID CLSID_CatalogObject;
  606. class CatalogObject;
  607. #endif
  608. #ifdef __cplusplus
  609. EXTERN_C const CLSID CLSID_CatalogCollection;
  610. class CatalogCollection;
  611. #endif
  612. #ifdef __cplusplus
  613. EXTERN_C const CLSID CLSID_ComponentUtil;
  614. class ComponentUtil;
  615. #endif
  616. #ifdef __cplusplus
  617. EXTERN_C const CLSID CLSID_PackageUtil;
  618. class PackageUtil;
  619. #endif
  620. #ifdef __cplusplus
  621. EXTERN_C const CLSID CLSID_RemoteComponentUtil;
  622. class RemoteComponentUtil;
  623. #endif
  624. #ifdef __cplusplus
  625. EXTERN_C const CLSID CLSID_RoleAssociationUtil;
  626. class RoleAssociationUtil;
  627. #endif
  628. #endif
  629. ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
  630. unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
  631. unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
  632. void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
  633. ULONG __RPC_API LPSAFEARRAY_UserSize(ULONG *,ULONG,LPSAFEARRAY *);
  634. unsigned char *__RPC_API LPSAFEARRAY_UserMarshal(ULONG *,unsigned char *,LPSAFEARRAY *);
  635. unsigned char *__RPC_API LPSAFEARRAY_UserUnmarshal(ULONG *,unsigned char *,LPSAFEARRAY *);
  636. void __RPC_API LPSAFEARRAY_UserFree(ULONG *,LPSAFEARRAY *);
  637. ULONG __RPC_API VARIANT_UserSize(ULONG *,ULONG,VARIANT *);
  638. unsigned char *__RPC_API VARIANT_UserMarshal(ULONG *,unsigned char *,VARIANT *);
  639. unsigned char *__RPC_API VARIANT_UserUnmarshal(ULONG *,unsigned char *,VARIANT *);
  640. void __RPC_API VARIANT_UserFree(ULONG *,VARIANT *);
  641. #ifdef __cplusplus
  642. }
  643. #endif
  644. #endif