Source code of Windows XP (NT5)
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.

3331 lines
104 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3. /* File created by MIDL compiler version 6.00.0328 */
  4. /* Compiler settings for umi.idl:
  5. Oicf (OptLev=i2), W1, Zp8, env=Win32 (32b run)
  6. protocol : dce , ms_ext, c_ext
  7. error checks: allocation ref bounds_check enum stub_data
  8. VC __declspec() decoration level:
  9. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10. DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING( )
  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__ 440
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __umi_h__
  20. #define __umi_h__
  21. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  22. #pragma once
  23. #endif
  24. /* Forward Declarations */
  25. #ifndef __IUmiPropList_FWD_DEFINED__
  26. #define __IUmiPropList_FWD_DEFINED__
  27. typedef interface IUmiPropList IUmiPropList;
  28. #endif /* __IUmiPropList_FWD_DEFINED__ */
  29. #ifndef __IUmiBaseObject_FWD_DEFINED__
  30. #define __IUmiBaseObject_FWD_DEFINED__
  31. typedef interface IUmiBaseObject IUmiBaseObject;
  32. #endif /* __IUmiBaseObject_FWD_DEFINED__ */
  33. #ifndef __IUmiObject_FWD_DEFINED__
  34. #define __IUmiObject_FWD_DEFINED__
  35. typedef interface IUmiObject IUmiObject;
  36. #endif /* __IUmiObject_FWD_DEFINED__ */
  37. #ifndef __IUmiConnection_FWD_DEFINED__
  38. #define __IUmiConnection_FWD_DEFINED__
  39. typedef interface IUmiConnection IUmiConnection;
  40. #endif /* __IUmiConnection_FWD_DEFINED__ */
  41. #ifndef __IUmiContainer_FWD_DEFINED__
  42. #define __IUmiContainer_FWD_DEFINED__
  43. typedef interface IUmiContainer IUmiContainer;
  44. #endif /* __IUmiContainer_FWD_DEFINED__ */
  45. #ifndef __IUmiCursor_FWD_DEFINED__
  46. #define __IUmiCursor_FWD_DEFINED__
  47. typedef interface IUmiCursor IUmiCursor;
  48. #endif /* __IUmiCursor_FWD_DEFINED__ */
  49. #ifndef __IUmiObjectSink_FWD_DEFINED__
  50. #define __IUmiObjectSink_FWD_DEFINED__
  51. typedef interface IUmiObjectSink IUmiObjectSink;
  52. #endif /* __IUmiObjectSink_FWD_DEFINED__ */
  53. #ifndef __IUmiURLKeyList_FWD_DEFINED__
  54. #define __IUmiURLKeyList_FWD_DEFINED__
  55. typedef interface IUmiURLKeyList IUmiURLKeyList;
  56. #endif /* __IUmiURLKeyList_FWD_DEFINED__ */
  57. #ifndef __IUmiURL_FWD_DEFINED__
  58. #define __IUmiURL_FWD_DEFINED__
  59. typedef interface IUmiURL IUmiURL;
  60. #endif /* __IUmiURL_FWD_DEFINED__ */
  61. #ifndef __IUmiQuery_FWD_DEFINED__
  62. #define __IUmiQuery_FWD_DEFINED__
  63. typedef interface IUmiQuery IUmiQuery;
  64. #endif /* __IUmiQuery_FWD_DEFINED__ */
  65. #ifndef __IUmiCustomInterfaceFactory_FWD_DEFINED__
  66. #define __IUmiCustomInterfaceFactory_FWD_DEFINED__
  67. typedef interface IUmiCustomInterfaceFactory IUmiCustomInterfaceFactory;
  68. #endif /* __IUmiCustomInterfaceFactory_FWD_DEFINED__ */
  69. #ifndef __UmiDefURL_FWD_DEFINED__
  70. #define __UmiDefURL_FWD_DEFINED__
  71. #ifdef __cplusplus
  72. typedef class UmiDefURL UmiDefURL;
  73. #else
  74. typedef struct UmiDefURL UmiDefURL;
  75. #endif /* __cplusplus */
  76. #endif /* __UmiDefURL_FWD_DEFINED__ */
  77. #ifdef __cplusplus
  78. extern "C"{
  79. #endif
  80. void __RPC_FAR * __RPC_USER MIDL_user_allocate(size_t);
  81. void __RPC_USER MIDL_user_free( void __RPC_FAR * );
  82. #ifndef __UMI_V6_LIBRARY_DEFINED__
  83. #define __UMI_V6_LIBRARY_DEFINED__
  84. /* library UMI_V6 */
  85. /* [uuid] */
  86. typedef
  87. enum tag_UMI_TYPE_ENUMERATION
  88. { UMI_TYPE_NULL = 0,
  89. UMI_TYPE_I1 = 1,
  90. UMI_TYPE_I2 = 2,
  91. UMI_TYPE_I4 = 3,
  92. UMI_TYPE_I8 = 4,
  93. UMI_TYPE_UI1 = 5,
  94. UMI_TYPE_UI2 = 6,
  95. UMI_TYPE_UI4 = 7,
  96. UMI_TYPE_UI8 = 8,
  97. UMI_TYPE_R4 = 9,
  98. UMI_TYPE_R8 = 10,
  99. UMI_TYPE_FILETIME = 12,
  100. UMI_TYPE_SYSTEMTIME = 13,
  101. UMI_TYPE_BOOL = 14,
  102. UMI_TYPE_IDISPATCH = 15,
  103. UMI_TYPE_IUNKNOWN = 16,
  104. UMI_TYPE_VARIANT = 17,
  105. UMI_TYPE_LPWSTR = 20,
  106. UMI_TYPE_OCTETSTRING = 21,
  107. UMI_TYPE_UMIARRAY = 22,
  108. UMI_TYPE_DISCOVERY = 23,
  109. UMI_TYPE_UNDEFINED = 24,
  110. UMI_TYPE_DEFAULT = 25,
  111. UMI_TYPE_ARRAY_FLAG = 0x2000
  112. } UMI_TYPE_ENUMERATION;
  113. typedef ULONG UMI_TYPE;
  114. typedef /* [public] */
  115. enum __MIDL___MIDL_itf_umi_0000_0001
  116. { UMI_GENUS_CLASS = 1,
  117. UMI_GENUS_INSTANCE = 2
  118. } UMI_GENUS_TYPE;
  119. typedef /* [public] */
  120. enum __MIDL___MIDL_itf_umi_0000_0002
  121. { UMI_DONT_COMMIT_SECURITY_DESCRIPTOR = 0x10
  122. } UMI_COMMIT_FLAGS;
  123. typedef /* [public] */
  124. enum __MIDL___MIDL_itf_umi_0000_0003
  125. { UMI_FLAG_GETPROPS_ALL = 1,
  126. UMI_FLAG_GETPROPS_SCHEMA = 0x2,
  127. UMI_MASK_GETPROPS_PROP = 0xff,
  128. UMI_FLAG_GETPROPS_NAMES = 0x100,
  129. UMI_MASK_GETPROPS_EXT = 0x100
  130. } UMI_GETPROPS_FLAGS;
  131. typedef /* [public] */
  132. enum __MIDL___MIDL_itf_umi_0000_0004
  133. { UMI_FLAG_OWNER_SECURITY_INFORMATION = 0x1,
  134. UMI_FLAG_GROUP_SECURITY_INFORMATION = 0x2,
  135. UMI_FLAG_DACL_SECURITY_INFORMATION = 0x4,
  136. UMI_FLAG_SACL_SECURITY_INFORMATION = 0x8,
  137. UMI_SECURITY_MASK = 0xf,
  138. UMI_FLAG_PROVIDER_CACHE = 0x10,
  139. UMI_FLAG_PROPERTY_ORIGIN = 0x20
  140. } UMI_GET_FLAGS;
  141. typedef /* [public] */
  142. enum __MIDL___MIDL_itf_umi_0000_0005
  143. { UMI_FLAG_REFRESH_ALL = 0,
  144. UMI_FLAG_REFRESH_PARTIAL = 1
  145. } UMI_REFRESH_FLAGS;
  146. typedef /* [public] */
  147. enum __MIDL___MIDL_itf_umi_0000_0006
  148. { UMI_OPERATION_NONE = 0,
  149. UMI_OPERATION_APPEND = 1,
  150. UMI_OPERATION_UPDATE = 2,
  151. UMI_OPERATION_EMPTY = 3,
  152. UMI_OPERATION_INSERT_AT = 4,
  153. UMI_OPERATION_REMOVE_AT = 5,
  154. UMI_OPERATION_DELETE_AT = 6,
  155. UMI_OPERATION_DELETE_FIRST_MATCH = 7,
  156. UMI_OPERATION_DELETE_ALL_MATCHES = 8,
  157. UMI_OPERATION_RESTORE_DEFAULT = 9
  158. } UMI_PROP_INSTRUCTION;
  159. typedef /* [public] */
  160. enum __MIDL___MIDL_itf_umi_0000_0007
  161. { UMI_OPERATION_INSTANCE = 0x1000,
  162. UMI_OPERATION_CLASS = 0x2000
  163. } UMI_OPERATION_PATH;
  164. typedef /* [public] */
  165. enum __MIDL___MIDL_itf_umi_0000_0008
  166. { UMIPATH_CREATE_AS_NATIVE = 0x8000,
  167. UMIPATH_CREATE_AS_EITHER = 0x4000,
  168. UMIPATH_CREATE_ACCEPT_RELATIVE = 0x4
  169. } tag_UMI_PATH_CREATE_FLAG;
  170. typedef
  171. enum tag_WMI_PATH_STATUS_FLAG
  172. { UMIPATH_INFO_NATIVE_STRING = 0x1,
  173. UMIPATH_INFO_RELATIVE_PATH = 0x2,
  174. UMIPATH_INFO_INSTANCE_PATH = 0x4,
  175. UMIPATH_INFO_CLASS_PATH = 0x8,
  176. UMIPATH_INFO_SINGLETON_PATH = 0x10
  177. } tag_UMI_PATH_STATUS_FLAG;
  178. typedef /* [public] */
  179. enum __MIDL___MIDL_itf_umi_0000_0009
  180. { UMI_S_NO_ERROR = 0,
  181. UMI_E_CONNECTION_FAILURE = 0x80041001,
  182. UMI_E_TIMED_OUT = 0x80041002,
  183. UMI_E_TYPE_MISMATCH = 0x80041003,
  184. UMI_E_NOT_FOUND = 0x80041004,
  185. UMI_E_INVALID_FLAGS = 0x80041005,
  186. UMI_E_UNSUPPORTED_FLAGS = 0x80041006,
  187. UMI_E_SYNCHRONIZATION_REQUIRED = 0x80041007,
  188. UMI_E_UNSUPPORTED_OPERATION = 0x80041008,
  189. UMI_E_TRANSACTION_FAILURE = 0x80041009,
  190. UMI_E_UNBOUND_OBJECT = 0x8004100a
  191. } UMI_STATUS;
  192. typedef struct tag_UMI_OCTET_STRING
  193. {
  194. ULONG uLength;
  195. byte __RPC_FAR *lpValue;
  196. } UMI_OCTET_STRING;
  197. typedef struct tag_UMI_OCTET_STRING __RPC_FAR *PUMI_OCTET_STRING;
  198. typedef struct tag_UMI_COM_OBJECT
  199. {
  200. IID __RPC_FAR *priid;
  201. LPVOID pInterface;
  202. } UMI_COM_OBJECT;
  203. typedef struct tag_UMI_COM_OBJECT __RPC_FAR *PUMI_COM_OBJECT;
  204. typedef /* [public][public][public][public][public][public][public][public][public][public] */ union __MIDL___MIDL_itf_umi_0000_0010
  205. {
  206. CHAR cValue[ 1 ];
  207. UCHAR ucValue[ 1 ];
  208. WCHAR wcValue[ 1 ];
  209. WORD wValue[ 1 ];
  210. DWORD dwValue[ 1 ];
  211. LONG lValue[ 1 ];
  212. ULONG uValue[ 1 ];
  213. BYTE byteValue[ 1 ];
  214. BOOL bValue[ 1 ];
  215. LPWSTR pszStrValue[ 1 ];
  216. FILETIME fileTimeValue[ 1 ];
  217. SYSTEMTIME sysTimeValue[ 1 ];
  218. double dblValue[ 1 ];
  219. unsigned __int64 uValue64[ 1 ];
  220. __int64 nValue64[ 1 ];
  221. UMI_OCTET_STRING octetStr[ 1 ];
  222. UMI_COM_OBJECT comObject[ 1 ];
  223. } UMI_VALUE;
  224. typedef union __MIDL___MIDL_itf_umi_0000_0010 __RPC_FAR *PUMI_VALUE;
  225. typedef /* [public][public][public][public][public][public][public][public] */ struct __MIDL___MIDL_itf_umi_0000_0011
  226. {
  227. UMI_TYPE uType;
  228. ULONG uCount;
  229. ULONG uOperationType;
  230. LPWSTR pszPropertyName;
  231. UMI_VALUE __RPC_FAR *pUmiValue;
  232. } UMI_PROPERTY;
  233. typedef struct __MIDL___MIDL_itf_umi_0000_0011 __RPC_FAR *PUMI_PROPERTY;
  234. typedef /* [public][public][public][public][public][public] */ struct __MIDL___MIDL_itf_umi_0000_0012
  235. {
  236. ULONG uCount;
  237. UMI_PROPERTY __RPC_FAR *pPropArray;
  238. } UMI_PROPERTY_VALUES;
  239. typedef struct __MIDL___MIDL_itf_umi_0000_0012 __RPC_FAR *PUMI_PROPERTY_VALUES;
  240. EXTERN_C const IID LIBID_UMI_V6;
  241. #ifndef __IUmiPropList_INTERFACE_DEFINED__
  242. #define __IUmiPropList_INTERFACE_DEFINED__
  243. /* interface IUmiPropList */
  244. /* [uuid][local][object] */
  245. EXTERN_C const IID IID_IUmiPropList;
  246. #if defined(__cplusplus) && !defined(CINTERFACE)
  247. MIDL_INTERFACE("12575a7b-d9db-11d3-a11f-00105a1f515a")
  248. IUmiPropList : public IUnknown
  249. {
  250. public:
  251. virtual HRESULT STDMETHODCALLTYPE Put(
  252. /* [in] */ LPCWSTR pszName,
  253. /* [in] */ ULONG uFlags,
  254. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp) = 0;
  255. virtual HRESULT STDMETHODCALLTYPE Get(
  256. /* [in] */ LPCWSTR pszName,
  257. /* [in] */ ULONG uFlags,
  258. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp) = 0;
  259. virtual HRESULT STDMETHODCALLTYPE GetAt(
  260. /* [in] */ LPCWSTR pszName,
  261. /* [in] */ ULONG uFlags,
  262. /* [in] */ ULONG uBufferLength,
  263. /* [out] */ LPVOID pExistingMem) = 0;
  264. virtual HRESULT STDMETHODCALLTYPE GetAs(
  265. /* [in] */ LPCWSTR pszName,
  266. /* [in] */ ULONG uFlags,
  267. /* [in] */ ULONG uCoercionType,
  268. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp) = 0;
  269. virtual HRESULT STDMETHODCALLTYPE FreeMemory(
  270. ULONG uReserved,
  271. LPVOID pMem) = 0;
  272. virtual HRESULT STDMETHODCALLTYPE Delete(
  273. /* [in] */ LPCWSTR pszName,
  274. /* [in] */ ULONG uFlags) = 0;
  275. virtual HRESULT STDMETHODCALLTYPE GetProps(
  276. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  277. /* [in] */ ULONG uNameCount,
  278. /* [in] */ ULONG uFlags,
  279. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps) = 0;
  280. virtual HRESULT STDMETHODCALLTYPE PutProps(
  281. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  282. /* [in] */ ULONG uNameCount,
  283. /* [in] */ ULONG uFlags,
  284. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps) = 0;
  285. virtual HRESULT STDMETHODCALLTYPE PutFrom(
  286. /* [in] */ LPCWSTR pszName,
  287. /* [in] */ ULONG uFlags,
  288. /* [in] */ ULONG uBufferLength,
  289. /* [in] */ LPVOID pExistingMem) = 0;
  290. };
  291. #else /* C style interface */
  292. typedef struct IUmiPropListVtbl
  293. {
  294. BEGIN_INTERFACE
  295. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  296. IUmiPropList __RPC_FAR * This,
  297. /* [in] */ REFIID riid,
  298. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  299. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  300. IUmiPropList __RPC_FAR * This);
  301. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  302. IUmiPropList __RPC_FAR * This);
  303. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Put )(
  304. IUmiPropList __RPC_FAR * This,
  305. /* [in] */ LPCWSTR pszName,
  306. /* [in] */ ULONG uFlags,
  307. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp);
  308. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Get )(
  309. IUmiPropList __RPC_FAR * This,
  310. /* [in] */ LPCWSTR pszName,
  311. /* [in] */ ULONG uFlags,
  312. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  313. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAt )(
  314. IUmiPropList __RPC_FAR * This,
  315. /* [in] */ LPCWSTR pszName,
  316. /* [in] */ ULONG uFlags,
  317. /* [in] */ ULONG uBufferLength,
  318. /* [out] */ LPVOID pExistingMem);
  319. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAs )(
  320. IUmiPropList __RPC_FAR * This,
  321. /* [in] */ LPCWSTR pszName,
  322. /* [in] */ ULONG uFlags,
  323. /* [in] */ ULONG uCoercionType,
  324. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  325. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeMemory )(
  326. IUmiPropList __RPC_FAR * This,
  327. ULONG uReserved,
  328. LPVOID pMem);
  329. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )(
  330. IUmiPropList __RPC_FAR * This,
  331. /* [in] */ LPCWSTR pszName,
  332. /* [in] */ ULONG uFlags);
  333. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProps )(
  334. IUmiPropList __RPC_FAR * This,
  335. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  336. /* [in] */ ULONG uNameCount,
  337. /* [in] */ ULONG uFlags,
  338. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps);
  339. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutProps )(
  340. IUmiPropList __RPC_FAR * This,
  341. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  342. /* [in] */ ULONG uNameCount,
  343. /* [in] */ ULONG uFlags,
  344. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps);
  345. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutFrom )(
  346. IUmiPropList __RPC_FAR * This,
  347. /* [in] */ LPCWSTR pszName,
  348. /* [in] */ ULONG uFlags,
  349. /* [in] */ ULONG uBufferLength,
  350. /* [in] */ LPVOID pExistingMem);
  351. END_INTERFACE
  352. } IUmiPropListVtbl;
  353. interface IUmiPropList
  354. {
  355. CONST_VTBL struct IUmiPropListVtbl __RPC_FAR *lpVtbl;
  356. };
  357. #ifdef COBJMACROS
  358. #define IUmiPropList_QueryInterface(This,riid,ppvObject) \
  359. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  360. #define IUmiPropList_AddRef(This) \
  361. (This)->lpVtbl -> AddRef(This)
  362. #define IUmiPropList_Release(This) \
  363. (This)->lpVtbl -> Release(This)
  364. #define IUmiPropList_Put(This,pszName,uFlags,pProp) \
  365. (This)->lpVtbl -> Put(This,pszName,uFlags,pProp)
  366. #define IUmiPropList_Get(This,pszName,uFlags,pProp) \
  367. (This)->lpVtbl -> Get(This,pszName,uFlags,pProp)
  368. #define IUmiPropList_GetAt(This,pszName,uFlags,uBufferLength,pExistingMem) \
  369. (This)->lpVtbl -> GetAt(This,pszName,uFlags,uBufferLength,pExistingMem)
  370. #define IUmiPropList_GetAs(This,pszName,uFlags,uCoercionType,pProp) \
  371. (This)->lpVtbl -> GetAs(This,pszName,uFlags,uCoercionType,pProp)
  372. #define IUmiPropList_FreeMemory(This,uReserved,pMem) \
  373. (This)->lpVtbl -> FreeMemory(This,uReserved,pMem)
  374. #define IUmiPropList_Delete(This,pszName,uFlags) \
  375. (This)->lpVtbl -> Delete(This,pszName,uFlags)
  376. #define IUmiPropList_GetProps(This,pszNames,uNameCount,uFlags,pProps) \
  377. (This)->lpVtbl -> GetProps(This,pszNames,uNameCount,uFlags,pProps)
  378. #define IUmiPropList_PutProps(This,pszNames,uNameCount,uFlags,pProps) \
  379. (This)->lpVtbl -> PutProps(This,pszNames,uNameCount,uFlags,pProps)
  380. #define IUmiPropList_PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem) \
  381. (This)->lpVtbl -> PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem)
  382. #endif /* COBJMACROS */
  383. #endif /* C style interface */
  384. HRESULT STDMETHODCALLTYPE IUmiPropList_Put_Proxy(
  385. IUmiPropList __RPC_FAR * This,
  386. /* [in] */ LPCWSTR pszName,
  387. /* [in] */ ULONG uFlags,
  388. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp);
  389. void __RPC_STUB IUmiPropList_Put_Stub(
  390. IRpcStubBuffer *This,
  391. IRpcChannelBuffer *_pRpcChannelBuffer,
  392. PRPC_MESSAGE _pRpcMessage,
  393. DWORD *_pdwStubPhase);
  394. HRESULT STDMETHODCALLTYPE IUmiPropList_Get_Proxy(
  395. IUmiPropList __RPC_FAR * This,
  396. /* [in] */ LPCWSTR pszName,
  397. /* [in] */ ULONG uFlags,
  398. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  399. void __RPC_STUB IUmiPropList_Get_Stub(
  400. IRpcStubBuffer *This,
  401. IRpcChannelBuffer *_pRpcChannelBuffer,
  402. PRPC_MESSAGE _pRpcMessage,
  403. DWORD *_pdwStubPhase);
  404. HRESULT STDMETHODCALLTYPE IUmiPropList_GetAt_Proxy(
  405. IUmiPropList __RPC_FAR * This,
  406. /* [in] */ LPCWSTR pszName,
  407. /* [in] */ ULONG uFlags,
  408. /* [in] */ ULONG uBufferLength,
  409. /* [out] */ LPVOID pExistingMem);
  410. void __RPC_STUB IUmiPropList_GetAt_Stub(
  411. IRpcStubBuffer *This,
  412. IRpcChannelBuffer *_pRpcChannelBuffer,
  413. PRPC_MESSAGE _pRpcMessage,
  414. DWORD *_pdwStubPhase);
  415. HRESULT STDMETHODCALLTYPE IUmiPropList_GetAs_Proxy(
  416. IUmiPropList __RPC_FAR * This,
  417. /* [in] */ LPCWSTR pszName,
  418. /* [in] */ ULONG uFlags,
  419. /* [in] */ ULONG uCoercionType,
  420. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  421. void __RPC_STUB IUmiPropList_GetAs_Stub(
  422. IRpcStubBuffer *This,
  423. IRpcChannelBuffer *_pRpcChannelBuffer,
  424. PRPC_MESSAGE _pRpcMessage,
  425. DWORD *_pdwStubPhase);
  426. HRESULT STDMETHODCALLTYPE IUmiPropList_FreeMemory_Proxy(
  427. IUmiPropList __RPC_FAR * This,
  428. ULONG uReserved,
  429. LPVOID pMem);
  430. void __RPC_STUB IUmiPropList_FreeMemory_Stub(
  431. IRpcStubBuffer *This,
  432. IRpcChannelBuffer *_pRpcChannelBuffer,
  433. PRPC_MESSAGE _pRpcMessage,
  434. DWORD *_pdwStubPhase);
  435. HRESULT STDMETHODCALLTYPE IUmiPropList_Delete_Proxy(
  436. IUmiPropList __RPC_FAR * This,
  437. /* [in] */ LPCWSTR pszName,
  438. /* [in] */ ULONG uFlags);
  439. void __RPC_STUB IUmiPropList_Delete_Stub(
  440. IRpcStubBuffer *This,
  441. IRpcChannelBuffer *_pRpcChannelBuffer,
  442. PRPC_MESSAGE _pRpcMessage,
  443. DWORD *_pdwStubPhase);
  444. HRESULT STDMETHODCALLTYPE IUmiPropList_GetProps_Proxy(
  445. IUmiPropList __RPC_FAR * This,
  446. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  447. /* [in] */ ULONG uNameCount,
  448. /* [in] */ ULONG uFlags,
  449. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps);
  450. void __RPC_STUB IUmiPropList_GetProps_Stub(
  451. IRpcStubBuffer *This,
  452. IRpcChannelBuffer *_pRpcChannelBuffer,
  453. PRPC_MESSAGE _pRpcMessage,
  454. DWORD *_pdwStubPhase);
  455. HRESULT STDMETHODCALLTYPE IUmiPropList_PutProps_Proxy(
  456. IUmiPropList __RPC_FAR * This,
  457. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  458. /* [in] */ ULONG uNameCount,
  459. /* [in] */ ULONG uFlags,
  460. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps);
  461. void __RPC_STUB IUmiPropList_PutProps_Stub(
  462. IRpcStubBuffer *This,
  463. IRpcChannelBuffer *_pRpcChannelBuffer,
  464. PRPC_MESSAGE _pRpcMessage,
  465. DWORD *_pdwStubPhase);
  466. HRESULT STDMETHODCALLTYPE IUmiPropList_PutFrom_Proxy(
  467. IUmiPropList __RPC_FAR * This,
  468. /* [in] */ LPCWSTR pszName,
  469. /* [in] */ ULONG uFlags,
  470. /* [in] */ ULONG uBufferLength,
  471. /* [in] */ LPVOID pExistingMem);
  472. void __RPC_STUB IUmiPropList_PutFrom_Stub(
  473. IRpcStubBuffer *This,
  474. IRpcChannelBuffer *_pRpcChannelBuffer,
  475. PRPC_MESSAGE _pRpcMessage,
  476. DWORD *_pdwStubPhase);
  477. #endif /* __IUmiPropList_INTERFACE_DEFINED__ */
  478. #ifndef __IUmiBaseObject_INTERFACE_DEFINED__
  479. #define __IUmiBaseObject_INTERFACE_DEFINED__
  480. /* interface IUmiBaseObject */
  481. /* [uuid][local][object] */
  482. EXTERN_C const IID IID_IUmiBaseObject;
  483. #if defined(__cplusplus) && !defined(CINTERFACE)
  484. MIDL_INTERFACE("12575a7c-d9db-11d3-a11f-00105a1f515a")
  485. IUmiBaseObject : public IUmiPropList
  486. {
  487. public:
  488. virtual HRESULT STDMETHODCALLTYPE GetLastStatus(
  489. /* [in] */ ULONG uFlags,
  490. /* [out] */ ULONG __RPC_FAR *puSpecificStatus,
  491. /* [in] */ REFIID riid,
  492. /* [iid_is][out] */ LPVOID __RPC_FAR *pStatusObj) = 0;
  493. virtual HRESULT STDMETHODCALLTYPE GetInterfacePropList(
  494. /* [in] */ ULONG uFlags,
  495. /* [out] */ IUmiPropList __RPC_FAR *__RPC_FAR *pPropList) = 0;
  496. };
  497. #else /* C style interface */
  498. typedef struct IUmiBaseObjectVtbl
  499. {
  500. BEGIN_INTERFACE
  501. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  502. IUmiBaseObject __RPC_FAR * This,
  503. /* [in] */ REFIID riid,
  504. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  505. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  506. IUmiBaseObject __RPC_FAR * This);
  507. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  508. IUmiBaseObject __RPC_FAR * This);
  509. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Put )(
  510. IUmiBaseObject __RPC_FAR * This,
  511. /* [in] */ LPCWSTR pszName,
  512. /* [in] */ ULONG uFlags,
  513. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp);
  514. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Get )(
  515. IUmiBaseObject __RPC_FAR * This,
  516. /* [in] */ LPCWSTR pszName,
  517. /* [in] */ ULONG uFlags,
  518. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  519. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAt )(
  520. IUmiBaseObject __RPC_FAR * This,
  521. /* [in] */ LPCWSTR pszName,
  522. /* [in] */ ULONG uFlags,
  523. /* [in] */ ULONG uBufferLength,
  524. /* [out] */ LPVOID pExistingMem);
  525. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAs )(
  526. IUmiBaseObject __RPC_FAR * This,
  527. /* [in] */ LPCWSTR pszName,
  528. /* [in] */ ULONG uFlags,
  529. /* [in] */ ULONG uCoercionType,
  530. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  531. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeMemory )(
  532. IUmiBaseObject __RPC_FAR * This,
  533. ULONG uReserved,
  534. LPVOID pMem);
  535. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )(
  536. IUmiBaseObject __RPC_FAR * This,
  537. /* [in] */ LPCWSTR pszName,
  538. /* [in] */ ULONG uFlags);
  539. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProps )(
  540. IUmiBaseObject __RPC_FAR * This,
  541. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  542. /* [in] */ ULONG uNameCount,
  543. /* [in] */ ULONG uFlags,
  544. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps);
  545. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutProps )(
  546. IUmiBaseObject __RPC_FAR * This,
  547. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  548. /* [in] */ ULONG uNameCount,
  549. /* [in] */ ULONG uFlags,
  550. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps);
  551. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutFrom )(
  552. IUmiBaseObject __RPC_FAR * This,
  553. /* [in] */ LPCWSTR pszName,
  554. /* [in] */ ULONG uFlags,
  555. /* [in] */ ULONG uBufferLength,
  556. /* [in] */ LPVOID pExistingMem);
  557. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLastStatus )(
  558. IUmiBaseObject __RPC_FAR * This,
  559. /* [in] */ ULONG uFlags,
  560. /* [out] */ ULONG __RPC_FAR *puSpecificStatus,
  561. /* [in] */ REFIID riid,
  562. /* [iid_is][out] */ LPVOID __RPC_FAR *pStatusObj);
  563. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInterfacePropList )(
  564. IUmiBaseObject __RPC_FAR * This,
  565. /* [in] */ ULONG uFlags,
  566. /* [out] */ IUmiPropList __RPC_FAR *__RPC_FAR *pPropList);
  567. END_INTERFACE
  568. } IUmiBaseObjectVtbl;
  569. interface IUmiBaseObject
  570. {
  571. CONST_VTBL struct IUmiBaseObjectVtbl __RPC_FAR *lpVtbl;
  572. };
  573. #ifdef COBJMACROS
  574. #define IUmiBaseObject_QueryInterface(This,riid,ppvObject) \
  575. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  576. #define IUmiBaseObject_AddRef(This) \
  577. (This)->lpVtbl -> AddRef(This)
  578. #define IUmiBaseObject_Release(This) \
  579. (This)->lpVtbl -> Release(This)
  580. #define IUmiBaseObject_Put(This,pszName,uFlags,pProp) \
  581. (This)->lpVtbl -> Put(This,pszName,uFlags,pProp)
  582. #define IUmiBaseObject_Get(This,pszName,uFlags,pProp) \
  583. (This)->lpVtbl -> Get(This,pszName,uFlags,pProp)
  584. #define IUmiBaseObject_GetAt(This,pszName,uFlags,uBufferLength,pExistingMem) \
  585. (This)->lpVtbl -> GetAt(This,pszName,uFlags,uBufferLength,pExistingMem)
  586. #define IUmiBaseObject_GetAs(This,pszName,uFlags,uCoercionType,pProp) \
  587. (This)->lpVtbl -> GetAs(This,pszName,uFlags,uCoercionType,pProp)
  588. #define IUmiBaseObject_FreeMemory(This,uReserved,pMem) \
  589. (This)->lpVtbl -> FreeMemory(This,uReserved,pMem)
  590. #define IUmiBaseObject_Delete(This,pszName,uFlags) \
  591. (This)->lpVtbl -> Delete(This,pszName,uFlags)
  592. #define IUmiBaseObject_GetProps(This,pszNames,uNameCount,uFlags,pProps) \
  593. (This)->lpVtbl -> GetProps(This,pszNames,uNameCount,uFlags,pProps)
  594. #define IUmiBaseObject_PutProps(This,pszNames,uNameCount,uFlags,pProps) \
  595. (This)->lpVtbl -> PutProps(This,pszNames,uNameCount,uFlags,pProps)
  596. #define IUmiBaseObject_PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem) \
  597. (This)->lpVtbl -> PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem)
  598. #define IUmiBaseObject_GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj) \
  599. (This)->lpVtbl -> GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj)
  600. #define IUmiBaseObject_GetInterfacePropList(This,uFlags,pPropList) \
  601. (This)->lpVtbl -> GetInterfacePropList(This,uFlags,pPropList)
  602. #endif /* COBJMACROS */
  603. #endif /* C style interface */
  604. HRESULT STDMETHODCALLTYPE IUmiBaseObject_GetLastStatus_Proxy(
  605. IUmiBaseObject __RPC_FAR * This,
  606. /* [in] */ ULONG uFlags,
  607. /* [out] */ ULONG __RPC_FAR *puSpecificStatus,
  608. /* [in] */ REFIID riid,
  609. /* [iid_is][out] */ LPVOID __RPC_FAR *pStatusObj);
  610. void __RPC_STUB IUmiBaseObject_GetLastStatus_Stub(
  611. IRpcStubBuffer *This,
  612. IRpcChannelBuffer *_pRpcChannelBuffer,
  613. PRPC_MESSAGE _pRpcMessage,
  614. DWORD *_pdwStubPhase);
  615. HRESULT STDMETHODCALLTYPE IUmiBaseObject_GetInterfacePropList_Proxy(
  616. IUmiBaseObject __RPC_FAR * This,
  617. /* [in] */ ULONG uFlags,
  618. /* [out] */ IUmiPropList __RPC_FAR *__RPC_FAR *pPropList);
  619. void __RPC_STUB IUmiBaseObject_GetInterfacePropList_Stub(
  620. IRpcStubBuffer *This,
  621. IRpcChannelBuffer *_pRpcChannelBuffer,
  622. PRPC_MESSAGE _pRpcMessage,
  623. DWORD *_pdwStubPhase);
  624. #endif /* __IUmiBaseObject_INTERFACE_DEFINED__ */
  625. #ifndef __IUmiObject_INTERFACE_DEFINED__
  626. #define __IUmiObject_INTERFACE_DEFINED__
  627. /* interface IUmiObject */
  628. /* [uuid][local][object] */
  629. EXTERN_C const IID IID_IUmiObject;
  630. #if defined(__cplusplus) && !defined(CINTERFACE)
  631. MIDL_INTERFACE("5ed7ee23-64a4-11d3-a0da-00105a1f515a")
  632. IUmiObject : public IUmiBaseObject
  633. {
  634. public:
  635. virtual HRESULT STDMETHODCALLTYPE Clone(
  636. /* [in] */ ULONG uFlags,
  637. /* [in] */ REFIID riid,
  638. /* [iid_is][out] */ LPVOID __RPC_FAR *pCopy) = 0;
  639. virtual HRESULT STDMETHODCALLTYPE CopyTo(
  640. /* [in] */ ULONG uFlags,
  641. /* [in] */ IUmiURL __RPC_FAR *pURL,
  642. /* [in] */ REFIID riid,
  643. /* [iid_is][out] */ LPVOID __RPC_FAR *pCopy) = 0;
  644. virtual HRESULT STDMETHODCALLTYPE Refresh(
  645. /* [in] */ ULONG uFlags,
  646. /* [in] */ ULONG uNameCount,
  647. /* [in] */ LPWSTR __RPC_FAR *pszNames) = 0;
  648. virtual HRESULT STDMETHODCALLTYPE Commit(
  649. /* [in] */ ULONG uFlags) = 0;
  650. };
  651. #else /* C style interface */
  652. typedef struct IUmiObjectVtbl
  653. {
  654. BEGIN_INTERFACE
  655. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  656. IUmiObject __RPC_FAR * This,
  657. /* [in] */ REFIID riid,
  658. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  659. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  660. IUmiObject __RPC_FAR * This);
  661. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  662. IUmiObject __RPC_FAR * This);
  663. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Put )(
  664. IUmiObject __RPC_FAR * This,
  665. /* [in] */ LPCWSTR pszName,
  666. /* [in] */ ULONG uFlags,
  667. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp);
  668. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Get )(
  669. IUmiObject __RPC_FAR * This,
  670. /* [in] */ LPCWSTR pszName,
  671. /* [in] */ ULONG uFlags,
  672. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  673. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAt )(
  674. IUmiObject __RPC_FAR * This,
  675. /* [in] */ LPCWSTR pszName,
  676. /* [in] */ ULONG uFlags,
  677. /* [in] */ ULONG uBufferLength,
  678. /* [out] */ LPVOID pExistingMem);
  679. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAs )(
  680. IUmiObject __RPC_FAR * This,
  681. /* [in] */ LPCWSTR pszName,
  682. /* [in] */ ULONG uFlags,
  683. /* [in] */ ULONG uCoercionType,
  684. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  685. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeMemory )(
  686. IUmiObject __RPC_FAR * This,
  687. ULONG uReserved,
  688. LPVOID pMem);
  689. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )(
  690. IUmiObject __RPC_FAR * This,
  691. /* [in] */ LPCWSTR pszName,
  692. /* [in] */ ULONG uFlags);
  693. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProps )(
  694. IUmiObject __RPC_FAR * This,
  695. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  696. /* [in] */ ULONG uNameCount,
  697. /* [in] */ ULONG uFlags,
  698. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps);
  699. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutProps )(
  700. IUmiObject __RPC_FAR * This,
  701. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  702. /* [in] */ ULONG uNameCount,
  703. /* [in] */ ULONG uFlags,
  704. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps);
  705. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutFrom )(
  706. IUmiObject __RPC_FAR * This,
  707. /* [in] */ LPCWSTR pszName,
  708. /* [in] */ ULONG uFlags,
  709. /* [in] */ ULONG uBufferLength,
  710. /* [in] */ LPVOID pExistingMem);
  711. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLastStatus )(
  712. IUmiObject __RPC_FAR * This,
  713. /* [in] */ ULONG uFlags,
  714. /* [out] */ ULONG __RPC_FAR *puSpecificStatus,
  715. /* [in] */ REFIID riid,
  716. /* [iid_is][out] */ LPVOID __RPC_FAR *pStatusObj);
  717. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInterfacePropList )(
  718. IUmiObject __RPC_FAR * This,
  719. /* [in] */ ULONG uFlags,
  720. /* [out] */ IUmiPropList __RPC_FAR *__RPC_FAR *pPropList);
  721. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clone )(
  722. IUmiObject __RPC_FAR * This,
  723. /* [in] */ ULONG uFlags,
  724. /* [in] */ REFIID riid,
  725. /* [iid_is][out] */ LPVOID __RPC_FAR *pCopy);
  726. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CopyTo )(
  727. IUmiObject __RPC_FAR * This,
  728. /* [in] */ ULONG uFlags,
  729. /* [in] */ IUmiURL __RPC_FAR *pURL,
  730. /* [in] */ REFIID riid,
  731. /* [iid_is][out] */ LPVOID __RPC_FAR *pCopy);
  732. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )(
  733. IUmiObject __RPC_FAR * This,
  734. /* [in] */ ULONG uFlags,
  735. /* [in] */ ULONG uNameCount,
  736. /* [in] */ LPWSTR __RPC_FAR *pszNames);
  737. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Commit )(
  738. IUmiObject __RPC_FAR * This,
  739. /* [in] */ ULONG uFlags);
  740. END_INTERFACE
  741. } IUmiObjectVtbl;
  742. interface IUmiObject
  743. {
  744. CONST_VTBL struct IUmiObjectVtbl __RPC_FAR *lpVtbl;
  745. };
  746. #ifdef COBJMACROS
  747. #define IUmiObject_QueryInterface(This,riid,ppvObject) \
  748. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  749. #define IUmiObject_AddRef(This) \
  750. (This)->lpVtbl -> AddRef(This)
  751. #define IUmiObject_Release(This) \
  752. (This)->lpVtbl -> Release(This)
  753. #define IUmiObject_Put(This,pszName,uFlags,pProp) \
  754. (This)->lpVtbl -> Put(This,pszName,uFlags,pProp)
  755. #define IUmiObject_Get(This,pszName,uFlags,pProp) \
  756. (This)->lpVtbl -> Get(This,pszName,uFlags,pProp)
  757. #define IUmiObject_GetAt(This,pszName,uFlags,uBufferLength,pExistingMem) \
  758. (This)->lpVtbl -> GetAt(This,pszName,uFlags,uBufferLength,pExistingMem)
  759. #define IUmiObject_GetAs(This,pszName,uFlags,uCoercionType,pProp) \
  760. (This)->lpVtbl -> GetAs(This,pszName,uFlags,uCoercionType,pProp)
  761. #define IUmiObject_FreeMemory(This,uReserved,pMem) \
  762. (This)->lpVtbl -> FreeMemory(This,uReserved,pMem)
  763. #define IUmiObject_Delete(This,pszName,uFlags) \
  764. (This)->lpVtbl -> Delete(This,pszName,uFlags)
  765. #define IUmiObject_GetProps(This,pszNames,uNameCount,uFlags,pProps) \
  766. (This)->lpVtbl -> GetProps(This,pszNames,uNameCount,uFlags,pProps)
  767. #define IUmiObject_PutProps(This,pszNames,uNameCount,uFlags,pProps) \
  768. (This)->lpVtbl -> PutProps(This,pszNames,uNameCount,uFlags,pProps)
  769. #define IUmiObject_PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem) \
  770. (This)->lpVtbl -> PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem)
  771. #define IUmiObject_GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj) \
  772. (This)->lpVtbl -> GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj)
  773. #define IUmiObject_GetInterfacePropList(This,uFlags,pPropList) \
  774. (This)->lpVtbl -> GetInterfacePropList(This,uFlags,pPropList)
  775. #define IUmiObject_Clone(This,uFlags,riid,pCopy) \
  776. (This)->lpVtbl -> Clone(This,uFlags,riid,pCopy)
  777. #define IUmiObject_CopyTo(This,uFlags,pURL,riid,pCopy) \
  778. (This)->lpVtbl -> CopyTo(This,uFlags,pURL,riid,pCopy)
  779. #define IUmiObject_Refresh(This,uFlags,uNameCount,pszNames) \
  780. (This)->lpVtbl -> Refresh(This,uFlags,uNameCount,pszNames)
  781. #define IUmiObject_Commit(This,uFlags) \
  782. (This)->lpVtbl -> Commit(This,uFlags)
  783. #endif /* COBJMACROS */
  784. #endif /* C style interface */
  785. HRESULT STDMETHODCALLTYPE IUmiObject_Clone_Proxy(
  786. IUmiObject __RPC_FAR * This,
  787. /* [in] */ ULONG uFlags,
  788. /* [in] */ REFIID riid,
  789. /* [iid_is][out] */ LPVOID __RPC_FAR *pCopy);
  790. void __RPC_STUB IUmiObject_Clone_Stub(
  791. IRpcStubBuffer *This,
  792. IRpcChannelBuffer *_pRpcChannelBuffer,
  793. PRPC_MESSAGE _pRpcMessage,
  794. DWORD *_pdwStubPhase);
  795. HRESULT STDMETHODCALLTYPE IUmiObject_CopyTo_Proxy(
  796. IUmiObject __RPC_FAR * This,
  797. /* [in] */ ULONG uFlags,
  798. /* [in] */ IUmiURL __RPC_FAR *pURL,
  799. /* [in] */ REFIID riid,
  800. /* [iid_is][out] */ LPVOID __RPC_FAR *pCopy);
  801. void __RPC_STUB IUmiObject_CopyTo_Stub(
  802. IRpcStubBuffer *This,
  803. IRpcChannelBuffer *_pRpcChannelBuffer,
  804. PRPC_MESSAGE _pRpcMessage,
  805. DWORD *_pdwStubPhase);
  806. HRESULT STDMETHODCALLTYPE IUmiObject_Refresh_Proxy(
  807. IUmiObject __RPC_FAR * This,
  808. /* [in] */ ULONG uFlags,
  809. /* [in] */ ULONG uNameCount,
  810. /* [in] */ LPWSTR __RPC_FAR *pszNames);
  811. void __RPC_STUB IUmiObject_Refresh_Stub(
  812. IRpcStubBuffer *This,
  813. IRpcChannelBuffer *_pRpcChannelBuffer,
  814. PRPC_MESSAGE _pRpcMessage,
  815. DWORD *_pdwStubPhase);
  816. HRESULT STDMETHODCALLTYPE IUmiObject_Commit_Proxy(
  817. IUmiObject __RPC_FAR * This,
  818. /* [in] */ ULONG uFlags);
  819. void __RPC_STUB IUmiObject_Commit_Stub(
  820. IRpcStubBuffer *This,
  821. IRpcChannelBuffer *_pRpcChannelBuffer,
  822. PRPC_MESSAGE _pRpcMessage,
  823. DWORD *_pdwStubPhase);
  824. #endif /* __IUmiObject_INTERFACE_DEFINED__ */
  825. #ifndef __IUmiConnection_INTERFACE_DEFINED__
  826. #define __IUmiConnection_INTERFACE_DEFINED__
  827. /* interface IUmiConnection */
  828. /* [uuid][local][object] */
  829. EXTERN_C const IID IID_IUmiConnection;
  830. #if defined(__cplusplus) && !defined(CINTERFACE)
  831. MIDL_INTERFACE("5ed7ee20-64a4-11d3-a0da-00105a1f515a")
  832. IUmiConnection : public IUmiBaseObject
  833. {
  834. public:
  835. virtual HRESULT STDMETHODCALLTYPE Open(
  836. /* [in] */ IUmiURL __RPC_FAR *pURL,
  837. /* [in] */ ULONG uFlags,
  838. /* [in] */ REFIID TargetIID,
  839. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvRes) = 0;
  840. };
  841. #else /* C style interface */
  842. typedef struct IUmiConnectionVtbl
  843. {
  844. BEGIN_INTERFACE
  845. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  846. IUmiConnection __RPC_FAR * This,
  847. /* [in] */ REFIID riid,
  848. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  849. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  850. IUmiConnection __RPC_FAR * This);
  851. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  852. IUmiConnection __RPC_FAR * This);
  853. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Put )(
  854. IUmiConnection __RPC_FAR * This,
  855. /* [in] */ LPCWSTR pszName,
  856. /* [in] */ ULONG uFlags,
  857. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp);
  858. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Get )(
  859. IUmiConnection __RPC_FAR * This,
  860. /* [in] */ LPCWSTR pszName,
  861. /* [in] */ ULONG uFlags,
  862. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  863. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAt )(
  864. IUmiConnection __RPC_FAR * This,
  865. /* [in] */ LPCWSTR pszName,
  866. /* [in] */ ULONG uFlags,
  867. /* [in] */ ULONG uBufferLength,
  868. /* [out] */ LPVOID pExistingMem);
  869. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAs )(
  870. IUmiConnection __RPC_FAR * This,
  871. /* [in] */ LPCWSTR pszName,
  872. /* [in] */ ULONG uFlags,
  873. /* [in] */ ULONG uCoercionType,
  874. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  875. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeMemory )(
  876. IUmiConnection __RPC_FAR * This,
  877. ULONG uReserved,
  878. LPVOID pMem);
  879. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )(
  880. IUmiConnection __RPC_FAR * This,
  881. /* [in] */ LPCWSTR pszName,
  882. /* [in] */ ULONG uFlags);
  883. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProps )(
  884. IUmiConnection __RPC_FAR * This,
  885. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  886. /* [in] */ ULONG uNameCount,
  887. /* [in] */ ULONG uFlags,
  888. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps);
  889. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutProps )(
  890. IUmiConnection __RPC_FAR * This,
  891. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  892. /* [in] */ ULONG uNameCount,
  893. /* [in] */ ULONG uFlags,
  894. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps);
  895. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutFrom )(
  896. IUmiConnection __RPC_FAR * This,
  897. /* [in] */ LPCWSTR pszName,
  898. /* [in] */ ULONG uFlags,
  899. /* [in] */ ULONG uBufferLength,
  900. /* [in] */ LPVOID pExistingMem);
  901. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLastStatus )(
  902. IUmiConnection __RPC_FAR * This,
  903. /* [in] */ ULONG uFlags,
  904. /* [out] */ ULONG __RPC_FAR *puSpecificStatus,
  905. /* [in] */ REFIID riid,
  906. /* [iid_is][out] */ LPVOID __RPC_FAR *pStatusObj);
  907. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInterfacePropList )(
  908. IUmiConnection __RPC_FAR * This,
  909. /* [in] */ ULONG uFlags,
  910. /* [out] */ IUmiPropList __RPC_FAR *__RPC_FAR *pPropList);
  911. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )(
  912. IUmiConnection __RPC_FAR * This,
  913. /* [in] */ IUmiURL __RPC_FAR *pURL,
  914. /* [in] */ ULONG uFlags,
  915. /* [in] */ REFIID TargetIID,
  916. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvRes);
  917. END_INTERFACE
  918. } IUmiConnectionVtbl;
  919. interface IUmiConnection
  920. {
  921. CONST_VTBL struct IUmiConnectionVtbl __RPC_FAR *lpVtbl;
  922. };
  923. #ifdef COBJMACROS
  924. #define IUmiConnection_QueryInterface(This,riid,ppvObject) \
  925. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  926. #define IUmiConnection_AddRef(This) \
  927. (This)->lpVtbl -> AddRef(This)
  928. #define IUmiConnection_Release(This) \
  929. (This)->lpVtbl -> Release(This)
  930. #define IUmiConnection_Put(This,pszName,uFlags,pProp) \
  931. (This)->lpVtbl -> Put(This,pszName,uFlags,pProp)
  932. #define IUmiConnection_Get(This,pszName,uFlags,pProp) \
  933. (This)->lpVtbl -> Get(This,pszName,uFlags,pProp)
  934. #define IUmiConnection_GetAt(This,pszName,uFlags,uBufferLength,pExistingMem) \
  935. (This)->lpVtbl -> GetAt(This,pszName,uFlags,uBufferLength,pExistingMem)
  936. #define IUmiConnection_GetAs(This,pszName,uFlags,uCoercionType,pProp) \
  937. (This)->lpVtbl -> GetAs(This,pszName,uFlags,uCoercionType,pProp)
  938. #define IUmiConnection_FreeMemory(This,uReserved,pMem) \
  939. (This)->lpVtbl -> FreeMemory(This,uReserved,pMem)
  940. #define IUmiConnection_Delete(This,pszName,uFlags) \
  941. (This)->lpVtbl -> Delete(This,pszName,uFlags)
  942. #define IUmiConnection_GetProps(This,pszNames,uNameCount,uFlags,pProps) \
  943. (This)->lpVtbl -> GetProps(This,pszNames,uNameCount,uFlags,pProps)
  944. #define IUmiConnection_PutProps(This,pszNames,uNameCount,uFlags,pProps) \
  945. (This)->lpVtbl -> PutProps(This,pszNames,uNameCount,uFlags,pProps)
  946. #define IUmiConnection_PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem) \
  947. (This)->lpVtbl -> PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem)
  948. #define IUmiConnection_GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj) \
  949. (This)->lpVtbl -> GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj)
  950. #define IUmiConnection_GetInterfacePropList(This,uFlags,pPropList) \
  951. (This)->lpVtbl -> GetInterfacePropList(This,uFlags,pPropList)
  952. #define IUmiConnection_Open(This,pURL,uFlags,TargetIID,ppvRes) \
  953. (This)->lpVtbl -> Open(This,pURL,uFlags,TargetIID,ppvRes)
  954. #endif /* COBJMACROS */
  955. #endif /* C style interface */
  956. HRESULT STDMETHODCALLTYPE IUmiConnection_Open_Proxy(
  957. IUmiConnection __RPC_FAR * This,
  958. /* [in] */ IUmiURL __RPC_FAR *pURL,
  959. /* [in] */ ULONG uFlags,
  960. /* [in] */ REFIID TargetIID,
  961. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvRes);
  962. void __RPC_STUB IUmiConnection_Open_Stub(
  963. IRpcStubBuffer *This,
  964. IRpcChannelBuffer *_pRpcChannelBuffer,
  965. PRPC_MESSAGE _pRpcMessage,
  966. DWORD *_pdwStubPhase);
  967. #endif /* __IUmiConnection_INTERFACE_DEFINED__ */
  968. #ifndef __IUmiContainer_INTERFACE_DEFINED__
  969. #define __IUmiContainer_INTERFACE_DEFINED__
  970. /* interface IUmiContainer */
  971. /* [uuid][local][object] */
  972. EXTERN_C const IID IID_IUmiContainer;
  973. #if defined(__cplusplus) && !defined(CINTERFACE)
  974. MIDL_INTERFACE("5ed7ee21-64a4-11d3-a0da-00105a1f515a")
  975. IUmiContainer : public IUmiObject
  976. {
  977. public:
  978. virtual HRESULT STDMETHODCALLTYPE Open(
  979. /* [in] */ IUmiURL __RPC_FAR *pURL,
  980. /* [in] */ ULONG uFlags,
  981. /* [in] */ REFIID TargetIID,
  982. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvRes) = 0;
  983. virtual HRESULT STDMETHODCALLTYPE PutObject(
  984. /* [in] */ ULONG uFlags,
  985. /* [in] */ REFIID TargetIID,
  986. /* [iid_is][out][in] */ void __RPC_FAR *pObj) = 0;
  987. virtual HRESULT STDMETHODCALLTYPE DeleteObject(
  988. /* [in] */ IUmiURL __RPC_FAR *pURL,
  989. /* [optional][in] */ ULONG uFlags) = 0;
  990. virtual HRESULT STDMETHODCALLTYPE Create(
  991. /* [in] */ IUmiURL __RPC_FAR *pURL,
  992. /* [in] */ ULONG uFlags,
  993. /* [out] */ IUmiObject __RPC_FAR *__RPC_FAR *pNewObj) = 0;
  994. virtual HRESULT STDMETHODCALLTYPE Move(
  995. /* [in] */ ULONG uFlags,
  996. /* [in] */ IUmiURL __RPC_FAR *pOldURL,
  997. /* [in] */ IUmiURL __RPC_FAR *pNewURL) = 0;
  998. virtual HRESULT STDMETHODCALLTYPE CreateEnum(
  999. /* [in] */ IUmiURL __RPC_FAR *pszEnumContext,
  1000. /* [in] */ ULONG uFlags,
  1001. /* [in] */ REFIID TargetIID,
  1002. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvEnum) = 0;
  1003. virtual HRESULT STDMETHODCALLTYPE ExecQuery(
  1004. /* [in] */ IUmiQuery __RPC_FAR *pQuery,
  1005. /* [in] */ ULONG uFlags,
  1006. /* [in] */ REFIID TargetIID,
  1007. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppResult) = 0;
  1008. };
  1009. #else /* C style interface */
  1010. typedef struct IUmiContainerVtbl
  1011. {
  1012. BEGIN_INTERFACE
  1013. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  1014. IUmiContainer __RPC_FAR * This,
  1015. /* [in] */ REFIID riid,
  1016. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1017. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  1018. IUmiContainer __RPC_FAR * This);
  1019. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  1020. IUmiContainer __RPC_FAR * This);
  1021. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Put )(
  1022. IUmiContainer __RPC_FAR * This,
  1023. /* [in] */ LPCWSTR pszName,
  1024. /* [in] */ ULONG uFlags,
  1025. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp);
  1026. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Get )(
  1027. IUmiContainer __RPC_FAR * This,
  1028. /* [in] */ LPCWSTR pszName,
  1029. /* [in] */ ULONG uFlags,
  1030. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  1031. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAt )(
  1032. IUmiContainer __RPC_FAR * This,
  1033. /* [in] */ LPCWSTR pszName,
  1034. /* [in] */ ULONG uFlags,
  1035. /* [in] */ ULONG uBufferLength,
  1036. /* [out] */ LPVOID pExistingMem);
  1037. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAs )(
  1038. IUmiContainer __RPC_FAR * This,
  1039. /* [in] */ LPCWSTR pszName,
  1040. /* [in] */ ULONG uFlags,
  1041. /* [in] */ ULONG uCoercionType,
  1042. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  1043. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeMemory )(
  1044. IUmiContainer __RPC_FAR * This,
  1045. ULONG uReserved,
  1046. LPVOID pMem);
  1047. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )(
  1048. IUmiContainer __RPC_FAR * This,
  1049. /* [in] */ LPCWSTR pszName,
  1050. /* [in] */ ULONG uFlags);
  1051. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProps )(
  1052. IUmiContainer __RPC_FAR * This,
  1053. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  1054. /* [in] */ ULONG uNameCount,
  1055. /* [in] */ ULONG uFlags,
  1056. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps);
  1057. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutProps )(
  1058. IUmiContainer __RPC_FAR * This,
  1059. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  1060. /* [in] */ ULONG uNameCount,
  1061. /* [in] */ ULONG uFlags,
  1062. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps);
  1063. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutFrom )(
  1064. IUmiContainer __RPC_FAR * This,
  1065. /* [in] */ LPCWSTR pszName,
  1066. /* [in] */ ULONG uFlags,
  1067. /* [in] */ ULONG uBufferLength,
  1068. /* [in] */ LPVOID pExistingMem);
  1069. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLastStatus )(
  1070. IUmiContainer __RPC_FAR * This,
  1071. /* [in] */ ULONG uFlags,
  1072. /* [out] */ ULONG __RPC_FAR *puSpecificStatus,
  1073. /* [in] */ REFIID riid,
  1074. /* [iid_is][out] */ LPVOID __RPC_FAR *pStatusObj);
  1075. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInterfacePropList )(
  1076. IUmiContainer __RPC_FAR * This,
  1077. /* [in] */ ULONG uFlags,
  1078. /* [out] */ IUmiPropList __RPC_FAR *__RPC_FAR *pPropList);
  1079. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Clone )(
  1080. IUmiContainer __RPC_FAR * This,
  1081. /* [in] */ ULONG uFlags,
  1082. /* [in] */ REFIID riid,
  1083. /* [iid_is][out] */ LPVOID __RPC_FAR *pCopy);
  1084. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CopyTo )(
  1085. IUmiContainer __RPC_FAR * This,
  1086. /* [in] */ ULONG uFlags,
  1087. /* [in] */ IUmiURL __RPC_FAR *pURL,
  1088. /* [in] */ REFIID riid,
  1089. /* [iid_is][out] */ LPVOID __RPC_FAR *pCopy);
  1090. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Refresh )(
  1091. IUmiContainer __RPC_FAR * This,
  1092. /* [in] */ ULONG uFlags,
  1093. /* [in] */ ULONG uNameCount,
  1094. /* [in] */ LPWSTR __RPC_FAR *pszNames);
  1095. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Commit )(
  1096. IUmiContainer __RPC_FAR * This,
  1097. /* [in] */ ULONG uFlags);
  1098. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Open )(
  1099. IUmiContainer __RPC_FAR * This,
  1100. /* [in] */ IUmiURL __RPC_FAR *pURL,
  1101. /* [in] */ ULONG uFlags,
  1102. /* [in] */ REFIID TargetIID,
  1103. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvRes);
  1104. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutObject )(
  1105. IUmiContainer __RPC_FAR * This,
  1106. /* [in] */ ULONG uFlags,
  1107. /* [in] */ REFIID TargetIID,
  1108. /* [iid_is][out][in] */ void __RPC_FAR *pObj);
  1109. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteObject )(
  1110. IUmiContainer __RPC_FAR * This,
  1111. /* [in] */ IUmiURL __RPC_FAR *pURL,
  1112. /* [optional][in] */ ULONG uFlags);
  1113. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Create )(
  1114. IUmiContainer __RPC_FAR * This,
  1115. /* [in] */ IUmiURL __RPC_FAR *pURL,
  1116. /* [in] */ ULONG uFlags,
  1117. /* [out] */ IUmiObject __RPC_FAR *__RPC_FAR *pNewObj);
  1118. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Move )(
  1119. IUmiContainer __RPC_FAR * This,
  1120. /* [in] */ ULONG uFlags,
  1121. /* [in] */ IUmiURL __RPC_FAR *pOldURL,
  1122. /* [in] */ IUmiURL __RPC_FAR *pNewURL);
  1123. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateEnum )(
  1124. IUmiContainer __RPC_FAR * This,
  1125. /* [in] */ IUmiURL __RPC_FAR *pszEnumContext,
  1126. /* [in] */ ULONG uFlags,
  1127. /* [in] */ REFIID TargetIID,
  1128. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvEnum);
  1129. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *ExecQuery )(
  1130. IUmiContainer __RPC_FAR * This,
  1131. /* [in] */ IUmiQuery __RPC_FAR *pQuery,
  1132. /* [in] */ ULONG uFlags,
  1133. /* [in] */ REFIID TargetIID,
  1134. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppResult);
  1135. END_INTERFACE
  1136. } IUmiContainerVtbl;
  1137. interface IUmiContainer
  1138. {
  1139. CONST_VTBL struct IUmiContainerVtbl __RPC_FAR *lpVtbl;
  1140. };
  1141. #ifdef COBJMACROS
  1142. #define IUmiContainer_QueryInterface(This,riid,ppvObject) \
  1143. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1144. #define IUmiContainer_AddRef(This) \
  1145. (This)->lpVtbl -> AddRef(This)
  1146. #define IUmiContainer_Release(This) \
  1147. (This)->lpVtbl -> Release(This)
  1148. #define IUmiContainer_Put(This,pszName,uFlags,pProp) \
  1149. (This)->lpVtbl -> Put(This,pszName,uFlags,pProp)
  1150. #define IUmiContainer_Get(This,pszName,uFlags,pProp) \
  1151. (This)->lpVtbl -> Get(This,pszName,uFlags,pProp)
  1152. #define IUmiContainer_GetAt(This,pszName,uFlags,uBufferLength,pExistingMem) \
  1153. (This)->lpVtbl -> GetAt(This,pszName,uFlags,uBufferLength,pExistingMem)
  1154. #define IUmiContainer_GetAs(This,pszName,uFlags,uCoercionType,pProp) \
  1155. (This)->lpVtbl -> GetAs(This,pszName,uFlags,uCoercionType,pProp)
  1156. #define IUmiContainer_FreeMemory(This,uReserved,pMem) \
  1157. (This)->lpVtbl -> FreeMemory(This,uReserved,pMem)
  1158. #define IUmiContainer_Delete(This,pszName,uFlags) \
  1159. (This)->lpVtbl -> Delete(This,pszName,uFlags)
  1160. #define IUmiContainer_GetProps(This,pszNames,uNameCount,uFlags,pProps) \
  1161. (This)->lpVtbl -> GetProps(This,pszNames,uNameCount,uFlags,pProps)
  1162. #define IUmiContainer_PutProps(This,pszNames,uNameCount,uFlags,pProps) \
  1163. (This)->lpVtbl -> PutProps(This,pszNames,uNameCount,uFlags,pProps)
  1164. #define IUmiContainer_PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem) \
  1165. (This)->lpVtbl -> PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem)
  1166. #define IUmiContainer_GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj) \
  1167. (This)->lpVtbl -> GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj)
  1168. #define IUmiContainer_GetInterfacePropList(This,uFlags,pPropList) \
  1169. (This)->lpVtbl -> GetInterfacePropList(This,uFlags,pPropList)
  1170. #define IUmiContainer_Clone(This,uFlags,riid,pCopy) \
  1171. (This)->lpVtbl -> Clone(This,uFlags,riid,pCopy)
  1172. #define IUmiContainer_CopyTo(This,uFlags,pURL,riid,pCopy) \
  1173. (This)->lpVtbl -> CopyTo(This,uFlags,pURL,riid,pCopy)
  1174. #define IUmiContainer_Refresh(This,uFlags,uNameCount,pszNames) \
  1175. (This)->lpVtbl -> Refresh(This,uFlags,uNameCount,pszNames)
  1176. #define IUmiContainer_Commit(This,uFlags) \
  1177. (This)->lpVtbl -> Commit(This,uFlags)
  1178. #define IUmiContainer_Open(This,pURL,uFlags,TargetIID,ppvRes) \
  1179. (This)->lpVtbl -> Open(This,pURL,uFlags,TargetIID,ppvRes)
  1180. #define IUmiContainer_PutObject(This,uFlags,TargetIID,pObj) \
  1181. (This)->lpVtbl -> PutObject(This,uFlags,TargetIID,pObj)
  1182. #define IUmiContainer_DeleteObject(This,pURL,uFlags) \
  1183. (This)->lpVtbl -> DeleteObject(This,pURL,uFlags)
  1184. #define IUmiContainer_Create(This,pURL,uFlags,pNewObj) \
  1185. (This)->lpVtbl -> Create(This,pURL,uFlags,pNewObj)
  1186. #define IUmiContainer_Move(This,uFlags,pOldURL,pNewURL) \
  1187. (This)->lpVtbl -> Move(This,uFlags,pOldURL,pNewURL)
  1188. #define IUmiContainer_CreateEnum(This,pszEnumContext,uFlags,TargetIID,ppvEnum) \
  1189. (This)->lpVtbl -> CreateEnum(This,pszEnumContext,uFlags,TargetIID,ppvEnum)
  1190. #define IUmiContainer_ExecQuery(This,pQuery,uFlags,TargetIID,ppResult) \
  1191. (This)->lpVtbl -> ExecQuery(This,pQuery,uFlags,TargetIID,ppResult)
  1192. #endif /* COBJMACROS */
  1193. #endif /* C style interface */
  1194. HRESULT STDMETHODCALLTYPE IUmiContainer_Open_Proxy(
  1195. IUmiContainer __RPC_FAR * This,
  1196. /* [in] */ IUmiURL __RPC_FAR *pURL,
  1197. /* [in] */ ULONG uFlags,
  1198. /* [in] */ REFIID TargetIID,
  1199. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvRes);
  1200. void __RPC_STUB IUmiContainer_Open_Stub(
  1201. IRpcStubBuffer *This,
  1202. IRpcChannelBuffer *_pRpcChannelBuffer,
  1203. PRPC_MESSAGE _pRpcMessage,
  1204. DWORD *_pdwStubPhase);
  1205. HRESULT STDMETHODCALLTYPE IUmiContainer_PutObject_Proxy(
  1206. IUmiContainer __RPC_FAR * This,
  1207. /* [in] */ ULONG uFlags,
  1208. /* [in] */ REFIID TargetIID,
  1209. /* [iid_is][out][in] */ void __RPC_FAR *pObj);
  1210. void __RPC_STUB IUmiContainer_PutObject_Stub(
  1211. IRpcStubBuffer *This,
  1212. IRpcChannelBuffer *_pRpcChannelBuffer,
  1213. PRPC_MESSAGE _pRpcMessage,
  1214. DWORD *_pdwStubPhase);
  1215. HRESULT STDMETHODCALLTYPE IUmiContainer_DeleteObject_Proxy(
  1216. IUmiContainer __RPC_FAR * This,
  1217. /* [in] */ IUmiURL __RPC_FAR *pURL,
  1218. /* [optional][in] */ ULONG uFlags);
  1219. void __RPC_STUB IUmiContainer_DeleteObject_Stub(
  1220. IRpcStubBuffer *This,
  1221. IRpcChannelBuffer *_pRpcChannelBuffer,
  1222. PRPC_MESSAGE _pRpcMessage,
  1223. DWORD *_pdwStubPhase);
  1224. HRESULT STDMETHODCALLTYPE IUmiContainer_Create_Proxy(
  1225. IUmiContainer __RPC_FAR * This,
  1226. /* [in] */ IUmiURL __RPC_FAR *pURL,
  1227. /* [in] */ ULONG uFlags,
  1228. /* [out] */ IUmiObject __RPC_FAR *__RPC_FAR *pNewObj);
  1229. void __RPC_STUB IUmiContainer_Create_Stub(
  1230. IRpcStubBuffer *This,
  1231. IRpcChannelBuffer *_pRpcChannelBuffer,
  1232. PRPC_MESSAGE _pRpcMessage,
  1233. DWORD *_pdwStubPhase);
  1234. HRESULT STDMETHODCALLTYPE IUmiContainer_Move_Proxy(
  1235. IUmiContainer __RPC_FAR * This,
  1236. /* [in] */ ULONG uFlags,
  1237. /* [in] */ IUmiURL __RPC_FAR *pOldURL,
  1238. /* [in] */ IUmiURL __RPC_FAR *pNewURL);
  1239. void __RPC_STUB IUmiContainer_Move_Stub(
  1240. IRpcStubBuffer *This,
  1241. IRpcChannelBuffer *_pRpcChannelBuffer,
  1242. PRPC_MESSAGE _pRpcMessage,
  1243. DWORD *_pdwStubPhase);
  1244. HRESULT STDMETHODCALLTYPE IUmiContainer_CreateEnum_Proxy(
  1245. IUmiContainer __RPC_FAR * This,
  1246. /* [in] */ IUmiURL __RPC_FAR *pszEnumContext,
  1247. /* [in] */ ULONG uFlags,
  1248. /* [in] */ REFIID TargetIID,
  1249. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvEnum);
  1250. void __RPC_STUB IUmiContainer_CreateEnum_Stub(
  1251. IRpcStubBuffer *This,
  1252. IRpcChannelBuffer *_pRpcChannelBuffer,
  1253. PRPC_MESSAGE _pRpcMessage,
  1254. DWORD *_pdwStubPhase);
  1255. HRESULT STDMETHODCALLTYPE IUmiContainer_ExecQuery_Proxy(
  1256. IUmiContainer __RPC_FAR * This,
  1257. /* [in] */ IUmiQuery __RPC_FAR *pQuery,
  1258. /* [in] */ ULONG uFlags,
  1259. /* [in] */ REFIID TargetIID,
  1260. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppResult);
  1261. void __RPC_STUB IUmiContainer_ExecQuery_Stub(
  1262. IRpcStubBuffer *This,
  1263. IRpcChannelBuffer *_pRpcChannelBuffer,
  1264. PRPC_MESSAGE _pRpcMessage,
  1265. DWORD *_pdwStubPhase);
  1266. #endif /* __IUmiContainer_INTERFACE_DEFINED__ */
  1267. #ifndef __IUmiCursor_INTERFACE_DEFINED__
  1268. #define __IUmiCursor_INTERFACE_DEFINED__
  1269. /* interface IUmiCursor */
  1270. /* [uuid][local][object] */
  1271. EXTERN_C const IID IID_IUmiCursor;
  1272. #if defined(__cplusplus) && !defined(CINTERFACE)
  1273. MIDL_INTERFACE("5ed7ee26-64a4-11d3-a0da-00105a1f515a")
  1274. IUmiCursor : public IUmiBaseObject
  1275. {
  1276. public:
  1277. virtual HRESULT STDMETHODCALLTYPE SetIID(
  1278. /* [in] */ REFIID riid) = 0;
  1279. virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
  1280. virtual HRESULT STDMETHODCALLTYPE Next(
  1281. /* [in] */ ULONG uNumRequested,
  1282. /* [out] */ ULONG __RPC_FAR *puNumReturned,
  1283. /* [length_is][size_is][out] */ LPVOID __RPC_FAR *pObjects) = 0;
  1284. virtual HRESULT STDMETHODCALLTYPE Count(
  1285. /* [out] */ ULONG __RPC_FAR *puNumObjects) = 0;
  1286. virtual HRESULT STDMETHODCALLTYPE Previous(
  1287. /* [in] */ ULONG uFlags,
  1288. /* [out] */ LPVOID __RPC_FAR *pObj) = 0;
  1289. };
  1290. #else /* C style interface */
  1291. typedef struct IUmiCursorVtbl
  1292. {
  1293. BEGIN_INTERFACE
  1294. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  1295. IUmiCursor __RPC_FAR * This,
  1296. /* [in] */ REFIID riid,
  1297. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1298. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  1299. IUmiCursor __RPC_FAR * This);
  1300. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  1301. IUmiCursor __RPC_FAR * This);
  1302. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Put )(
  1303. IUmiCursor __RPC_FAR * This,
  1304. /* [in] */ LPCWSTR pszName,
  1305. /* [in] */ ULONG uFlags,
  1306. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp);
  1307. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Get )(
  1308. IUmiCursor __RPC_FAR * This,
  1309. /* [in] */ LPCWSTR pszName,
  1310. /* [in] */ ULONG uFlags,
  1311. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  1312. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAt )(
  1313. IUmiCursor __RPC_FAR * This,
  1314. /* [in] */ LPCWSTR pszName,
  1315. /* [in] */ ULONG uFlags,
  1316. /* [in] */ ULONG uBufferLength,
  1317. /* [out] */ LPVOID pExistingMem);
  1318. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAs )(
  1319. IUmiCursor __RPC_FAR * This,
  1320. /* [in] */ LPCWSTR pszName,
  1321. /* [in] */ ULONG uFlags,
  1322. /* [in] */ ULONG uCoercionType,
  1323. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  1324. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeMemory )(
  1325. IUmiCursor __RPC_FAR * This,
  1326. ULONG uReserved,
  1327. LPVOID pMem);
  1328. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )(
  1329. IUmiCursor __RPC_FAR * This,
  1330. /* [in] */ LPCWSTR pszName,
  1331. /* [in] */ ULONG uFlags);
  1332. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProps )(
  1333. IUmiCursor __RPC_FAR * This,
  1334. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  1335. /* [in] */ ULONG uNameCount,
  1336. /* [in] */ ULONG uFlags,
  1337. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps);
  1338. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutProps )(
  1339. IUmiCursor __RPC_FAR * This,
  1340. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  1341. /* [in] */ ULONG uNameCount,
  1342. /* [in] */ ULONG uFlags,
  1343. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps);
  1344. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutFrom )(
  1345. IUmiCursor __RPC_FAR * This,
  1346. /* [in] */ LPCWSTR pszName,
  1347. /* [in] */ ULONG uFlags,
  1348. /* [in] */ ULONG uBufferLength,
  1349. /* [in] */ LPVOID pExistingMem);
  1350. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLastStatus )(
  1351. IUmiCursor __RPC_FAR * This,
  1352. /* [in] */ ULONG uFlags,
  1353. /* [out] */ ULONG __RPC_FAR *puSpecificStatus,
  1354. /* [in] */ REFIID riid,
  1355. /* [iid_is][out] */ LPVOID __RPC_FAR *pStatusObj);
  1356. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInterfacePropList )(
  1357. IUmiCursor __RPC_FAR * This,
  1358. /* [in] */ ULONG uFlags,
  1359. /* [out] */ IUmiPropList __RPC_FAR *__RPC_FAR *pPropList);
  1360. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetIID )(
  1361. IUmiCursor __RPC_FAR * This,
  1362. /* [in] */ REFIID riid);
  1363. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Reset )(
  1364. IUmiCursor __RPC_FAR * This);
  1365. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Next )(
  1366. IUmiCursor __RPC_FAR * This,
  1367. /* [in] */ ULONG uNumRequested,
  1368. /* [out] */ ULONG __RPC_FAR *puNumReturned,
  1369. /* [length_is][size_is][out] */ LPVOID __RPC_FAR *pObjects);
  1370. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Count )(
  1371. IUmiCursor __RPC_FAR * This,
  1372. /* [out] */ ULONG __RPC_FAR *puNumObjects);
  1373. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Previous )(
  1374. IUmiCursor __RPC_FAR * This,
  1375. /* [in] */ ULONG uFlags,
  1376. /* [out] */ LPVOID __RPC_FAR *pObj);
  1377. END_INTERFACE
  1378. } IUmiCursorVtbl;
  1379. interface IUmiCursor
  1380. {
  1381. CONST_VTBL struct IUmiCursorVtbl __RPC_FAR *lpVtbl;
  1382. };
  1383. #ifdef COBJMACROS
  1384. #define IUmiCursor_QueryInterface(This,riid,ppvObject) \
  1385. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1386. #define IUmiCursor_AddRef(This) \
  1387. (This)->lpVtbl -> AddRef(This)
  1388. #define IUmiCursor_Release(This) \
  1389. (This)->lpVtbl -> Release(This)
  1390. #define IUmiCursor_Put(This,pszName,uFlags,pProp) \
  1391. (This)->lpVtbl -> Put(This,pszName,uFlags,pProp)
  1392. #define IUmiCursor_Get(This,pszName,uFlags,pProp) \
  1393. (This)->lpVtbl -> Get(This,pszName,uFlags,pProp)
  1394. #define IUmiCursor_GetAt(This,pszName,uFlags,uBufferLength,pExistingMem) \
  1395. (This)->lpVtbl -> GetAt(This,pszName,uFlags,uBufferLength,pExistingMem)
  1396. #define IUmiCursor_GetAs(This,pszName,uFlags,uCoercionType,pProp) \
  1397. (This)->lpVtbl -> GetAs(This,pszName,uFlags,uCoercionType,pProp)
  1398. #define IUmiCursor_FreeMemory(This,uReserved,pMem) \
  1399. (This)->lpVtbl -> FreeMemory(This,uReserved,pMem)
  1400. #define IUmiCursor_Delete(This,pszName,uFlags) \
  1401. (This)->lpVtbl -> Delete(This,pszName,uFlags)
  1402. #define IUmiCursor_GetProps(This,pszNames,uNameCount,uFlags,pProps) \
  1403. (This)->lpVtbl -> GetProps(This,pszNames,uNameCount,uFlags,pProps)
  1404. #define IUmiCursor_PutProps(This,pszNames,uNameCount,uFlags,pProps) \
  1405. (This)->lpVtbl -> PutProps(This,pszNames,uNameCount,uFlags,pProps)
  1406. #define IUmiCursor_PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem) \
  1407. (This)->lpVtbl -> PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem)
  1408. #define IUmiCursor_GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj) \
  1409. (This)->lpVtbl -> GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj)
  1410. #define IUmiCursor_GetInterfacePropList(This,uFlags,pPropList) \
  1411. (This)->lpVtbl -> GetInterfacePropList(This,uFlags,pPropList)
  1412. #define IUmiCursor_SetIID(This,riid) \
  1413. (This)->lpVtbl -> SetIID(This,riid)
  1414. #define IUmiCursor_Reset(This) \
  1415. (This)->lpVtbl -> Reset(This)
  1416. #define IUmiCursor_Next(This,uNumRequested,puNumReturned,pObjects) \
  1417. (This)->lpVtbl -> Next(This,uNumRequested,puNumReturned,pObjects)
  1418. #define IUmiCursor_Count(This,puNumObjects) \
  1419. (This)->lpVtbl -> Count(This,puNumObjects)
  1420. #define IUmiCursor_Previous(This,uFlags,pObj) \
  1421. (This)->lpVtbl -> Previous(This,uFlags,pObj)
  1422. #endif /* COBJMACROS */
  1423. #endif /* C style interface */
  1424. HRESULT STDMETHODCALLTYPE IUmiCursor_SetIID_Proxy(
  1425. IUmiCursor __RPC_FAR * This,
  1426. /* [in] */ REFIID riid);
  1427. void __RPC_STUB IUmiCursor_SetIID_Stub(
  1428. IRpcStubBuffer *This,
  1429. IRpcChannelBuffer *_pRpcChannelBuffer,
  1430. PRPC_MESSAGE _pRpcMessage,
  1431. DWORD *_pdwStubPhase);
  1432. HRESULT STDMETHODCALLTYPE IUmiCursor_Reset_Proxy(
  1433. IUmiCursor __RPC_FAR * This);
  1434. void __RPC_STUB IUmiCursor_Reset_Stub(
  1435. IRpcStubBuffer *This,
  1436. IRpcChannelBuffer *_pRpcChannelBuffer,
  1437. PRPC_MESSAGE _pRpcMessage,
  1438. DWORD *_pdwStubPhase);
  1439. HRESULT STDMETHODCALLTYPE IUmiCursor_Next_Proxy(
  1440. IUmiCursor __RPC_FAR * This,
  1441. /* [in] */ ULONG uNumRequested,
  1442. /* [out] */ ULONG __RPC_FAR *puNumReturned,
  1443. /* [length_is][size_is][out] */ LPVOID __RPC_FAR *pObjects);
  1444. void __RPC_STUB IUmiCursor_Next_Stub(
  1445. IRpcStubBuffer *This,
  1446. IRpcChannelBuffer *_pRpcChannelBuffer,
  1447. PRPC_MESSAGE _pRpcMessage,
  1448. DWORD *_pdwStubPhase);
  1449. HRESULT STDMETHODCALLTYPE IUmiCursor_Count_Proxy(
  1450. IUmiCursor __RPC_FAR * This,
  1451. /* [out] */ ULONG __RPC_FAR *puNumObjects);
  1452. void __RPC_STUB IUmiCursor_Count_Stub(
  1453. IRpcStubBuffer *This,
  1454. IRpcChannelBuffer *_pRpcChannelBuffer,
  1455. PRPC_MESSAGE _pRpcMessage,
  1456. DWORD *_pdwStubPhase);
  1457. HRESULT STDMETHODCALLTYPE IUmiCursor_Previous_Proxy(
  1458. IUmiCursor __RPC_FAR * This,
  1459. /* [in] */ ULONG uFlags,
  1460. /* [out] */ LPVOID __RPC_FAR *pObj);
  1461. void __RPC_STUB IUmiCursor_Previous_Stub(
  1462. IRpcStubBuffer *This,
  1463. IRpcChannelBuffer *_pRpcChannelBuffer,
  1464. PRPC_MESSAGE _pRpcMessage,
  1465. DWORD *_pdwStubPhase);
  1466. #endif /* __IUmiCursor_INTERFACE_DEFINED__ */
  1467. #ifndef __IUmiObjectSink_INTERFACE_DEFINED__
  1468. #define __IUmiObjectSink_INTERFACE_DEFINED__
  1469. /* interface IUmiObjectSink */
  1470. /* [uuid][local][object] */
  1471. EXTERN_C const IID IID_IUmiObjectSink;
  1472. #if defined(__cplusplus) && !defined(CINTERFACE)
  1473. MIDL_INTERFACE("5ed7ee24-64a4-11d3-a0da-00105a1f515a")
  1474. IUmiObjectSink : public IUnknown
  1475. {
  1476. public:
  1477. virtual HRESULT STDMETHODCALLTYPE Put(
  1478. /* [in] */ LONG lNumObjects,
  1479. /* [size_is][in] */ IUmiObject __RPC_FAR *__RPC_FAR *ppObjects) = 0;
  1480. virtual HRESULT STDMETHODCALLTYPE SetResult(
  1481. /* [in] */ HRESULT hResStatus,
  1482. /* [in] */ ULONG uFlags,
  1483. /* [in] */ IUnknown __RPC_FAR *pObject) = 0;
  1484. };
  1485. #else /* C style interface */
  1486. typedef struct IUmiObjectSinkVtbl
  1487. {
  1488. BEGIN_INTERFACE
  1489. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  1490. IUmiObjectSink __RPC_FAR * This,
  1491. /* [in] */ REFIID riid,
  1492. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1493. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  1494. IUmiObjectSink __RPC_FAR * This);
  1495. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  1496. IUmiObjectSink __RPC_FAR * This);
  1497. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Put )(
  1498. IUmiObjectSink __RPC_FAR * This,
  1499. /* [in] */ LONG lNumObjects,
  1500. /* [size_is][in] */ IUmiObject __RPC_FAR *__RPC_FAR *ppObjects);
  1501. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetResult )(
  1502. IUmiObjectSink __RPC_FAR * This,
  1503. /* [in] */ HRESULT hResStatus,
  1504. /* [in] */ ULONG uFlags,
  1505. /* [in] */ IUnknown __RPC_FAR *pObject);
  1506. END_INTERFACE
  1507. } IUmiObjectSinkVtbl;
  1508. interface IUmiObjectSink
  1509. {
  1510. CONST_VTBL struct IUmiObjectSinkVtbl __RPC_FAR *lpVtbl;
  1511. };
  1512. #ifdef COBJMACROS
  1513. #define IUmiObjectSink_QueryInterface(This,riid,ppvObject) \
  1514. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1515. #define IUmiObjectSink_AddRef(This) \
  1516. (This)->lpVtbl -> AddRef(This)
  1517. #define IUmiObjectSink_Release(This) \
  1518. (This)->lpVtbl -> Release(This)
  1519. #define IUmiObjectSink_Put(This,lNumObjects,ppObjects) \
  1520. (This)->lpVtbl -> Put(This,lNumObjects,ppObjects)
  1521. #define IUmiObjectSink_SetResult(This,hResStatus,uFlags,pObject) \
  1522. (This)->lpVtbl -> SetResult(This,hResStatus,uFlags,pObject)
  1523. #endif /* COBJMACROS */
  1524. #endif /* C style interface */
  1525. HRESULT STDMETHODCALLTYPE IUmiObjectSink_Put_Proxy(
  1526. IUmiObjectSink __RPC_FAR * This,
  1527. /* [in] */ LONG lNumObjects,
  1528. /* [size_is][in] */ IUmiObject __RPC_FAR *__RPC_FAR *ppObjects);
  1529. void __RPC_STUB IUmiObjectSink_Put_Stub(
  1530. IRpcStubBuffer *This,
  1531. IRpcChannelBuffer *_pRpcChannelBuffer,
  1532. PRPC_MESSAGE _pRpcMessage,
  1533. DWORD *_pdwStubPhase);
  1534. HRESULT STDMETHODCALLTYPE IUmiObjectSink_SetResult_Proxy(
  1535. IUmiObjectSink __RPC_FAR * This,
  1536. /* [in] */ HRESULT hResStatus,
  1537. /* [in] */ ULONG uFlags,
  1538. /* [in] */ IUnknown __RPC_FAR *pObject);
  1539. void __RPC_STUB IUmiObjectSink_SetResult_Stub(
  1540. IRpcStubBuffer *This,
  1541. IRpcChannelBuffer *_pRpcChannelBuffer,
  1542. PRPC_MESSAGE _pRpcMessage,
  1543. DWORD *_pdwStubPhase);
  1544. #endif /* __IUmiObjectSink_INTERFACE_DEFINED__ */
  1545. #ifndef __IUmiURLKeyList_INTERFACE_DEFINED__
  1546. #define __IUmiURLKeyList_INTERFACE_DEFINED__
  1547. /* interface IUmiURLKeyList */
  1548. /* [uuid][object][local] */
  1549. EXTERN_C const IID IID_IUmiURLKeyList;
  1550. #if defined(__cplusplus) && !defined(CINTERFACE)
  1551. MIDL_INTERFACE("cf779c98-4739-4fd4-a415-da937a599f2f")
  1552. IUmiURLKeyList : public IUnknown
  1553. {
  1554. public:
  1555. virtual HRESULT STDMETHODCALLTYPE GetCount(
  1556. /* [out] */ ULONG __RPC_FAR *puKeyCount) = 0;
  1557. virtual HRESULT STDMETHODCALLTYPE SetKey(
  1558. /* [string][in] */ LPCWSTR pszName,
  1559. /* [string][in] */ LPCWSTR pszValue) = 0;
  1560. virtual HRESULT STDMETHODCALLTYPE GetKey(
  1561. /* [in] */ ULONG uKeyIx,
  1562. /* [in] */ ULONG uFlags,
  1563. /* [out][in] */ ULONG __RPC_FAR *puKeyNameBufSize,
  1564. /* [in] */ LPWSTR pszKeyName,
  1565. /* [out][in] */ ULONG __RPC_FAR *puValueBufSize,
  1566. /* [in] */ LPWSTR pszValue) = 0;
  1567. virtual HRESULT STDMETHODCALLTYPE RemoveKey(
  1568. /* [string][in] */ LPCWSTR pszName,
  1569. /* [in] */ ULONG uFlags) = 0;
  1570. virtual HRESULT STDMETHODCALLTYPE RemoveAllKeys(
  1571. /* [in] */ ULONG uFlags) = 0;
  1572. virtual HRESULT STDMETHODCALLTYPE GetKeysInfo(
  1573. /* [in] */ ULONG uRequestedInfo,
  1574. /* [out] */ ULONGLONG __RPC_FAR *puResponse) = 0;
  1575. };
  1576. #else /* C style interface */
  1577. typedef struct IUmiURLKeyListVtbl
  1578. {
  1579. BEGIN_INTERFACE
  1580. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  1581. IUmiURLKeyList __RPC_FAR * This,
  1582. /* [in] */ REFIID riid,
  1583. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1584. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  1585. IUmiURLKeyList __RPC_FAR * This);
  1586. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  1587. IUmiURLKeyList __RPC_FAR * This);
  1588. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCount )(
  1589. IUmiURLKeyList __RPC_FAR * This,
  1590. /* [out] */ ULONG __RPC_FAR *puKeyCount);
  1591. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetKey )(
  1592. IUmiURLKeyList __RPC_FAR * This,
  1593. /* [string][in] */ LPCWSTR pszName,
  1594. /* [string][in] */ LPCWSTR pszValue);
  1595. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetKey )(
  1596. IUmiURLKeyList __RPC_FAR * This,
  1597. /* [in] */ ULONG uKeyIx,
  1598. /* [in] */ ULONG uFlags,
  1599. /* [out][in] */ ULONG __RPC_FAR *puKeyNameBufSize,
  1600. /* [in] */ LPWSTR pszKeyName,
  1601. /* [out][in] */ ULONG __RPC_FAR *puValueBufSize,
  1602. /* [in] */ LPWSTR pszValue);
  1603. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveKey )(
  1604. IUmiURLKeyList __RPC_FAR * This,
  1605. /* [string][in] */ LPCWSTR pszName,
  1606. /* [in] */ ULONG uFlags);
  1607. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveAllKeys )(
  1608. IUmiURLKeyList __RPC_FAR * This,
  1609. /* [in] */ ULONG uFlags);
  1610. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetKeysInfo )(
  1611. IUmiURLKeyList __RPC_FAR * This,
  1612. /* [in] */ ULONG uRequestedInfo,
  1613. /* [out] */ ULONGLONG __RPC_FAR *puResponse);
  1614. END_INTERFACE
  1615. } IUmiURLKeyListVtbl;
  1616. interface IUmiURLKeyList
  1617. {
  1618. CONST_VTBL struct IUmiURLKeyListVtbl __RPC_FAR *lpVtbl;
  1619. };
  1620. #ifdef COBJMACROS
  1621. #define IUmiURLKeyList_QueryInterface(This,riid,ppvObject) \
  1622. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1623. #define IUmiURLKeyList_AddRef(This) \
  1624. (This)->lpVtbl -> AddRef(This)
  1625. #define IUmiURLKeyList_Release(This) \
  1626. (This)->lpVtbl -> Release(This)
  1627. #define IUmiURLKeyList_GetCount(This,puKeyCount) \
  1628. (This)->lpVtbl -> GetCount(This,puKeyCount)
  1629. #define IUmiURLKeyList_SetKey(This,pszName,pszValue) \
  1630. (This)->lpVtbl -> SetKey(This,pszName,pszValue)
  1631. #define IUmiURLKeyList_GetKey(This,uKeyIx,uFlags,puKeyNameBufSize,pszKeyName,puValueBufSize,pszValue) \
  1632. (This)->lpVtbl -> GetKey(This,uKeyIx,uFlags,puKeyNameBufSize,pszKeyName,puValueBufSize,pszValue)
  1633. #define IUmiURLKeyList_RemoveKey(This,pszName,uFlags) \
  1634. (This)->lpVtbl -> RemoveKey(This,pszName,uFlags)
  1635. #define IUmiURLKeyList_RemoveAllKeys(This,uFlags) \
  1636. (This)->lpVtbl -> RemoveAllKeys(This,uFlags)
  1637. #define IUmiURLKeyList_GetKeysInfo(This,uRequestedInfo,puResponse) \
  1638. (This)->lpVtbl -> GetKeysInfo(This,uRequestedInfo,puResponse)
  1639. #endif /* COBJMACROS */
  1640. #endif /* C style interface */
  1641. HRESULT STDMETHODCALLTYPE IUmiURLKeyList_GetCount_Proxy(
  1642. IUmiURLKeyList __RPC_FAR * This,
  1643. /* [out] */ ULONG __RPC_FAR *puKeyCount);
  1644. void __RPC_STUB IUmiURLKeyList_GetCount_Stub(
  1645. IRpcStubBuffer *This,
  1646. IRpcChannelBuffer *_pRpcChannelBuffer,
  1647. PRPC_MESSAGE _pRpcMessage,
  1648. DWORD *_pdwStubPhase);
  1649. HRESULT STDMETHODCALLTYPE IUmiURLKeyList_SetKey_Proxy(
  1650. IUmiURLKeyList __RPC_FAR * This,
  1651. /* [string][in] */ LPCWSTR pszName,
  1652. /* [string][in] */ LPCWSTR pszValue);
  1653. void __RPC_STUB IUmiURLKeyList_SetKey_Stub(
  1654. IRpcStubBuffer *This,
  1655. IRpcChannelBuffer *_pRpcChannelBuffer,
  1656. PRPC_MESSAGE _pRpcMessage,
  1657. DWORD *_pdwStubPhase);
  1658. HRESULT STDMETHODCALLTYPE IUmiURLKeyList_GetKey_Proxy(
  1659. IUmiURLKeyList __RPC_FAR * This,
  1660. /* [in] */ ULONG uKeyIx,
  1661. /* [in] */ ULONG uFlags,
  1662. /* [out][in] */ ULONG __RPC_FAR *puKeyNameBufSize,
  1663. /* [in] */ LPWSTR pszKeyName,
  1664. /* [out][in] */ ULONG __RPC_FAR *puValueBufSize,
  1665. /* [in] */ LPWSTR pszValue);
  1666. void __RPC_STUB IUmiURLKeyList_GetKey_Stub(
  1667. IRpcStubBuffer *This,
  1668. IRpcChannelBuffer *_pRpcChannelBuffer,
  1669. PRPC_MESSAGE _pRpcMessage,
  1670. DWORD *_pdwStubPhase);
  1671. HRESULT STDMETHODCALLTYPE IUmiURLKeyList_RemoveKey_Proxy(
  1672. IUmiURLKeyList __RPC_FAR * This,
  1673. /* [string][in] */ LPCWSTR pszName,
  1674. /* [in] */ ULONG uFlags);
  1675. void __RPC_STUB IUmiURLKeyList_RemoveKey_Stub(
  1676. IRpcStubBuffer *This,
  1677. IRpcChannelBuffer *_pRpcChannelBuffer,
  1678. PRPC_MESSAGE _pRpcMessage,
  1679. DWORD *_pdwStubPhase);
  1680. HRESULT STDMETHODCALLTYPE IUmiURLKeyList_RemoveAllKeys_Proxy(
  1681. IUmiURLKeyList __RPC_FAR * This,
  1682. /* [in] */ ULONG uFlags);
  1683. void __RPC_STUB IUmiURLKeyList_RemoveAllKeys_Stub(
  1684. IRpcStubBuffer *This,
  1685. IRpcChannelBuffer *_pRpcChannelBuffer,
  1686. PRPC_MESSAGE _pRpcMessage,
  1687. DWORD *_pdwStubPhase);
  1688. HRESULT STDMETHODCALLTYPE IUmiURLKeyList_GetKeysInfo_Proxy(
  1689. IUmiURLKeyList __RPC_FAR * This,
  1690. /* [in] */ ULONG uRequestedInfo,
  1691. /* [out] */ ULONGLONG __RPC_FAR *puResponse);
  1692. void __RPC_STUB IUmiURLKeyList_GetKeysInfo_Stub(
  1693. IRpcStubBuffer *This,
  1694. IRpcChannelBuffer *_pRpcChannelBuffer,
  1695. PRPC_MESSAGE _pRpcMessage,
  1696. DWORD *_pdwStubPhase);
  1697. #endif /* __IUmiURLKeyList_INTERFACE_DEFINED__ */
  1698. #ifndef __IUmiURL_INTERFACE_DEFINED__
  1699. #define __IUmiURL_INTERFACE_DEFINED__
  1700. /* interface IUmiURL */
  1701. /* [uuid][local][object] */
  1702. EXTERN_C const IID IID_IUmiURL;
  1703. #if defined(__cplusplus) && !defined(CINTERFACE)
  1704. MIDL_INTERFACE("12575a7d-d9db-11d3-a11f-00105a1f515a")
  1705. IUmiURL : public IUnknown
  1706. {
  1707. public:
  1708. virtual HRESULT STDMETHODCALLTYPE Set(
  1709. /* [in] */ long lFlags,
  1710. /* [in] */ LPCWSTR pszText) = 0;
  1711. virtual HRESULT STDMETHODCALLTYPE Get(
  1712. /* [in] */ long lFlags,
  1713. /* [out][in] */ ULONG __RPC_FAR *puBufSize,
  1714. /* [string][in] */ LPWSTR pszDest) = 0;
  1715. virtual HRESULT STDMETHODCALLTYPE GetPathInfo(
  1716. /* [in] */ ULONG uRequestedInfo,
  1717. /* [out] */ ULONGLONG __RPC_FAR *puResponse) = 0;
  1718. virtual HRESULT STDMETHODCALLTYPE SetLocator(
  1719. /* [string][in] */ LPCWSTR Name) = 0;
  1720. virtual HRESULT STDMETHODCALLTYPE GetLocator(
  1721. /* [out][in] */ ULONG __RPC_FAR *puNameBufLength,
  1722. /* [string][in] */ LPWSTR pName) = 0;
  1723. virtual HRESULT STDMETHODCALLTYPE SetRootNamespace(
  1724. /* [string][in] */ LPCWSTR Name) = 0;
  1725. virtual HRESULT STDMETHODCALLTYPE GetRootNamespace(
  1726. /* [out][in] */ ULONG __RPC_FAR *puNameBufLength,
  1727. /* [string][out][in] */ LPWSTR pName) = 0;
  1728. virtual HRESULT STDMETHODCALLTYPE GetComponentCount(
  1729. /* [out] */ ULONG __RPC_FAR *puCount) = 0;
  1730. virtual HRESULT STDMETHODCALLTYPE SetComponent(
  1731. /* [in] */ ULONG uIndex,
  1732. /* [in] */ LPWSTR pszClass) = 0;
  1733. virtual HRESULT STDMETHODCALLTYPE SetComponentFromText(
  1734. /* [in] */ ULONG uIndex,
  1735. /* [in] */ LPWSTR pszText) = 0;
  1736. virtual HRESULT STDMETHODCALLTYPE GetComponent(
  1737. /* [in] */ ULONG uIndex,
  1738. /* [out][in] */ ULONG __RPC_FAR *puClassNameBufSize,
  1739. /* [out][in] */ LPWSTR pszClass,
  1740. /* [out] */ IUmiURLKeyList __RPC_FAR *__RPC_FAR *pKeyList) = 0;
  1741. virtual HRESULT STDMETHODCALLTYPE GetComponentAsText(
  1742. /* [in] */ ULONG uIndex,
  1743. /* [out][in] */ ULONG __RPC_FAR *puTextBufSize,
  1744. /* [out][in] */ LPWSTR pszText) = 0;
  1745. virtual HRESULT STDMETHODCALLTYPE RemoveComponent(
  1746. /* [in] */ ULONG uIndex) = 0;
  1747. virtual HRESULT STDMETHODCALLTYPE RemoveAllComponents( void) = 0;
  1748. virtual HRESULT STDMETHODCALLTYPE SetLeafName(
  1749. /* [string][in] */ LPCWSTR Name) = 0;
  1750. virtual HRESULT STDMETHODCALLTYPE GetLeafName(
  1751. /* [out][in] */ ULONG __RPC_FAR *puBuffLength,
  1752. /* [string][out][in] */ LPWSTR pszName) = 0;
  1753. virtual HRESULT STDMETHODCALLTYPE GetKeyList(
  1754. /* [out] */ IUmiURLKeyList __RPC_FAR *__RPC_FAR *pOut) = 0;
  1755. virtual HRESULT STDMETHODCALLTYPE CreateLeafPart(
  1756. /* [in] */ long lFlags,
  1757. /* [string][in] */ LPCWSTR Name) = 0;
  1758. virtual HRESULT STDMETHODCALLTYPE DeleteLeafPart(
  1759. /* [in] */ long lFlags) = 0;
  1760. };
  1761. #else /* C style interface */
  1762. typedef struct IUmiURLVtbl
  1763. {
  1764. BEGIN_INTERFACE
  1765. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  1766. IUmiURL __RPC_FAR * This,
  1767. /* [in] */ REFIID riid,
  1768. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  1769. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  1770. IUmiURL __RPC_FAR * This);
  1771. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  1772. IUmiURL __RPC_FAR * This);
  1773. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Set )(
  1774. IUmiURL __RPC_FAR * This,
  1775. /* [in] */ long lFlags,
  1776. /* [in] */ LPCWSTR pszText);
  1777. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Get )(
  1778. IUmiURL __RPC_FAR * This,
  1779. /* [in] */ long lFlags,
  1780. /* [out][in] */ ULONG __RPC_FAR *puBufSize,
  1781. /* [string][in] */ LPWSTR pszDest);
  1782. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetPathInfo )(
  1783. IUmiURL __RPC_FAR * This,
  1784. /* [in] */ ULONG uRequestedInfo,
  1785. /* [out] */ ULONGLONG __RPC_FAR *puResponse);
  1786. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLocator )(
  1787. IUmiURL __RPC_FAR * This,
  1788. /* [string][in] */ LPCWSTR Name);
  1789. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLocator )(
  1790. IUmiURL __RPC_FAR * This,
  1791. /* [out][in] */ ULONG __RPC_FAR *puNameBufLength,
  1792. /* [string][in] */ LPWSTR pName);
  1793. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetRootNamespace )(
  1794. IUmiURL __RPC_FAR * This,
  1795. /* [string][in] */ LPCWSTR Name);
  1796. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetRootNamespace )(
  1797. IUmiURL __RPC_FAR * This,
  1798. /* [out][in] */ ULONG __RPC_FAR *puNameBufLength,
  1799. /* [string][out][in] */ LPWSTR pName);
  1800. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetComponentCount )(
  1801. IUmiURL __RPC_FAR * This,
  1802. /* [out] */ ULONG __RPC_FAR *puCount);
  1803. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetComponent )(
  1804. IUmiURL __RPC_FAR * This,
  1805. /* [in] */ ULONG uIndex,
  1806. /* [in] */ LPWSTR pszClass);
  1807. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetComponentFromText )(
  1808. IUmiURL __RPC_FAR * This,
  1809. /* [in] */ ULONG uIndex,
  1810. /* [in] */ LPWSTR pszText);
  1811. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetComponent )(
  1812. IUmiURL __RPC_FAR * This,
  1813. /* [in] */ ULONG uIndex,
  1814. /* [out][in] */ ULONG __RPC_FAR *puClassNameBufSize,
  1815. /* [out][in] */ LPWSTR pszClass,
  1816. /* [out] */ IUmiURLKeyList __RPC_FAR *__RPC_FAR *pKeyList);
  1817. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetComponentAsText )(
  1818. IUmiURL __RPC_FAR * This,
  1819. /* [in] */ ULONG uIndex,
  1820. /* [out][in] */ ULONG __RPC_FAR *puTextBufSize,
  1821. /* [out][in] */ LPWSTR pszText);
  1822. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveComponent )(
  1823. IUmiURL __RPC_FAR * This,
  1824. /* [in] */ ULONG uIndex);
  1825. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *RemoveAllComponents )(
  1826. IUmiURL __RPC_FAR * This);
  1827. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *SetLeafName )(
  1828. IUmiURL __RPC_FAR * This,
  1829. /* [string][in] */ LPCWSTR Name);
  1830. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLeafName )(
  1831. IUmiURL __RPC_FAR * This,
  1832. /* [out][in] */ ULONG __RPC_FAR *puBuffLength,
  1833. /* [string][out][in] */ LPWSTR pszName);
  1834. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetKeyList )(
  1835. IUmiURL __RPC_FAR * This,
  1836. /* [out] */ IUmiURLKeyList __RPC_FAR *__RPC_FAR *pOut);
  1837. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *CreateLeafPart )(
  1838. IUmiURL __RPC_FAR * This,
  1839. /* [in] */ long lFlags,
  1840. /* [string][in] */ LPCWSTR Name);
  1841. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *DeleteLeafPart )(
  1842. IUmiURL __RPC_FAR * This,
  1843. /* [in] */ long lFlags);
  1844. END_INTERFACE
  1845. } IUmiURLVtbl;
  1846. interface IUmiURL
  1847. {
  1848. CONST_VTBL struct IUmiURLVtbl __RPC_FAR *lpVtbl;
  1849. };
  1850. #ifdef COBJMACROS
  1851. #define IUmiURL_QueryInterface(This,riid,ppvObject) \
  1852. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1853. #define IUmiURL_AddRef(This) \
  1854. (This)->lpVtbl -> AddRef(This)
  1855. #define IUmiURL_Release(This) \
  1856. (This)->lpVtbl -> Release(This)
  1857. #define IUmiURL_Set(This,lFlags,pszText) \
  1858. (This)->lpVtbl -> Set(This,lFlags,pszText)
  1859. #define IUmiURL_Get(This,lFlags,puBufSize,pszDest) \
  1860. (This)->lpVtbl -> Get(This,lFlags,puBufSize,pszDest)
  1861. #define IUmiURL_GetPathInfo(This,uRequestedInfo,puResponse) \
  1862. (This)->lpVtbl -> GetPathInfo(This,uRequestedInfo,puResponse)
  1863. #define IUmiURL_SetLocator(This,Name) \
  1864. (This)->lpVtbl -> SetLocator(This,Name)
  1865. #define IUmiURL_GetLocator(This,puNameBufLength,pName) \
  1866. (This)->lpVtbl -> GetLocator(This,puNameBufLength,pName)
  1867. #define IUmiURL_SetRootNamespace(This,Name) \
  1868. (This)->lpVtbl -> SetRootNamespace(This,Name)
  1869. #define IUmiURL_GetRootNamespace(This,puNameBufLength,pName) \
  1870. (This)->lpVtbl -> GetRootNamespace(This,puNameBufLength,pName)
  1871. #define IUmiURL_GetComponentCount(This,puCount) \
  1872. (This)->lpVtbl -> GetComponentCount(This,puCount)
  1873. #define IUmiURL_SetComponent(This,uIndex,pszClass) \
  1874. (This)->lpVtbl -> SetComponent(This,uIndex,pszClass)
  1875. #define IUmiURL_SetComponentFromText(This,uIndex,pszText) \
  1876. (This)->lpVtbl -> SetComponentFromText(This,uIndex,pszText)
  1877. #define IUmiURL_GetComponent(This,uIndex,puClassNameBufSize,pszClass,pKeyList) \
  1878. (This)->lpVtbl -> GetComponent(This,uIndex,puClassNameBufSize,pszClass,pKeyList)
  1879. #define IUmiURL_GetComponentAsText(This,uIndex,puTextBufSize,pszText) \
  1880. (This)->lpVtbl -> GetComponentAsText(This,uIndex,puTextBufSize,pszText)
  1881. #define IUmiURL_RemoveComponent(This,uIndex) \
  1882. (This)->lpVtbl -> RemoveComponent(This,uIndex)
  1883. #define IUmiURL_RemoveAllComponents(This) \
  1884. (This)->lpVtbl -> RemoveAllComponents(This)
  1885. #define IUmiURL_SetLeafName(This,Name) \
  1886. (This)->lpVtbl -> SetLeafName(This,Name)
  1887. #define IUmiURL_GetLeafName(This,puBuffLength,pszName) \
  1888. (This)->lpVtbl -> GetLeafName(This,puBuffLength,pszName)
  1889. #define IUmiURL_GetKeyList(This,pOut) \
  1890. (This)->lpVtbl -> GetKeyList(This,pOut)
  1891. #define IUmiURL_CreateLeafPart(This,lFlags,Name) \
  1892. (This)->lpVtbl -> CreateLeafPart(This,lFlags,Name)
  1893. #define IUmiURL_DeleteLeafPart(This,lFlags) \
  1894. (This)->lpVtbl -> DeleteLeafPart(This,lFlags)
  1895. #endif /* COBJMACROS */
  1896. #endif /* C style interface */
  1897. HRESULT STDMETHODCALLTYPE IUmiURL_Set_Proxy(
  1898. IUmiURL __RPC_FAR * This,
  1899. /* [in] */ long lFlags,
  1900. /* [in] */ LPCWSTR pszText);
  1901. void __RPC_STUB IUmiURL_Set_Stub(
  1902. IRpcStubBuffer *This,
  1903. IRpcChannelBuffer *_pRpcChannelBuffer,
  1904. PRPC_MESSAGE _pRpcMessage,
  1905. DWORD *_pdwStubPhase);
  1906. HRESULT STDMETHODCALLTYPE IUmiURL_Get_Proxy(
  1907. IUmiURL __RPC_FAR * This,
  1908. /* [in] */ long lFlags,
  1909. /* [out][in] */ ULONG __RPC_FAR *puBufSize,
  1910. /* [string][in] */ LPWSTR pszDest);
  1911. void __RPC_STUB IUmiURL_Get_Stub(
  1912. IRpcStubBuffer *This,
  1913. IRpcChannelBuffer *_pRpcChannelBuffer,
  1914. PRPC_MESSAGE _pRpcMessage,
  1915. DWORD *_pdwStubPhase);
  1916. HRESULT STDMETHODCALLTYPE IUmiURL_GetPathInfo_Proxy(
  1917. IUmiURL __RPC_FAR * This,
  1918. /* [in] */ ULONG uRequestedInfo,
  1919. /* [out] */ ULONGLONG __RPC_FAR *puResponse);
  1920. void __RPC_STUB IUmiURL_GetPathInfo_Stub(
  1921. IRpcStubBuffer *This,
  1922. IRpcChannelBuffer *_pRpcChannelBuffer,
  1923. PRPC_MESSAGE _pRpcMessage,
  1924. DWORD *_pdwStubPhase);
  1925. HRESULT STDMETHODCALLTYPE IUmiURL_SetLocator_Proxy(
  1926. IUmiURL __RPC_FAR * This,
  1927. /* [string][in] */ LPCWSTR Name);
  1928. void __RPC_STUB IUmiURL_SetLocator_Stub(
  1929. IRpcStubBuffer *This,
  1930. IRpcChannelBuffer *_pRpcChannelBuffer,
  1931. PRPC_MESSAGE _pRpcMessage,
  1932. DWORD *_pdwStubPhase);
  1933. HRESULT STDMETHODCALLTYPE IUmiURL_GetLocator_Proxy(
  1934. IUmiURL __RPC_FAR * This,
  1935. /* [out][in] */ ULONG __RPC_FAR *puNameBufLength,
  1936. /* [string][in] */ LPWSTR pName);
  1937. void __RPC_STUB IUmiURL_GetLocator_Stub(
  1938. IRpcStubBuffer *This,
  1939. IRpcChannelBuffer *_pRpcChannelBuffer,
  1940. PRPC_MESSAGE _pRpcMessage,
  1941. DWORD *_pdwStubPhase);
  1942. HRESULT STDMETHODCALLTYPE IUmiURL_SetRootNamespace_Proxy(
  1943. IUmiURL __RPC_FAR * This,
  1944. /* [string][in] */ LPCWSTR Name);
  1945. void __RPC_STUB IUmiURL_SetRootNamespace_Stub(
  1946. IRpcStubBuffer *This,
  1947. IRpcChannelBuffer *_pRpcChannelBuffer,
  1948. PRPC_MESSAGE _pRpcMessage,
  1949. DWORD *_pdwStubPhase);
  1950. HRESULT STDMETHODCALLTYPE IUmiURL_GetRootNamespace_Proxy(
  1951. IUmiURL __RPC_FAR * This,
  1952. /* [out][in] */ ULONG __RPC_FAR *puNameBufLength,
  1953. /* [string][out][in] */ LPWSTR pName);
  1954. void __RPC_STUB IUmiURL_GetRootNamespace_Stub(
  1955. IRpcStubBuffer *This,
  1956. IRpcChannelBuffer *_pRpcChannelBuffer,
  1957. PRPC_MESSAGE _pRpcMessage,
  1958. DWORD *_pdwStubPhase);
  1959. HRESULT STDMETHODCALLTYPE IUmiURL_GetComponentCount_Proxy(
  1960. IUmiURL __RPC_FAR * This,
  1961. /* [out] */ ULONG __RPC_FAR *puCount);
  1962. void __RPC_STUB IUmiURL_GetComponentCount_Stub(
  1963. IRpcStubBuffer *This,
  1964. IRpcChannelBuffer *_pRpcChannelBuffer,
  1965. PRPC_MESSAGE _pRpcMessage,
  1966. DWORD *_pdwStubPhase);
  1967. HRESULT STDMETHODCALLTYPE IUmiURL_SetComponent_Proxy(
  1968. IUmiURL __RPC_FAR * This,
  1969. /* [in] */ ULONG uIndex,
  1970. /* [in] */ LPWSTR pszClass);
  1971. void __RPC_STUB IUmiURL_SetComponent_Stub(
  1972. IRpcStubBuffer *This,
  1973. IRpcChannelBuffer *_pRpcChannelBuffer,
  1974. PRPC_MESSAGE _pRpcMessage,
  1975. DWORD *_pdwStubPhase);
  1976. HRESULT STDMETHODCALLTYPE IUmiURL_SetComponentFromText_Proxy(
  1977. IUmiURL __RPC_FAR * This,
  1978. /* [in] */ ULONG uIndex,
  1979. /* [in] */ LPWSTR pszText);
  1980. void __RPC_STUB IUmiURL_SetComponentFromText_Stub(
  1981. IRpcStubBuffer *This,
  1982. IRpcChannelBuffer *_pRpcChannelBuffer,
  1983. PRPC_MESSAGE _pRpcMessage,
  1984. DWORD *_pdwStubPhase);
  1985. HRESULT STDMETHODCALLTYPE IUmiURL_GetComponent_Proxy(
  1986. IUmiURL __RPC_FAR * This,
  1987. /* [in] */ ULONG uIndex,
  1988. /* [out][in] */ ULONG __RPC_FAR *puClassNameBufSize,
  1989. /* [out][in] */ LPWSTR pszClass,
  1990. /* [out] */ IUmiURLKeyList __RPC_FAR *__RPC_FAR *pKeyList);
  1991. void __RPC_STUB IUmiURL_GetComponent_Stub(
  1992. IRpcStubBuffer *This,
  1993. IRpcChannelBuffer *_pRpcChannelBuffer,
  1994. PRPC_MESSAGE _pRpcMessage,
  1995. DWORD *_pdwStubPhase);
  1996. HRESULT STDMETHODCALLTYPE IUmiURL_GetComponentAsText_Proxy(
  1997. IUmiURL __RPC_FAR * This,
  1998. /* [in] */ ULONG uIndex,
  1999. /* [out][in] */ ULONG __RPC_FAR *puTextBufSize,
  2000. /* [out][in] */ LPWSTR pszText);
  2001. void __RPC_STUB IUmiURL_GetComponentAsText_Stub(
  2002. IRpcStubBuffer *This,
  2003. IRpcChannelBuffer *_pRpcChannelBuffer,
  2004. PRPC_MESSAGE _pRpcMessage,
  2005. DWORD *_pdwStubPhase);
  2006. HRESULT STDMETHODCALLTYPE IUmiURL_RemoveComponent_Proxy(
  2007. IUmiURL __RPC_FAR * This,
  2008. /* [in] */ ULONG uIndex);
  2009. void __RPC_STUB IUmiURL_RemoveComponent_Stub(
  2010. IRpcStubBuffer *This,
  2011. IRpcChannelBuffer *_pRpcChannelBuffer,
  2012. PRPC_MESSAGE _pRpcMessage,
  2013. DWORD *_pdwStubPhase);
  2014. HRESULT STDMETHODCALLTYPE IUmiURL_RemoveAllComponents_Proxy(
  2015. IUmiURL __RPC_FAR * This);
  2016. void __RPC_STUB IUmiURL_RemoveAllComponents_Stub(
  2017. IRpcStubBuffer *This,
  2018. IRpcChannelBuffer *_pRpcChannelBuffer,
  2019. PRPC_MESSAGE _pRpcMessage,
  2020. DWORD *_pdwStubPhase);
  2021. HRESULT STDMETHODCALLTYPE IUmiURL_SetLeafName_Proxy(
  2022. IUmiURL __RPC_FAR * This,
  2023. /* [string][in] */ LPCWSTR Name);
  2024. void __RPC_STUB IUmiURL_SetLeafName_Stub(
  2025. IRpcStubBuffer *This,
  2026. IRpcChannelBuffer *_pRpcChannelBuffer,
  2027. PRPC_MESSAGE _pRpcMessage,
  2028. DWORD *_pdwStubPhase);
  2029. HRESULT STDMETHODCALLTYPE IUmiURL_GetLeafName_Proxy(
  2030. IUmiURL __RPC_FAR * This,
  2031. /* [out][in] */ ULONG __RPC_FAR *puBuffLength,
  2032. /* [string][out][in] */ LPWSTR pszName);
  2033. void __RPC_STUB IUmiURL_GetLeafName_Stub(
  2034. IRpcStubBuffer *This,
  2035. IRpcChannelBuffer *_pRpcChannelBuffer,
  2036. PRPC_MESSAGE _pRpcMessage,
  2037. DWORD *_pdwStubPhase);
  2038. HRESULT STDMETHODCALLTYPE IUmiURL_GetKeyList_Proxy(
  2039. IUmiURL __RPC_FAR * This,
  2040. /* [out] */ IUmiURLKeyList __RPC_FAR *__RPC_FAR *pOut);
  2041. void __RPC_STUB IUmiURL_GetKeyList_Stub(
  2042. IRpcStubBuffer *This,
  2043. IRpcChannelBuffer *_pRpcChannelBuffer,
  2044. PRPC_MESSAGE _pRpcMessage,
  2045. DWORD *_pdwStubPhase);
  2046. HRESULT STDMETHODCALLTYPE IUmiURL_CreateLeafPart_Proxy(
  2047. IUmiURL __RPC_FAR * This,
  2048. /* [in] */ long lFlags,
  2049. /* [string][in] */ LPCWSTR Name);
  2050. void __RPC_STUB IUmiURL_CreateLeafPart_Stub(
  2051. IRpcStubBuffer *This,
  2052. IRpcChannelBuffer *_pRpcChannelBuffer,
  2053. PRPC_MESSAGE _pRpcMessage,
  2054. DWORD *_pdwStubPhase);
  2055. HRESULT STDMETHODCALLTYPE IUmiURL_DeleteLeafPart_Proxy(
  2056. IUmiURL __RPC_FAR * This,
  2057. /* [in] */ long lFlags);
  2058. void __RPC_STUB IUmiURL_DeleteLeafPart_Stub(
  2059. IRpcStubBuffer *This,
  2060. IRpcChannelBuffer *_pRpcChannelBuffer,
  2061. PRPC_MESSAGE _pRpcMessage,
  2062. DWORD *_pdwStubPhase);
  2063. #endif /* __IUmiURL_INTERFACE_DEFINED__ */
  2064. #ifndef __IUmiQuery_INTERFACE_DEFINED__
  2065. #define __IUmiQuery_INTERFACE_DEFINED__
  2066. /* interface IUmiQuery */
  2067. /* [uuid][local][object] */
  2068. EXTERN_C const IID IID_IUmiQuery;
  2069. #if defined(__cplusplus) && !defined(CINTERFACE)
  2070. MIDL_INTERFACE("12575a7e-d9db-11d3-a11f-00105a1f515a")
  2071. IUmiQuery : public IUmiBaseObject
  2072. {
  2073. public:
  2074. virtual HRESULT STDMETHODCALLTYPE Set(
  2075. /* [in] */ LPCWSTR pszLanguage,
  2076. /* [in] */ ULONG uFlags,
  2077. /* [in] */ LPCWSTR pszText) = 0;
  2078. virtual HRESULT STDMETHODCALLTYPE GetQuery(
  2079. /* [out][in] */ ULONG __RPC_FAR *puLangBufSize,
  2080. /* [out][in] */ LPWSTR pszLangBuf,
  2081. /* [out][in] */ ULONG __RPC_FAR *puQueryTextBufSize,
  2082. /* [out][in] */ LPWSTR pszQueryTextBuf) = 0;
  2083. };
  2084. #else /* C style interface */
  2085. typedef struct IUmiQueryVtbl
  2086. {
  2087. BEGIN_INTERFACE
  2088. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  2089. IUmiQuery __RPC_FAR * This,
  2090. /* [in] */ REFIID riid,
  2091. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2092. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  2093. IUmiQuery __RPC_FAR * This);
  2094. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  2095. IUmiQuery __RPC_FAR * This);
  2096. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Put )(
  2097. IUmiQuery __RPC_FAR * This,
  2098. /* [in] */ LPCWSTR pszName,
  2099. /* [in] */ ULONG uFlags,
  2100. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProp);
  2101. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Get )(
  2102. IUmiQuery __RPC_FAR * This,
  2103. /* [in] */ LPCWSTR pszName,
  2104. /* [in] */ ULONG uFlags,
  2105. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  2106. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAt )(
  2107. IUmiQuery __RPC_FAR * This,
  2108. /* [in] */ LPCWSTR pszName,
  2109. /* [in] */ ULONG uFlags,
  2110. /* [in] */ ULONG uBufferLength,
  2111. /* [out] */ LPVOID pExistingMem);
  2112. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetAs )(
  2113. IUmiQuery __RPC_FAR * This,
  2114. /* [in] */ LPCWSTR pszName,
  2115. /* [in] */ ULONG uFlags,
  2116. /* [in] */ ULONG uCoercionType,
  2117. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProp);
  2118. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *FreeMemory )(
  2119. IUmiQuery __RPC_FAR * This,
  2120. ULONG uReserved,
  2121. LPVOID pMem);
  2122. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Delete )(
  2123. IUmiQuery __RPC_FAR * This,
  2124. /* [in] */ LPCWSTR pszName,
  2125. /* [in] */ ULONG uFlags);
  2126. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetProps )(
  2127. IUmiQuery __RPC_FAR * This,
  2128. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  2129. /* [in] */ ULONG uNameCount,
  2130. /* [in] */ ULONG uFlags,
  2131. /* [out] */ UMI_PROPERTY_VALUES __RPC_FAR *__RPC_FAR *pProps);
  2132. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutProps )(
  2133. IUmiQuery __RPC_FAR * This,
  2134. /* [in] */ LPCWSTR __RPC_FAR *pszNames,
  2135. /* [in] */ ULONG uNameCount,
  2136. /* [in] */ ULONG uFlags,
  2137. /* [in] */ UMI_PROPERTY_VALUES __RPC_FAR *pProps);
  2138. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *PutFrom )(
  2139. IUmiQuery __RPC_FAR * This,
  2140. /* [in] */ LPCWSTR pszName,
  2141. /* [in] */ ULONG uFlags,
  2142. /* [in] */ ULONG uBufferLength,
  2143. /* [in] */ LPVOID pExistingMem);
  2144. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetLastStatus )(
  2145. IUmiQuery __RPC_FAR * This,
  2146. /* [in] */ ULONG uFlags,
  2147. /* [out] */ ULONG __RPC_FAR *puSpecificStatus,
  2148. /* [in] */ REFIID riid,
  2149. /* [iid_is][out] */ LPVOID __RPC_FAR *pStatusObj);
  2150. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetInterfacePropList )(
  2151. IUmiQuery __RPC_FAR * This,
  2152. /* [in] */ ULONG uFlags,
  2153. /* [out] */ IUmiPropList __RPC_FAR *__RPC_FAR *pPropList);
  2154. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *Set )(
  2155. IUmiQuery __RPC_FAR * This,
  2156. /* [in] */ LPCWSTR pszLanguage,
  2157. /* [in] */ ULONG uFlags,
  2158. /* [in] */ LPCWSTR pszText);
  2159. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetQuery )(
  2160. IUmiQuery __RPC_FAR * This,
  2161. /* [out][in] */ ULONG __RPC_FAR *puLangBufSize,
  2162. /* [out][in] */ LPWSTR pszLangBuf,
  2163. /* [out][in] */ ULONG __RPC_FAR *puQueryTextBufSize,
  2164. /* [out][in] */ LPWSTR pszQueryTextBuf);
  2165. END_INTERFACE
  2166. } IUmiQueryVtbl;
  2167. interface IUmiQuery
  2168. {
  2169. CONST_VTBL struct IUmiQueryVtbl __RPC_FAR *lpVtbl;
  2170. };
  2171. #ifdef COBJMACROS
  2172. #define IUmiQuery_QueryInterface(This,riid,ppvObject) \
  2173. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2174. #define IUmiQuery_AddRef(This) \
  2175. (This)->lpVtbl -> AddRef(This)
  2176. #define IUmiQuery_Release(This) \
  2177. (This)->lpVtbl -> Release(This)
  2178. #define IUmiQuery_Put(This,pszName,uFlags,pProp) \
  2179. (This)->lpVtbl -> Put(This,pszName,uFlags,pProp)
  2180. #define IUmiQuery_Get(This,pszName,uFlags,pProp) \
  2181. (This)->lpVtbl -> Get(This,pszName,uFlags,pProp)
  2182. #define IUmiQuery_GetAt(This,pszName,uFlags,uBufferLength,pExistingMem) \
  2183. (This)->lpVtbl -> GetAt(This,pszName,uFlags,uBufferLength,pExistingMem)
  2184. #define IUmiQuery_GetAs(This,pszName,uFlags,uCoercionType,pProp) \
  2185. (This)->lpVtbl -> GetAs(This,pszName,uFlags,uCoercionType,pProp)
  2186. #define IUmiQuery_FreeMemory(This,uReserved,pMem) \
  2187. (This)->lpVtbl -> FreeMemory(This,uReserved,pMem)
  2188. #define IUmiQuery_Delete(This,pszName,uFlags) \
  2189. (This)->lpVtbl -> Delete(This,pszName,uFlags)
  2190. #define IUmiQuery_GetProps(This,pszNames,uNameCount,uFlags,pProps) \
  2191. (This)->lpVtbl -> GetProps(This,pszNames,uNameCount,uFlags,pProps)
  2192. #define IUmiQuery_PutProps(This,pszNames,uNameCount,uFlags,pProps) \
  2193. (This)->lpVtbl -> PutProps(This,pszNames,uNameCount,uFlags,pProps)
  2194. #define IUmiQuery_PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem) \
  2195. (This)->lpVtbl -> PutFrom(This,pszName,uFlags,uBufferLength,pExistingMem)
  2196. #define IUmiQuery_GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj) \
  2197. (This)->lpVtbl -> GetLastStatus(This,uFlags,puSpecificStatus,riid,pStatusObj)
  2198. #define IUmiQuery_GetInterfacePropList(This,uFlags,pPropList) \
  2199. (This)->lpVtbl -> GetInterfacePropList(This,uFlags,pPropList)
  2200. #define IUmiQuery_Set(This,pszLanguage,uFlags,pszText) \
  2201. (This)->lpVtbl -> Set(This,pszLanguage,uFlags,pszText)
  2202. #define IUmiQuery_GetQuery(This,puLangBufSize,pszLangBuf,puQueryTextBufSize,pszQueryTextBuf) \
  2203. (This)->lpVtbl -> GetQuery(This,puLangBufSize,pszLangBuf,puQueryTextBufSize,pszQueryTextBuf)
  2204. #endif /* COBJMACROS */
  2205. #endif /* C style interface */
  2206. HRESULT STDMETHODCALLTYPE IUmiQuery_Set_Proxy(
  2207. IUmiQuery __RPC_FAR * This,
  2208. /* [in] */ LPCWSTR pszLanguage,
  2209. /* [in] */ ULONG uFlags,
  2210. /* [in] */ LPCWSTR pszText);
  2211. void __RPC_STUB IUmiQuery_Set_Stub(
  2212. IRpcStubBuffer *This,
  2213. IRpcChannelBuffer *_pRpcChannelBuffer,
  2214. PRPC_MESSAGE _pRpcMessage,
  2215. DWORD *_pdwStubPhase);
  2216. HRESULT STDMETHODCALLTYPE IUmiQuery_GetQuery_Proxy(
  2217. IUmiQuery __RPC_FAR * This,
  2218. /* [out][in] */ ULONG __RPC_FAR *puLangBufSize,
  2219. /* [out][in] */ LPWSTR pszLangBuf,
  2220. /* [out][in] */ ULONG __RPC_FAR *puQueryTextBufSize,
  2221. /* [out][in] */ LPWSTR pszQueryTextBuf);
  2222. void __RPC_STUB IUmiQuery_GetQuery_Stub(
  2223. IRpcStubBuffer *This,
  2224. IRpcChannelBuffer *_pRpcChannelBuffer,
  2225. PRPC_MESSAGE _pRpcMessage,
  2226. DWORD *_pdwStubPhase);
  2227. #endif /* __IUmiQuery_INTERFACE_DEFINED__ */
  2228. #ifndef __IUmiCustomInterfaceFactory_INTERFACE_DEFINED__
  2229. #define __IUmiCustomInterfaceFactory_INTERFACE_DEFINED__
  2230. /* interface IUmiCustomInterfaceFactory */
  2231. /* [uuid][local][object] */
  2232. EXTERN_C const IID IID_IUmiCustomInterfaceFactory;
  2233. #if defined(__cplusplus) && !defined(CINTERFACE)
  2234. MIDL_INTERFACE("14CD599E-2BE7-4c6f-B95B-B150DCD93585")
  2235. IUmiCustomInterfaceFactory : public IUnknown
  2236. {
  2237. public:
  2238. virtual HRESULT STDMETHODCALLTYPE GetCLSIDForIID(
  2239. /* [in] */ REFIID riid,
  2240. /* [in] */ long lFlags,
  2241. /* [out][in] */ CLSID __RPC_FAR *pCLSID) = 0;
  2242. virtual HRESULT STDMETHODCALLTYPE GetObjectByCLSID(
  2243. /* [in] */ CLSID clsid,
  2244. /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  2245. /* [in] */ DWORD dwClsContext,
  2246. /* [in] */ REFIID riid,
  2247. /* [in] */ long lFlags,
  2248. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppInterface) = 0;
  2249. virtual HRESULT STDMETHODCALLTYPE GetCLSIDForNames(
  2250. /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2251. /* [in] */ UINT cNames,
  2252. /* [in] */ LCID lcid,
  2253. /* [size_is][out] */ DISPID __RPC_FAR *rgDispId,
  2254. /* [in] */ long lFlags,
  2255. /* [out][in] */ CLSID __RPC_FAR *pCLSID) = 0;
  2256. };
  2257. #else /* C style interface */
  2258. typedef struct IUmiCustomInterfaceFactoryVtbl
  2259. {
  2260. BEGIN_INTERFACE
  2261. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *QueryInterface )(
  2262. IUmiCustomInterfaceFactory __RPC_FAR * This,
  2263. /* [in] */ REFIID riid,
  2264. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject);
  2265. ULONG ( STDMETHODCALLTYPE __RPC_FAR *AddRef )(
  2266. IUmiCustomInterfaceFactory __RPC_FAR * This);
  2267. ULONG ( STDMETHODCALLTYPE __RPC_FAR *Release )(
  2268. IUmiCustomInterfaceFactory __RPC_FAR * This);
  2269. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCLSIDForIID )(
  2270. IUmiCustomInterfaceFactory __RPC_FAR * This,
  2271. /* [in] */ REFIID riid,
  2272. /* [in] */ long lFlags,
  2273. /* [out][in] */ CLSID __RPC_FAR *pCLSID);
  2274. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetObjectByCLSID )(
  2275. IUmiCustomInterfaceFactory __RPC_FAR * This,
  2276. /* [in] */ CLSID clsid,
  2277. /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  2278. /* [in] */ DWORD dwClsContext,
  2279. /* [in] */ REFIID riid,
  2280. /* [in] */ long lFlags,
  2281. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppInterface);
  2282. HRESULT ( STDMETHODCALLTYPE __RPC_FAR *GetCLSIDForNames )(
  2283. IUmiCustomInterfaceFactory __RPC_FAR * This,
  2284. /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2285. /* [in] */ UINT cNames,
  2286. /* [in] */ LCID lcid,
  2287. /* [size_is][out] */ DISPID __RPC_FAR *rgDispId,
  2288. /* [in] */ long lFlags,
  2289. /* [out][in] */ CLSID __RPC_FAR *pCLSID);
  2290. END_INTERFACE
  2291. } IUmiCustomInterfaceFactoryVtbl;
  2292. interface IUmiCustomInterfaceFactory
  2293. {
  2294. CONST_VTBL struct IUmiCustomInterfaceFactoryVtbl __RPC_FAR *lpVtbl;
  2295. };
  2296. #ifdef COBJMACROS
  2297. #define IUmiCustomInterfaceFactory_QueryInterface(This,riid,ppvObject) \
  2298. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2299. #define IUmiCustomInterfaceFactory_AddRef(This) \
  2300. (This)->lpVtbl -> AddRef(This)
  2301. #define IUmiCustomInterfaceFactory_Release(This) \
  2302. (This)->lpVtbl -> Release(This)
  2303. #define IUmiCustomInterfaceFactory_GetCLSIDForIID(This,riid,lFlags,pCLSID) \
  2304. (This)->lpVtbl -> GetCLSIDForIID(This,riid,lFlags,pCLSID)
  2305. #define IUmiCustomInterfaceFactory_GetObjectByCLSID(This,clsid,pUnkOuter,dwClsContext,riid,lFlags,ppInterface) \
  2306. (This)->lpVtbl -> GetObjectByCLSID(This,clsid,pUnkOuter,dwClsContext,riid,lFlags,ppInterface)
  2307. #define IUmiCustomInterfaceFactory_GetCLSIDForNames(This,rgszNames,cNames,lcid,rgDispId,lFlags,pCLSID) \
  2308. (This)->lpVtbl -> GetCLSIDForNames(This,rgszNames,cNames,lcid,rgDispId,lFlags,pCLSID)
  2309. #endif /* COBJMACROS */
  2310. #endif /* C style interface */
  2311. HRESULT STDMETHODCALLTYPE IUmiCustomInterfaceFactory_GetCLSIDForIID_Proxy(
  2312. IUmiCustomInterfaceFactory __RPC_FAR * This,
  2313. /* [in] */ REFIID riid,
  2314. /* [in] */ long lFlags,
  2315. /* [out][in] */ CLSID __RPC_FAR *pCLSID);
  2316. void __RPC_STUB IUmiCustomInterfaceFactory_GetCLSIDForIID_Stub(
  2317. IRpcStubBuffer *This,
  2318. IRpcChannelBuffer *_pRpcChannelBuffer,
  2319. PRPC_MESSAGE _pRpcMessage,
  2320. DWORD *_pdwStubPhase);
  2321. HRESULT STDMETHODCALLTYPE IUmiCustomInterfaceFactory_GetObjectByCLSID_Proxy(
  2322. IUmiCustomInterfaceFactory __RPC_FAR * This,
  2323. /* [in] */ CLSID clsid,
  2324. /* [in] */ IUnknown __RPC_FAR *pUnkOuter,
  2325. /* [in] */ DWORD dwClsContext,
  2326. /* [in] */ REFIID riid,
  2327. /* [in] */ long lFlags,
  2328. /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppInterface);
  2329. void __RPC_STUB IUmiCustomInterfaceFactory_GetObjectByCLSID_Stub(
  2330. IRpcStubBuffer *This,
  2331. IRpcChannelBuffer *_pRpcChannelBuffer,
  2332. PRPC_MESSAGE _pRpcMessage,
  2333. DWORD *_pdwStubPhase);
  2334. HRESULT STDMETHODCALLTYPE IUmiCustomInterfaceFactory_GetCLSIDForNames_Proxy(
  2335. IUmiCustomInterfaceFactory __RPC_FAR * This,
  2336. /* [size_is][in] */ LPOLESTR __RPC_FAR *rgszNames,
  2337. /* [in] */ UINT cNames,
  2338. /* [in] */ LCID lcid,
  2339. /* [size_is][out] */ DISPID __RPC_FAR *rgDispId,
  2340. /* [in] */ long lFlags,
  2341. /* [out][in] */ CLSID __RPC_FAR *pCLSID);
  2342. void __RPC_STUB IUmiCustomInterfaceFactory_GetCLSIDForNames_Stub(
  2343. IRpcStubBuffer *This,
  2344. IRpcChannelBuffer *_pRpcChannelBuffer,
  2345. PRPC_MESSAGE _pRpcMessage,
  2346. DWORD *_pdwStubPhase);
  2347. #endif /* __IUmiCustomInterfaceFactory_INTERFACE_DEFINED__ */
  2348. EXTERN_C const CLSID CLSID_UmiDefURL;
  2349. #ifdef __cplusplus
  2350. class DECLSPEC_UUID("d4b21cc2-f2a5-453e-8459-b27f362cb0e0")
  2351. UmiDefURL;
  2352. #endif
  2353. #endif /* __UMI_V6_LIBRARY_DEFINED__ */
  2354. /* Additional Prototypes for ALL interfaces */
  2355. /* end of Additional Prototypes */
  2356. #ifdef __cplusplus
  2357. }
  2358. #endif
  2359. #endif