Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1041 lines
31 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for comcat.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __comcat_h__
  27. #define __comcat_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IEnumGUID_FWD_DEFINED__
  33. #define __IEnumGUID_FWD_DEFINED__
  34. typedef interface IEnumGUID IEnumGUID;
  35. #endif /* __IEnumGUID_FWD_DEFINED__ */
  36. #ifndef __IEnumCATEGORYINFO_FWD_DEFINED__
  37. #define __IEnumCATEGORYINFO_FWD_DEFINED__
  38. typedef interface IEnumCATEGORYINFO IEnumCATEGORYINFO;
  39. #endif /* __IEnumCATEGORYINFO_FWD_DEFINED__ */
  40. #ifndef __ICatRegister_FWD_DEFINED__
  41. #define __ICatRegister_FWD_DEFINED__
  42. typedef interface ICatRegister ICatRegister;
  43. #endif /* __ICatRegister_FWD_DEFINED__ */
  44. #ifndef __ICatInformation_FWD_DEFINED__
  45. #define __ICatInformation_FWD_DEFINED__
  46. typedef interface ICatInformation ICatInformation;
  47. #endif /* __ICatInformation_FWD_DEFINED__ */
  48. /* header files for imported files */
  49. #include "unknwn.h"
  50. #ifdef __cplusplus
  51. extern "C"{
  52. #endif
  53. void * __RPC_USER MIDL_user_allocate(size_t);
  54. void __RPC_USER MIDL_user_free( void * );
  55. /* interface __MIDL_itf_comcat_0000 */
  56. /* [local] */
  57. //=--------------------------------------------------------------------------=
  58. // ComCat.h
  59. //=--------------------------------------------------------------------------=
  60. // Copyright (c) Microsoft Corporation. All rights reserved.
  61. //
  62. // THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  63. // ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  64. // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  65. // PARTICULAR PURPOSE.
  66. //=--------------------------------------------------------------------------=
  67. #pragma comment(lib,"uuid.lib")
  68. //=--------------------------------------------------------------------------=
  69. // OLE Componet Categories Interfaces.
  70. //=--------------------------------------------------------------------------=
  71. //
  72. EXTERN_C const CLSID CLSID_StdComponentCategoriesMgr;
  73. ////////////////////////////////////////////////////////////////////////////
  74. // Types
  75. typedef GUID CATID;
  76. typedef REFGUID REFCATID;
  77. #define IID_IEnumCLSID IID_IEnumGUID
  78. #define IEnumCLSID IEnumGUID
  79. #define LPENUMCLSID LPENUMGUID
  80. #define CATID_NULL GUID_NULL
  81. #define IsEqualCATID(rcatid1, rcatid2) IsEqualGUID(rcatid1, rcatid2)
  82. #define IID_IEnumCATID IID_IEnumGUID
  83. #define IEnumCATID IEnumGUID
  84. ////////////////////////////////////////////////////////////////////////////
  85. // Category IDs (link to uuid3.lib)
  86. EXTERN_C const CATID CATID_Insertable;
  87. EXTERN_C const CATID CATID_Control;
  88. EXTERN_C const CATID CATID_Programmable;
  89. EXTERN_C const CATID CATID_IsShortcut;
  90. EXTERN_C const CATID CATID_NeverShowExt;
  91. EXTERN_C const CATID CATID_DocObject;
  92. EXTERN_C const CATID CATID_Printable;
  93. EXTERN_C const CATID CATID_RequiresDataPathHost;
  94. EXTERN_C const CATID CATID_PersistsToMoniker;
  95. EXTERN_C const CATID CATID_PersistsToStorage;
  96. EXTERN_C const CATID CATID_PersistsToStreamInit;
  97. EXTERN_C const CATID CATID_PersistsToStream;
  98. EXTERN_C const CATID CATID_PersistsToMemory;
  99. EXTERN_C const CATID CATID_PersistsToFile;
  100. EXTERN_C const CATID CATID_PersistsToPropertyBag;
  101. EXTERN_C const CATID CATID_InternetAware;
  102. EXTERN_C const CATID CATID_DesignTimeUIActivatableControl;
  103. ////////////////////////////////////////////////////////////////////////////
  104. // Interface Definitions
  105. #ifndef _LPENUMGUID_DEFINED
  106. #define _LPENUMGUID_DEFINED
  107. extern RPC_IF_HANDLE __MIDL_itf_comcat_0000_v0_0_c_ifspec;
  108. extern RPC_IF_HANDLE __MIDL_itf_comcat_0000_v0_0_s_ifspec;
  109. #ifndef __IEnumGUID_INTERFACE_DEFINED__
  110. #define __IEnumGUID_INTERFACE_DEFINED__
  111. /* interface IEnumGUID */
  112. /* [unique][uuid][object] */
  113. typedef /* [unique] */ IEnumGUID *LPENUMGUID;
  114. EXTERN_C const IID IID_IEnumGUID;
  115. #if defined(__cplusplus) && !defined(CINTERFACE)
  116. MIDL_INTERFACE("0002E000-0000-0000-C000-000000000046")
  117. IEnumGUID : public IUnknown
  118. {
  119. public:
  120. virtual HRESULT STDMETHODCALLTYPE Next(
  121. /* [in] */ ULONG celt,
  122. /* [length_is][size_is][out] */ GUID *rgelt,
  123. /* [out] */ ULONG *pceltFetched) = 0;
  124. virtual HRESULT STDMETHODCALLTYPE Skip(
  125. /* [in] */ ULONG celt) = 0;
  126. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  127. virtual HRESULT STDMETHODCALLTYPE Clone(
  128. /* [out] */ IEnumGUID **ppenum) = 0;
  129. };
  130. #else /* C style interface */
  131. typedef struct IEnumGUIDVtbl
  132. {
  133. BEGIN_INTERFACE
  134. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  135. IEnumGUID * This,
  136. /* [in] */ REFIID riid,
  137. /* [iid_is][out] */ void **ppvObject);
  138. ULONG ( STDMETHODCALLTYPE *AddRef )(
  139. IEnumGUID * This);
  140. ULONG ( STDMETHODCALLTYPE *Release )(
  141. IEnumGUID * This);
  142. HRESULT ( STDMETHODCALLTYPE *Next )(
  143. IEnumGUID * This,
  144. /* [in] */ ULONG celt,
  145. /* [length_is][size_is][out] */ GUID *rgelt,
  146. /* [out] */ ULONG *pceltFetched);
  147. HRESULT ( STDMETHODCALLTYPE *Skip )(
  148. IEnumGUID * This,
  149. /* [in] */ ULONG celt);
  150. HRESULT ( STDMETHODCALLTYPE *Reset )(
  151. IEnumGUID * This);
  152. HRESULT ( STDMETHODCALLTYPE *Clone )(
  153. IEnumGUID * This,
  154. /* [out] */ IEnumGUID **ppenum);
  155. END_INTERFACE
  156. } IEnumGUIDVtbl;
  157. interface IEnumGUID
  158. {
  159. CONST_VTBL struct IEnumGUIDVtbl *lpVtbl;
  160. };
  161. #ifdef COBJMACROS
  162. #define IEnumGUID_QueryInterface(This,riid,ppvObject) \
  163. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  164. #define IEnumGUID_AddRef(This) \
  165. (This)->lpVtbl -> AddRef(This)
  166. #define IEnumGUID_Release(This) \
  167. (This)->lpVtbl -> Release(This)
  168. #define IEnumGUID_Next(This,celt,rgelt,pceltFetched) \
  169. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  170. #define IEnumGUID_Skip(This,celt) \
  171. (This)->lpVtbl -> Skip(This,celt)
  172. #define IEnumGUID_Reset(This) \
  173. (This)->lpVtbl -> Reset(This)
  174. #define IEnumGUID_Clone(This,ppenum) \
  175. (This)->lpVtbl -> Clone(This,ppenum)
  176. #endif /* COBJMACROS */
  177. #endif /* C style interface */
  178. HRESULT STDMETHODCALLTYPE IEnumGUID_Next_Proxy(
  179. IEnumGUID * This,
  180. /* [in] */ ULONG celt,
  181. /* [length_is][size_is][out] */ GUID *rgelt,
  182. /* [out] */ ULONG *pceltFetched);
  183. void __RPC_STUB IEnumGUID_Next_Stub(
  184. IRpcStubBuffer *This,
  185. IRpcChannelBuffer *_pRpcChannelBuffer,
  186. PRPC_MESSAGE _pRpcMessage,
  187. DWORD *_pdwStubPhase);
  188. HRESULT STDMETHODCALLTYPE IEnumGUID_Skip_Proxy(
  189. IEnumGUID * This,
  190. /* [in] */ ULONG celt);
  191. void __RPC_STUB IEnumGUID_Skip_Stub(
  192. IRpcStubBuffer *This,
  193. IRpcChannelBuffer *_pRpcChannelBuffer,
  194. PRPC_MESSAGE _pRpcMessage,
  195. DWORD *_pdwStubPhase);
  196. HRESULT STDMETHODCALLTYPE IEnumGUID_Reset_Proxy(
  197. IEnumGUID * This);
  198. void __RPC_STUB IEnumGUID_Reset_Stub(
  199. IRpcStubBuffer *This,
  200. IRpcChannelBuffer *_pRpcChannelBuffer,
  201. PRPC_MESSAGE _pRpcMessage,
  202. DWORD *_pdwStubPhase);
  203. HRESULT STDMETHODCALLTYPE IEnumGUID_Clone_Proxy(
  204. IEnumGUID * This,
  205. /* [out] */ IEnumGUID **ppenum);
  206. void __RPC_STUB IEnumGUID_Clone_Stub(
  207. IRpcStubBuffer *This,
  208. IRpcChannelBuffer *_pRpcChannelBuffer,
  209. PRPC_MESSAGE _pRpcMessage,
  210. DWORD *_pdwStubPhase);
  211. #endif /* __IEnumGUID_INTERFACE_DEFINED__ */
  212. /* interface __MIDL_itf_comcat_0009 */
  213. /* [local] */
  214. #endif
  215. #ifndef _LPENUMCATEGORYINFO_DEFINED
  216. #define _LPENUMCATEGORYINFO_DEFINED
  217. extern RPC_IF_HANDLE __MIDL_itf_comcat_0009_v0_0_c_ifspec;
  218. extern RPC_IF_HANDLE __MIDL_itf_comcat_0009_v0_0_s_ifspec;
  219. #ifndef __IEnumCATEGORYINFO_INTERFACE_DEFINED__
  220. #define __IEnumCATEGORYINFO_INTERFACE_DEFINED__
  221. /* interface IEnumCATEGORYINFO */
  222. /* [unique][uuid][object] */
  223. typedef /* [unique] */ IEnumCATEGORYINFO *LPENUMCATEGORYINFO;
  224. typedef struct tagCATEGORYINFO
  225. {
  226. CATID catid;
  227. LCID lcid;
  228. OLECHAR szDescription[ 128 ];
  229. } CATEGORYINFO;
  230. typedef struct tagCATEGORYINFO *LPCATEGORYINFO;
  231. EXTERN_C const IID IID_IEnumCATEGORYINFO;
  232. #if defined(__cplusplus) && !defined(CINTERFACE)
  233. MIDL_INTERFACE("0002E011-0000-0000-C000-000000000046")
  234. IEnumCATEGORYINFO : public IUnknown
  235. {
  236. public:
  237. virtual HRESULT STDMETHODCALLTYPE Next(
  238. /* [in] */ ULONG celt,
  239. /* [length_is][size_is][out] */ CATEGORYINFO *rgelt,
  240. /* [out] */ ULONG *pceltFetched) = 0;
  241. virtual HRESULT STDMETHODCALLTYPE Skip(
  242. /* [in] */ ULONG celt) = 0;
  243. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  244. virtual HRESULT STDMETHODCALLTYPE Clone(
  245. /* [out] */ IEnumCATEGORYINFO **ppenum) = 0;
  246. };
  247. #else /* C style interface */
  248. typedef struct IEnumCATEGORYINFOVtbl
  249. {
  250. BEGIN_INTERFACE
  251. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  252. IEnumCATEGORYINFO * This,
  253. /* [in] */ REFIID riid,
  254. /* [iid_is][out] */ void **ppvObject);
  255. ULONG ( STDMETHODCALLTYPE *AddRef )(
  256. IEnumCATEGORYINFO * This);
  257. ULONG ( STDMETHODCALLTYPE *Release )(
  258. IEnumCATEGORYINFO * This);
  259. HRESULT ( STDMETHODCALLTYPE *Next )(
  260. IEnumCATEGORYINFO * This,
  261. /* [in] */ ULONG celt,
  262. /* [length_is][size_is][out] */ CATEGORYINFO *rgelt,
  263. /* [out] */ ULONG *pceltFetched);
  264. HRESULT ( STDMETHODCALLTYPE *Skip )(
  265. IEnumCATEGORYINFO * This,
  266. /* [in] */ ULONG celt);
  267. HRESULT ( STDMETHODCALLTYPE *Reset )(
  268. IEnumCATEGORYINFO * This);
  269. HRESULT ( STDMETHODCALLTYPE *Clone )(
  270. IEnumCATEGORYINFO * This,
  271. /* [out] */ IEnumCATEGORYINFO **ppenum);
  272. END_INTERFACE
  273. } IEnumCATEGORYINFOVtbl;
  274. interface IEnumCATEGORYINFO
  275. {
  276. CONST_VTBL struct IEnumCATEGORYINFOVtbl *lpVtbl;
  277. };
  278. #ifdef COBJMACROS
  279. #define IEnumCATEGORYINFO_QueryInterface(This,riid,ppvObject) \
  280. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  281. #define IEnumCATEGORYINFO_AddRef(This) \
  282. (This)->lpVtbl -> AddRef(This)
  283. #define IEnumCATEGORYINFO_Release(This) \
  284. (This)->lpVtbl -> Release(This)
  285. #define IEnumCATEGORYINFO_Next(This,celt,rgelt,pceltFetched) \
  286. (This)->lpVtbl -> Next(This,celt,rgelt,pceltFetched)
  287. #define IEnumCATEGORYINFO_Skip(This,celt) \
  288. (This)->lpVtbl -> Skip(This,celt)
  289. #define IEnumCATEGORYINFO_Reset(This) \
  290. (This)->lpVtbl -> Reset(This)
  291. #define IEnumCATEGORYINFO_Clone(This,ppenum) \
  292. (This)->lpVtbl -> Clone(This,ppenum)
  293. #endif /* COBJMACROS */
  294. #endif /* C style interface */
  295. HRESULT STDMETHODCALLTYPE IEnumCATEGORYINFO_Next_Proxy(
  296. IEnumCATEGORYINFO * This,
  297. /* [in] */ ULONG celt,
  298. /* [length_is][size_is][out] */ CATEGORYINFO *rgelt,
  299. /* [out] */ ULONG *pceltFetched);
  300. void __RPC_STUB IEnumCATEGORYINFO_Next_Stub(
  301. IRpcStubBuffer *This,
  302. IRpcChannelBuffer *_pRpcChannelBuffer,
  303. PRPC_MESSAGE _pRpcMessage,
  304. DWORD *_pdwStubPhase);
  305. HRESULT STDMETHODCALLTYPE IEnumCATEGORYINFO_Skip_Proxy(
  306. IEnumCATEGORYINFO * This,
  307. /* [in] */ ULONG celt);
  308. void __RPC_STUB IEnumCATEGORYINFO_Skip_Stub(
  309. IRpcStubBuffer *This,
  310. IRpcChannelBuffer *_pRpcChannelBuffer,
  311. PRPC_MESSAGE _pRpcMessage,
  312. DWORD *_pdwStubPhase);
  313. HRESULT STDMETHODCALLTYPE IEnumCATEGORYINFO_Reset_Proxy(
  314. IEnumCATEGORYINFO * This);
  315. void __RPC_STUB IEnumCATEGORYINFO_Reset_Stub(
  316. IRpcStubBuffer *This,
  317. IRpcChannelBuffer *_pRpcChannelBuffer,
  318. PRPC_MESSAGE _pRpcMessage,
  319. DWORD *_pdwStubPhase);
  320. HRESULT STDMETHODCALLTYPE IEnumCATEGORYINFO_Clone_Proxy(
  321. IEnumCATEGORYINFO * This,
  322. /* [out] */ IEnumCATEGORYINFO **ppenum);
  323. void __RPC_STUB IEnumCATEGORYINFO_Clone_Stub(
  324. IRpcStubBuffer *This,
  325. IRpcChannelBuffer *_pRpcChannelBuffer,
  326. PRPC_MESSAGE _pRpcMessage,
  327. DWORD *_pdwStubPhase);
  328. #endif /* __IEnumCATEGORYINFO_INTERFACE_DEFINED__ */
  329. /* interface __MIDL_itf_comcat_0010 */
  330. /* [local] */
  331. #endif
  332. #ifndef _LPCATREGISTER_DEFINED
  333. #define _LPCATREGISTER_DEFINED
  334. extern RPC_IF_HANDLE __MIDL_itf_comcat_0010_v0_0_c_ifspec;
  335. extern RPC_IF_HANDLE __MIDL_itf_comcat_0010_v0_0_s_ifspec;
  336. #ifndef __ICatRegister_INTERFACE_DEFINED__
  337. #define __ICatRegister_INTERFACE_DEFINED__
  338. /* interface ICatRegister */
  339. /* [unique][uuid][object] */
  340. typedef /* [unique] */ ICatRegister *LPCATREGISTER;
  341. EXTERN_C const IID IID_ICatRegister;
  342. #if defined(__cplusplus) && !defined(CINTERFACE)
  343. MIDL_INTERFACE("0002E012-0000-0000-C000-000000000046")
  344. ICatRegister : public IUnknown
  345. {
  346. public:
  347. virtual HRESULT STDMETHODCALLTYPE RegisterCategories(
  348. /* [in] */ ULONG cCategories,
  349. /* [size_is][in] */ CATEGORYINFO rgCategoryInfo[ ]) = 0;
  350. virtual HRESULT STDMETHODCALLTYPE UnRegisterCategories(
  351. /* [in] */ ULONG cCategories,
  352. /* [size_is][in] */ CATID rgcatid[ ]) = 0;
  353. virtual HRESULT STDMETHODCALLTYPE RegisterClassImplCategories(
  354. /* [in] */ REFCLSID rclsid,
  355. /* [in] */ ULONG cCategories,
  356. /* [size_is][in] */ CATID rgcatid[ ]) = 0;
  357. virtual HRESULT STDMETHODCALLTYPE UnRegisterClassImplCategories(
  358. /* [in] */ REFCLSID rclsid,
  359. /* [in] */ ULONG cCategories,
  360. /* [size_is][in] */ CATID rgcatid[ ]) = 0;
  361. virtual HRESULT STDMETHODCALLTYPE RegisterClassReqCategories(
  362. /* [in] */ REFCLSID rclsid,
  363. /* [in] */ ULONG cCategories,
  364. /* [size_is][in] */ CATID rgcatid[ ]) = 0;
  365. virtual HRESULT STDMETHODCALLTYPE UnRegisterClassReqCategories(
  366. /* [in] */ REFCLSID rclsid,
  367. /* [in] */ ULONG cCategories,
  368. /* [size_is][in] */ CATID rgcatid[ ]) = 0;
  369. };
  370. #else /* C style interface */
  371. typedef struct ICatRegisterVtbl
  372. {
  373. BEGIN_INTERFACE
  374. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  375. ICatRegister * This,
  376. /* [in] */ REFIID riid,
  377. /* [iid_is][out] */ void **ppvObject);
  378. ULONG ( STDMETHODCALLTYPE *AddRef )(
  379. ICatRegister * This);
  380. ULONG ( STDMETHODCALLTYPE *Release )(
  381. ICatRegister * This);
  382. HRESULT ( STDMETHODCALLTYPE *RegisterCategories )(
  383. ICatRegister * This,
  384. /* [in] */ ULONG cCategories,
  385. /* [size_is][in] */ CATEGORYINFO rgCategoryInfo[ ]);
  386. HRESULT ( STDMETHODCALLTYPE *UnRegisterCategories )(
  387. ICatRegister * This,
  388. /* [in] */ ULONG cCategories,
  389. /* [size_is][in] */ CATID rgcatid[ ]);
  390. HRESULT ( STDMETHODCALLTYPE *RegisterClassImplCategories )(
  391. ICatRegister * This,
  392. /* [in] */ REFCLSID rclsid,
  393. /* [in] */ ULONG cCategories,
  394. /* [size_is][in] */ CATID rgcatid[ ]);
  395. HRESULT ( STDMETHODCALLTYPE *UnRegisterClassImplCategories )(
  396. ICatRegister * This,
  397. /* [in] */ REFCLSID rclsid,
  398. /* [in] */ ULONG cCategories,
  399. /* [size_is][in] */ CATID rgcatid[ ]);
  400. HRESULT ( STDMETHODCALLTYPE *RegisterClassReqCategories )(
  401. ICatRegister * This,
  402. /* [in] */ REFCLSID rclsid,
  403. /* [in] */ ULONG cCategories,
  404. /* [size_is][in] */ CATID rgcatid[ ]);
  405. HRESULT ( STDMETHODCALLTYPE *UnRegisterClassReqCategories )(
  406. ICatRegister * This,
  407. /* [in] */ REFCLSID rclsid,
  408. /* [in] */ ULONG cCategories,
  409. /* [size_is][in] */ CATID rgcatid[ ]);
  410. END_INTERFACE
  411. } ICatRegisterVtbl;
  412. interface ICatRegister
  413. {
  414. CONST_VTBL struct ICatRegisterVtbl *lpVtbl;
  415. };
  416. #ifdef COBJMACROS
  417. #define ICatRegister_QueryInterface(This,riid,ppvObject) \
  418. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  419. #define ICatRegister_AddRef(This) \
  420. (This)->lpVtbl -> AddRef(This)
  421. #define ICatRegister_Release(This) \
  422. (This)->lpVtbl -> Release(This)
  423. #define ICatRegister_RegisterCategories(This,cCategories,rgCategoryInfo) \
  424. (This)->lpVtbl -> RegisterCategories(This,cCategories,rgCategoryInfo)
  425. #define ICatRegister_UnRegisterCategories(This,cCategories,rgcatid) \
  426. (This)->lpVtbl -> UnRegisterCategories(This,cCategories,rgcatid)
  427. #define ICatRegister_RegisterClassImplCategories(This,rclsid,cCategories,rgcatid) \
  428. (This)->lpVtbl -> RegisterClassImplCategories(This,rclsid,cCategories,rgcatid)
  429. #define ICatRegister_UnRegisterClassImplCategories(This,rclsid,cCategories,rgcatid) \
  430. (This)->lpVtbl -> UnRegisterClassImplCategories(This,rclsid,cCategories,rgcatid)
  431. #define ICatRegister_RegisterClassReqCategories(This,rclsid,cCategories,rgcatid) \
  432. (This)->lpVtbl -> RegisterClassReqCategories(This,rclsid,cCategories,rgcatid)
  433. #define ICatRegister_UnRegisterClassReqCategories(This,rclsid,cCategories,rgcatid) \
  434. (This)->lpVtbl -> UnRegisterClassReqCategories(This,rclsid,cCategories,rgcatid)
  435. #endif /* COBJMACROS */
  436. #endif /* C style interface */
  437. HRESULT STDMETHODCALLTYPE ICatRegister_RegisterCategories_Proxy(
  438. ICatRegister * This,
  439. /* [in] */ ULONG cCategories,
  440. /* [size_is][in] */ CATEGORYINFO rgCategoryInfo[ ]);
  441. void __RPC_STUB ICatRegister_RegisterCategories_Stub(
  442. IRpcStubBuffer *This,
  443. IRpcChannelBuffer *_pRpcChannelBuffer,
  444. PRPC_MESSAGE _pRpcMessage,
  445. DWORD *_pdwStubPhase);
  446. HRESULT STDMETHODCALLTYPE ICatRegister_UnRegisterCategories_Proxy(
  447. ICatRegister * This,
  448. /* [in] */ ULONG cCategories,
  449. /* [size_is][in] */ CATID rgcatid[ ]);
  450. void __RPC_STUB ICatRegister_UnRegisterCategories_Stub(
  451. IRpcStubBuffer *This,
  452. IRpcChannelBuffer *_pRpcChannelBuffer,
  453. PRPC_MESSAGE _pRpcMessage,
  454. DWORD *_pdwStubPhase);
  455. HRESULT STDMETHODCALLTYPE ICatRegister_RegisterClassImplCategories_Proxy(
  456. ICatRegister * This,
  457. /* [in] */ REFCLSID rclsid,
  458. /* [in] */ ULONG cCategories,
  459. /* [size_is][in] */ CATID rgcatid[ ]);
  460. void __RPC_STUB ICatRegister_RegisterClassImplCategories_Stub(
  461. IRpcStubBuffer *This,
  462. IRpcChannelBuffer *_pRpcChannelBuffer,
  463. PRPC_MESSAGE _pRpcMessage,
  464. DWORD *_pdwStubPhase);
  465. HRESULT STDMETHODCALLTYPE ICatRegister_UnRegisterClassImplCategories_Proxy(
  466. ICatRegister * This,
  467. /* [in] */ REFCLSID rclsid,
  468. /* [in] */ ULONG cCategories,
  469. /* [size_is][in] */ CATID rgcatid[ ]);
  470. void __RPC_STUB ICatRegister_UnRegisterClassImplCategories_Stub(
  471. IRpcStubBuffer *This,
  472. IRpcChannelBuffer *_pRpcChannelBuffer,
  473. PRPC_MESSAGE _pRpcMessage,
  474. DWORD *_pdwStubPhase);
  475. HRESULT STDMETHODCALLTYPE ICatRegister_RegisterClassReqCategories_Proxy(
  476. ICatRegister * This,
  477. /* [in] */ REFCLSID rclsid,
  478. /* [in] */ ULONG cCategories,
  479. /* [size_is][in] */ CATID rgcatid[ ]);
  480. void __RPC_STUB ICatRegister_RegisterClassReqCategories_Stub(
  481. IRpcStubBuffer *This,
  482. IRpcChannelBuffer *_pRpcChannelBuffer,
  483. PRPC_MESSAGE _pRpcMessage,
  484. DWORD *_pdwStubPhase);
  485. HRESULT STDMETHODCALLTYPE ICatRegister_UnRegisterClassReqCategories_Proxy(
  486. ICatRegister * This,
  487. /* [in] */ REFCLSID rclsid,
  488. /* [in] */ ULONG cCategories,
  489. /* [size_is][in] */ CATID rgcatid[ ]);
  490. void __RPC_STUB ICatRegister_UnRegisterClassReqCategories_Stub(
  491. IRpcStubBuffer *This,
  492. IRpcChannelBuffer *_pRpcChannelBuffer,
  493. PRPC_MESSAGE _pRpcMessage,
  494. DWORD *_pdwStubPhase);
  495. #endif /* __ICatRegister_INTERFACE_DEFINED__ */
  496. /* interface __MIDL_itf_comcat_0011 */
  497. /* [local] */
  498. #endif
  499. #ifndef _LPCATINFORMATION_DEFINED
  500. #define _LPCATINFORMATION_DEFINED
  501. extern RPC_IF_HANDLE __MIDL_itf_comcat_0011_v0_0_c_ifspec;
  502. extern RPC_IF_HANDLE __MIDL_itf_comcat_0011_v0_0_s_ifspec;
  503. #ifndef __ICatInformation_INTERFACE_DEFINED__
  504. #define __ICatInformation_INTERFACE_DEFINED__
  505. /* interface ICatInformation */
  506. /* [unique][uuid][object] */
  507. typedef /* [unique] */ ICatInformation *LPCATINFORMATION;
  508. EXTERN_C const IID IID_ICatInformation;
  509. #if defined(__cplusplus) && !defined(CINTERFACE)
  510. MIDL_INTERFACE("0002E013-0000-0000-C000-000000000046")
  511. ICatInformation : public IUnknown
  512. {
  513. public:
  514. virtual HRESULT STDMETHODCALLTYPE EnumCategories(
  515. /* [in] */ LCID lcid,
  516. /* [out] */ IEnumCATEGORYINFO **ppenumCategoryInfo) = 0;
  517. virtual HRESULT STDMETHODCALLTYPE GetCategoryDesc(
  518. /* [in] */ REFCATID rcatid,
  519. /* [in] */ LCID lcid,
  520. /* [out] */ LPWSTR *pszDesc) = 0;
  521. virtual /* [local] */ HRESULT STDMETHODCALLTYPE EnumClassesOfCategories(
  522. /* [in] */ ULONG cImplemented,
  523. /* [size_is][in] */ CATID rgcatidImpl[ ],
  524. /* [in] */ ULONG cRequired,
  525. /* [size_is][in] */ CATID rgcatidReq[ ],
  526. /* [out] */ IEnumGUID **ppenumClsid) = 0;
  527. virtual /* [local] */ HRESULT STDMETHODCALLTYPE IsClassOfCategories(
  528. /* [in] */ REFCLSID rclsid,
  529. /* [in] */ ULONG cImplemented,
  530. /* [size_is][in] */ CATID rgcatidImpl[ ],
  531. /* [in] */ ULONG cRequired,
  532. /* [size_is][in] */ CATID rgcatidReq[ ]) = 0;
  533. virtual HRESULT STDMETHODCALLTYPE EnumImplCategoriesOfClass(
  534. /* [in] */ REFCLSID rclsid,
  535. /* [out] */ IEnumGUID **ppenumCatid) = 0;
  536. virtual HRESULT STDMETHODCALLTYPE EnumReqCategoriesOfClass(
  537. /* [in] */ REFCLSID rclsid,
  538. /* [out] */ IEnumGUID **ppenumCatid) = 0;
  539. };
  540. #else /* C style interface */
  541. typedef struct ICatInformationVtbl
  542. {
  543. BEGIN_INTERFACE
  544. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  545. ICatInformation * This,
  546. /* [in] */ REFIID riid,
  547. /* [iid_is][out] */ void **ppvObject);
  548. ULONG ( STDMETHODCALLTYPE *AddRef )(
  549. ICatInformation * This);
  550. ULONG ( STDMETHODCALLTYPE *Release )(
  551. ICatInformation * This);
  552. HRESULT ( STDMETHODCALLTYPE *EnumCategories )(
  553. ICatInformation * This,
  554. /* [in] */ LCID lcid,
  555. /* [out] */ IEnumCATEGORYINFO **ppenumCategoryInfo);
  556. HRESULT ( STDMETHODCALLTYPE *GetCategoryDesc )(
  557. ICatInformation * This,
  558. /* [in] */ REFCATID rcatid,
  559. /* [in] */ LCID lcid,
  560. /* [out] */ LPWSTR *pszDesc);
  561. /* [local] */ HRESULT ( STDMETHODCALLTYPE *EnumClassesOfCategories )(
  562. ICatInformation * This,
  563. /* [in] */ ULONG cImplemented,
  564. /* [size_is][in] */ CATID rgcatidImpl[ ],
  565. /* [in] */ ULONG cRequired,
  566. /* [size_is][in] */ CATID rgcatidReq[ ],
  567. /* [out] */ IEnumGUID **ppenumClsid);
  568. /* [local] */ HRESULT ( STDMETHODCALLTYPE *IsClassOfCategories )(
  569. ICatInformation * This,
  570. /* [in] */ REFCLSID rclsid,
  571. /* [in] */ ULONG cImplemented,
  572. /* [size_is][in] */ CATID rgcatidImpl[ ],
  573. /* [in] */ ULONG cRequired,
  574. /* [size_is][in] */ CATID rgcatidReq[ ]);
  575. HRESULT ( STDMETHODCALLTYPE *EnumImplCategoriesOfClass )(
  576. ICatInformation * This,
  577. /* [in] */ REFCLSID rclsid,
  578. /* [out] */ IEnumGUID **ppenumCatid);
  579. HRESULT ( STDMETHODCALLTYPE *EnumReqCategoriesOfClass )(
  580. ICatInformation * This,
  581. /* [in] */ REFCLSID rclsid,
  582. /* [out] */ IEnumGUID **ppenumCatid);
  583. END_INTERFACE
  584. } ICatInformationVtbl;
  585. interface ICatInformation
  586. {
  587. CONST_VTBL struct ICatInformationVtbl *lpVtbl;
  588. };
  589. #ifdef COBJMACROS
  590. #define ICatInformation_QueryInterface(This,riid,ppvObject) \
  591. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  592. #define ICatInformation_AddRef(This) \
  593. (This)->lpVtbl -> AddRef(This)
  594. #define ICatInformation_Release(This) \
  595. (This)->lpVtbl -> Release(This)
  596. #define ICatInformation_EnumCategories(This,lcid,ppenumCategoryInfo) \
  597. (This)->lpVtbl -> EnumCategories(This,lcid,ppenumCategoryInfo)
  598. #define ICatInformation_GetCategoryDesc(This,rcatid,lcid,pszDesc) \
  599. (This)->lpVtbl -> GetCategoryDesc(This,rcatid,lcid,pszDesc)
  600. #define ICatInformation_EnumClassesOfCategories(This,cImplemented,rgcatidImpl,cRequired,rgcatidReq,ppenumClsid) \
  601. (This)->lpVtbl -> EnumClassesOfCategories(This,cImplemented,rgcatidImpl,cRequired,rgcatidReq,ppenumClsid)
  602. #define ICatInformation_IsClassOfCategories(This,rclsid,cImplemented,rgcatidImpl,cRequired,rgcatidReq) \
  603. (This)->lpVtbl -> IsClassOfCategories(This,rclsid,cImplemented,rgcatidImpl,cRequired,rgcatidReq)
  604. #define ICatInformation_EnumImplCategoriesOfClass(This,rclsid,ppenumCatid) \
  605. (This)->lpVtbl -> EnumImplCategoriesOfClass(This,rclsid,ppenumCatid)
  606. #define ICatInformation_EnumReqCategoriesOfClass(This,rclsid,ppenumCatid) \
  607. (This)->lpVtbl -> EnumReqCategoriesOfClass(This,rclsid,ppenumCatid)
  608. #endif /* COBJMACROS */
  609. #endif /* C style interface */
  610. HRESULT STDMETHODCALLTYPE ICatInformation_EnumCategories_Proxy(
  611. ICatInformation * This,
  612. /* [in] */ LCID lcid,
  613. /* [out] */ IEnumCATEGORYINFO **ppenumCategoryInfo);
  614. void __RPC_STUB ICatInformation_EnumCategories_Stub(
  615. IRpcStubBuffer *This,
  616. IRpcChannelBuffer *_pRpcChannelBuffer,
  617. PRPC_MESSAGE _pRpcMessage,
  618. DWORD *_pdwStubPhase);
  619. HRESULT STDMETHODCALLTYPE ICatInformation_GetCategoryDesc_Proxy(
  620. ICatInformation * This,
  621. /* [in] */ REFCATID rcatid,
  622. /* [in] */ LCID lcid,
  623. /* [out] */ LPWSTR *pszDesc);
  624. void __RPC_STUB ICatInformation_GetCategoryDesc_Stub(
  625. IRpcStubBuffer *This,
  626. IRpcChannelBuffer *_pRpcChannelBuffer,
  627. PRPC_MESSAGE _pRpcMessage,
  628. DWORD *_pdwStubPhase);
  629. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICatInformation_RemoteEnumClassesOfCategories_Proxy(
  630. ICatInformation * This,
  631. /* [in] */ ULONG cImplemented,
  632. /* [size_is][unique][in] */ CATID rgcatidImpl[ ],
  633. /* [in] */ ULONG cRequired,
  634. /* [size_is][unique][in] */ CATID rgcatidReq[ ],
  635. /* [out] */ IEnumGUID **ppenumClsid);
  636. void __RPC_STUB ICatInformation_RemoteEnumClassesOfCategories_Stub(
  637. IRpcStubBuffer *This,
  638. IRpcChannelBuffer *_pRpcChannelBuffer,
  639. PRPC_MESSAGE _pRpcMessage,
  640. DWORD *_pdwStubPhase);
  641. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICatInformation_RemoteIsClassOfCategories_Proxy(
  642. ICatInformation * This,
  643. /* [in] */ REFCLSID rclsid,
  644. /* [in] */ ULONG cImplemented,
  645. /* [size_is][unique][in] */ CATID rgcatidImpl[ ],
  646. /* [in] */ ULONG cRequired,
  647. /* [size_is][unique][in] */ CATID rgcatidReq[ ]);
  648. void __RPC_STUB ICatInformation_RemoteIsClassOfCategories_Stub(
  649. IRpcStubBuffer *This,
  650. IRpcChannelBuffer *_pRpcChannelBuffer,
  651. PRPC_MESSAGE _pRpcMessage,
  652. DWORD *_pdwStubPhase);
  653. HRESULT STDMETHODCALLTYPE ICatInformation_EnumImplCategoriesOfClass_Proxy(
  654. ICatInformation * This,
  655. /* [in] */ REFCLSID rclsid,
  656. /* [out] */ IEnumGUID **ppenumCatid);
  657. void __RPC_STUB ICatInformation_EnumImplCategoriesOfClass_Stub(
  658. IRpcStubBuffer *This,
  659. IRpcChannelBuffer *_pRpcChannelBuffer,
  660. PRPC_MESSAGE _pRpcMessage,
  661. DWORD *_pdwStubPhase);
  662. HRESULT STDMETHODCALLTYPE ICatInformation_EnumReqCategoriesOfClass_Proxy(
  663. ICatInformation * This,
  664. /* [in] */ REFCLSID rclsid,
  665. /* [out] */ IEnumGUID **ppenumCatid);
  666. void __RPC_STUB ICatInformation_EnumReqCategoriesOfClass_Stub(
  667. IRpcStubBuffer *This,
  668. IRpcChannelBuffer *_pRpcChannelBuffer,
  669. PRPC_MESSAGE _pRpcMessage,
  670. DWORD *_pdwStubPhase);
  671. #endif /* __ICatInformation_INTERFACE_DEFINED__ */
  672. /* interface __MIDL_itf_comcat_0012 */
  673. /* [local] */
  674. #endif
  675. extern RPC_IF_HANDLE __MIDL_itf_comcat_0012_v0_0_c_ifspec;
  676. extern RPC_IF_HANDLE __MIDL_itf_comcat_0012_v0_0_s_ifspec;
  677. /* Additional Prototypes for ALL interfaces */
  678. /* [local] */ HRESULT STDMETHODCALLTYPE ICatInformation_EnumClassesOfCategories_Proxy(
  679. ICatInformation * This,
  680. /* [in] */ ULONG cImplemented,
  681. /* [size_is][in] */ CATID rgcatidImpl[ ],
  682. /* [in] */ ULONG cRequired,
  683. /* [size_is][in] */ CATID rgcatidReq[ ],
  684. /* [out] */ IEnumGUID **ppenumClsid);
  685. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICatInformation_EnumClassesOfCategories_Stub(
  686. ICatInformation * This,
  687. /* [in] */ ULONG cImplemented,
  688. /* [size_is][unique][in] */ CATID rgcatidImpl[ ],
  689. /* [in] */ ULONG cRequired,
  690. /* [size_is][unique][in] */ CATID rgcatidReq[ ],
  691. /* [out] */ IEnumGUID **ppenumClsid);
  692. /* [local] */ HRESULT STDMETHODCALLTYPE ICatInformation_IsClassOfCategories_Proxy(
  693. ICatInformation * This,
  694. /* [in] */ REFCLSID rclsid,
  695. /* [in] */ ULONG cImplemented,
  696. /* [size_is][in] */ CATID rgcatidImpl[ ],
  697. /* [in] */ ULONG cRequired,
  698. /* [size_is][in] */ CATID rgcatidReq[ ]);
  699. /* [call_as] */ HRESULT STDMETHODCALLTYPE ICatInformation_IsClassOfCategories_Stub(
  700. ICatInformation * This,
  701. /* [in] */ REFCLSID rclsid,
  702. /* [in] */ ULONG cImplemented,
  703. /* [size_is][unique][in] */ CATID rgcatidImpl[ ],
  704. /* [in] */ ULONG cRequired,
  705. /* [size_is][unique][in] */ CATID rgcatidReq[ ]);
  706. /* end of Additional Prototypes */
  707. #ifdef __cplusplus
  708. }
  709. #endif
  710. #endif