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

2073 lines
62 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for wbemprov.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __wbemprov_h__
  27. #define __wbemprov_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IWbemPropertyProvider_FWD_DEFINED__
  33. #define __IWbemPropertyProvider_FWD_DEFINED__
  34. typedef interface IWbemPropertyProvider IWbemPropertyProvider;
  35. #endif /* __IWbemPropertyProvider_FWD_DEFINED__ */
  36. #ifndef __IWbemUnboundObjectSink_FWD_DEFINED__
  37. #define __IWbemUnboundObjectSink_FWD_DEFINED__
  38. typedef interface IWbemUnboundObjectSink IWbemUnboundObjectSink;
  39. #endif /* __IWbemUnboundObjectSink_FWD_DEFINED__ */
  40. #ifndef __IWbemEventProvider_FWD_DEFINED__
  41. #define __IWbemEventProvider_FWD_DEFINED__
  42. typedef interface IWbemEventProvider IWbemEventProvider;
  43. #endif /* __IWbemEventProvider_FWD_DEFINED__ */
  44. #ifndef __IWbemEventProviderQuerySink_FWD_DEFINED__
  45. #define __IWbemEventProviderQuerySink_FWD_DEFINED__
  46. typedef interface IWbemEventProviderQuerySink IWbemEventProviderQuerySink;
  47. #endif /* __IWbemEventProviderQuerySink_FWD_DEFINED__ */
  48. #ifndef __IWbemEventProviderSecurity_FWD_DEFINED__
  49. #define __IWbemEventProviderSecurity_FWD_DEFINED__
  50. typedef interface IWbemEventProviderSecurity IWbemEventProviderSecurity;
  51. #endif /* __IWbemEventProviderSecurity_FWD_DEFINED__ */
  52. #ifndef __IWbemEventConsumerProvider_FWD_DEFINED__
  53. #define __IWbemEventConsumerProvider_FWD_DEFINED__
  54. typedef interface IWbemEventConsumerProvider IWbemEventConsumerProvider;
  55. #endif /* __IWbemEventConsumerProvider_FWD_DEFINED__ */
  56. #ifndef __IWbemProviderInitSink_FWD_DEFINED__
  57. #define __IWbemProviderInitSink_FWD_DEFINED__
  58. typedef interface IWbemProviderInitSink IWbemProviderInitSink;
  59. #endif /* __IWbemProviderInitSink_FWD_DEFINED__ */
  60. #ifndef __IWbemProviderInit_FWD_DEFINED__
  61. #define __IWbemProviderInit_FWD_DEFINED__
  62. typedef interface IWbemProviderInit IWbemProviderInit;
  63. #endif /* __IWbemProviderInit_FWD_DEFINED__ */
  64. #ifndef __IWbemHiPerfProvider_FWD_DEFINED__
  65. #define __IWbemHiPerfProvider_FWD_DEFINED__
  66. typedef interface IWbemHiPerfProvider IWbemHiPerfProvider;
  67. #endif /* __IWbemHiPerfProvider_FWD_DEFINED__ */
  68. #ifndef __IWbemDecoupledRegistrar_FWD_DEFINED__
  69. #define __IWbemDecoupledRegistrar_FWD_DEFINED__
  70. typedef interface IWbemDecoupledRegistrar IWbemDecoupledRegistrar;
  71. #endif /* __IWbemDecoupledRegistrar_FWD_DEFINED__ */
  72. #ifndef __WbemAdministrativeLocator_FWD_DEFINED__
  73. #define __WbemAdministrativeLocator_FWD_DEFINED__
  74. #ifdef __cplusplus
  75. typedef class WbemAdministrativeLocator WbemAdministrativeLocator;
  76. #else
  77. typedef struct WbemAdministrativeLocator WbemAdministrativeLocator;
  78. #endif /* __cplusplus */
  79. #endif /* __WbemAdministrativeLocator_FWD_DEFINED__ */
  80. #ifndef __WbemAuthenticatedLocator_FWD_DEFINED__
  81. #define __WbemAuthenticatedLocator_FWD_DEFINED__
  82. #ifdef __cplusplus
  83. typedef class WbemAuthenticatedLocator WbemAuthenticatedLocator;
  84. #else
  85. typedef struct WbemAuthenticatedLocator WbemAuthenticatedLocator;
  86. #endif /* __cplusplus */
  87. #endif /* __WbemAuthenticatedLocator_FWD_DEFINED__ */
  88. #ifndef __WbemUnauthenticatedLocator_FWD_DEFINED__
  89. #define __WbemUnauthenticatedLocator_FWD_DEFINED__
  90. #ifdef __cplusplus
  91. typedef class WbemUnauthenticatedLocator WbemUnauthenticatedLocator;
  92. #else
  93. typedef struct WbemUnauthenticatedLocator WbemUnauthenticatedLocator;
  94. #endif /* __cplusplus */
  95. #endif /* __WbemUnauthenticatedLocator_FWD_DEFINED__ */
  96. #ifndef __WbemDecoupledRegistrar_FWD_DEFINED__
  97. #define __WbemDecoupledRegistrar_FWD_DEFINED__
  98. #ifdef __cplusplus
  99. typedef class WbemDecoupledRegistrar WbemDecoupledRegistrar;
  100. #else
  101. typedef struct WbemDecoupledRegistrar WbemDecoupledRegistrar;
  102. #endif /* __cplusplus */
  103. #endif /* __WbemDecoupledRegistrar_FWD_DEFINED__ */
  104. #ifndef __WbemDecoupledBasicEventProvider_FWD_DEFINED__
  105. #define __WbemDecoupledBasicEventProvider_FWD_DEFINED__
  106. #ifdef __cplusplus
  107. typedef class WbemDecoupledBasicEventProvider WbemDecoupledBasicEventProvider;
  108. #else
  109. typedef struct WbemDecoupledBasicEventProvider WbemDecoupledBasicEventProvider;
  110. #endif /* __cplusplus */
  111. #endif /* __WbemDecoupledBasicEventProvider_FWD_DEFINED__ */
  112. #ifndef __IWbemUnboundObjectSink_FWD_DEFINED__
  113. #define __IWbemUnboundObjectSink_FWD_DEFINED__
  114. typedef interface IWbemUnboundObjectSink IWbemUnboundObjectSink;
  115. #endif /* __IWbemUnboundObjectSink_FWD_DEFINED__ */
  116. #ifndef __IWbemPropertyProvider_FWD_DEFINED__
  117. #define __IWbemPropertyProvider_FWD_DEFINED__
  118. typedef interface IWbemPropertyProvider IWbemPropertyProvider;
  119. #endif /* __IWbemPropertyProvider_FWD_DEFINED__ */
  120. #ifndef __IWbemEventProvider_FWD_DEFINED__
  121. #define __IWbemEventProvider_FWD_DEFINED__
  122. typedef interface IWbemEventProvider IWbemEventProvider;
  123. #endif /* __IWbemEventProvider_FWD_DEFINED__ */
  124. #ifndef __IWbemEventProviderQuerySink_FWD_DEFINED__
  125. #define __IWbemEventProviderQuerySink_FWD_DEFINED__
  126. typedef interface IWbemEventProviderQuerySink IWbemEventProviderQuerySink;
  127. #endif /* __IWbemEventProviderQuerySink_FWD_DEFINED__ */
  128. #ifndef __IWbemEventProviderSecurity_FWD_DEFINED__
  129. #define __IWbemEventProviderSecurity_FWD_DEFINED__
  130. typedef interface IWbemEventProviderSecurity IWbemEventProviderSecurity;
  131. #endif /* __IWbemEventProviderSecurity_FWD_DEFINED__ */
  132. #ifndef __IWbemProviderIdentity_FWD_DEFINED__
  133. #define __IWbemProviderIdentity_FWD_DEFINED__
  134. typedef interface IWbemProviderIdentity IWbemProviderIdentity;
  135. #endif /* __IWbemProviderIdentity_FWD_DEFINED__ */
  136. #ifndef __IWbemEventConsumerProvider_FWD_DEFINED__
  137. #define __IWbemEventConsumerProvider_FWD_DEFINED__
  138. typedef interface IWbemEventConsumerProvider IWbemEventConsumerProvider;
  139. #endif /* __IWbemEventConsumerProvider_FWD_DEFINED__ */
  140. #ifndef __IWbemProviderInitSink_FWD_DEFINED__
  141. #define __IWbemProviderInitSink_FWD_DEFINED__
  142. typedef interface IWbemProviderInitSink IWbemProviderInitSink;
  143. #endif /* __IWbemProviderInitSink_FWD_DEFINED__ */
  144. #ifndef __IWbemProviderInit_FWD_DEFINED__
  145. #define __IWbemProviderInit_FWD_DEFINED__
  146. typedef interface IWbemProviderInit IWbemProviderInit;
  147. #endif /* __IWbemProviderInit_FWD_DEFINED__ */
  148. #ifndef __IWbemHiPerfProvider_FWD_DEFINED__
  149. #define __IWbemHiPerfProvider_FWD_DEFINED__
  150. typedef interface IWbemHiPerfProvider IWbemHiPerfProvider;
  151. #endif /* __IWbemHiPerfProvider_FWD_DEFINED__ */
  152. #ifndef __IWbemDecoupledRegistrar_FWD_DEFINED__
  153. #define __IWbemDecoupledRegistrar_FWD_DEFINED__
  154. typedef interface IWbemDecoupledRegistrar IWbemDecoupledRegistrar;
  155. #endif /* __IWbemDecoupledRegistrar_FWD_DEFINED__ */
  156. #ifndef __IWbemDecoupledBasicEventProvider_FWD_DEFINED__
  157. #define __IWbemDecoupledBasicEventProvider_FWD_DEFINED__
  158. typedef interface IWbemDecoupledBasicEventProvider IWbemDecoupledBasicEventProvider;
  159. #endif /* __IWbemDecoupledBasicEventProvider_FWD_DEFINED__ */
  160. #ifndef __IWbemEventSink_FWD_DEFINED__
  161. #define __IWbemEventSink_FWD_DEFINED__
  162. typedef interface IWbemEventSink IWbemEventSink;
  163. #endif /* __IWbemEventSink_FWD_DEFINED__ */
  164. /* header files for imported files */
  165. #include "objidl.h"
  166. #include "oleidl.h"
  167. #include "oaidl.h"
  168. #include "wbemcli.h"
  169. #ifdef __cplusplus
  170. extern "C"{
  171. #endif
  172. void * __RPC_USER MIDL_user_allocate(size_t);
  173. void __RPC_USER MIDL_user_free( void * );
  174. /* interface __MIDL_itf_wbemprov_0000 */
  175. /* [local] */
  176. /*******************************************************************************/
  177. /* */
  178. /* Copyright � Microsoft Corporation. All rights reserved. */
  179. /* */
  180. /* This IDL file defines the interfaces that WBEM providers need in */
  181. /* addition to the client interfaces defined in WBEMCLI.IDL */
  182. /* */
  183. /*******************************************************************************/
  184. typedef VARIANT WBEM_VARIANT;
  185. typedef /* [string] */ WCHAR *WBEM_WSTR;
  186. typedef /* [string] */ const WCHAR *WBEM_CWSTR;
  187. typedef /* [v1_enum] */
  188. enum tag_WBEM_PROVIDER_REQUIREMENTS_TYPE
  189. { WBEM_REQUIREMENTS_START_POSTFILTER = 0,
  190. WBEM_REQUIREMENTS_STOP_POSTFILTER = 1,
  191. WBEM_REQUIREMENTS_RECHECK_SUBSCRIPTIONS = 2
  192. } WBEM_PROVIDER_REQUIREMENTS_TYPE;
  193. extern RPC_IF_HANDLE __MIDL_itf_wbemprov_0000_v0_0_c_ifspec;
  194. extern RPC_IF_HANDLE __MIDL_itf_wbemprov_0000_v0_0_s_ifspec;
  195. #ifndef __WbemProviders_v1_LIBRARY_DEFINED__
  196. #define __WbemProviders_v1_LIBRARY_DEFINED__
  197. /* library WbemProviders_v1 */
  198. /* [uuid] */
  199. EXTERN_C const IID LIBID_WbemProviders_v1;
  200. #ifndef __IWbemPropertyProvider_INTERFACE_DEFINED__
  201. #define __IWbemPropertyProvider_INTERFACE_DEFINED__
  202. /* interface IWbemPropertyProvider */
  203. /* [uuid][object][restricted] */
  204. EXTERN_C const IID IID_IWbemPropertyProvider;
  205. #if defined(__cplusplus) && !defined(CINTERFACE)
  206. MIDL_INTERFACE("CE61E841-65BC-11d0-B6BD-00AA003240C7")
  207. IWbemPropertyProvider : public IUnknown
  208. {
  209. public:
  210. virtual HRESULT STDMETHODCALLTYPE GetProperty(
  211. /* [in] */ long lFlags,
  212. /* [in] */ const BSTR strLocale,
  213. /* [in] */ const BSTR strClassMapping,
  214. /* [in] */ const BSTR strInstMapping,
  215. /* [in] */ const BSTR strPropMapping,
  216. /* [out] */ VARIANT *pvValue) = 0;
  217. virtual HRESULT STDMETHODCALLTYPE PutProperty(
  218. /* [in] */ long lFlags,
  219. /* [in] */ const BSTR strLocale,
  220. /* [in] */ const BSTR strClassMapping,
  221. /* [in] */ const BSTR strInstMapping,
  222. /* [in] */ const BSTR strPropMapping,
  223. /* [in] */ const VARIANT *pvValue) = 0;
  224. };
  225. #else /* C style interface */
  226. typedef struct IWbemPropertyProviderVtbl
  227. {
  228. BEGIN_INTERFACE
  229. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  230. IWbemPropertyProvider * This,
  231. /* [in] */ REFIID riid,
  232. /* [iid_is][out] */ void **ppvObject);
  233. ULONG ( STDMETHODCALLTYPE *AddRef )(
  234. IWbemPropertyProvider * This);
  235. ULONG ( STDMETHODCALLTYPE *Release )(
  236. IWbemPropertyProvider * This);
  237. HRESULT ( STDMETHODCALLTYPE *GetProperty )(
  238. IWbemPropertyProvider * This,
  239. /* [in] */ long lFlags,
  240. /* [in] */ const BSTR strLocale,
  241. /* [in] */ const BSTR strClassMapping,
  242. /* [in] */ const BSTR strInstMapping,
  243. /* [in] */ const BSTR strPropMapping,
  244. /* [out] */ VARIANT *pvValue);
  245. HRESULT ( STDMETHODCALLTYPE *PutProperty )(
  246. IWbemPropertyProvider * This,
  247. /* [in] */ long lFlags,
  248. /* [in] */ const BSTR strLocale,
  249. /* [in] */ const BSTR strClassMapping,
  250. /* [in] */ const BSTR strInstMapping,
  251. /* [in] */ const BSTR strPropMapping,
  252. /* [in] */ const VARIANT *pvValue);
  253. END_INTERFACE
  254. } IWbemPropertyProviderVtbl;
  255. interface IWbemPropertyProvider
  256. {
  257. CONST_VTBL struct IWbemPropertyProviderVtbl *lpVtbl;
  258. };
  259. #ifdef COBJMACROS
  260. #define IWbemPropertyProvider_QueryInterface(This,riid,ppvObject) \
  261. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  262. #define IWbemPropertyProvider_AddRef(This) \
  263. (This)->lpVtbl -> AddRef(This)
  264. #define IWbemPropertyProvider_Release(This) \
  265. (This)->lpVtbl -> Release(This)
  266. #define IWbemPropertyProvider_GetProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue) \
  267. (This)->lpVtbl -> GetProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue)
  268. #define IWbemPropertyProvider_PutProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue) \
  269. (This)->lpVtbl -> PutProperty(This,lFlags,strLocale,strClassMapping,strInstMapping,strPropMapping,pvValue)
  270. #endif /* COBJMACROS */
  271. #endif /* C style interface */
  272. HRESULT STDMETHODCALLTYPE IWbemPropertyProvider_GetProperty_Proxy(
  273. IWbemPropertyProvider * This,
  274. /* [in] */ long lFlags,
  275. /* [in] */ const BSTR strLocale,
  276. /* [in] */ const BSTR strClassMapping,
  277. /* [in] */ const BSTR strInstMapping,
  278. /* [in] */ const BSTR strPropMapping,
  279. /* [out] */ VARIANT *pvValue);
  280. void __RPC_STUB IWbemPropertyProvider_GetProperty_Stub(
  281. IRpcStubBuffer *This,
  282. IRpcChannelBuffer *_pRpcChannelBuffer,
  283. PRPC_MESSAGE _pRpcMessage,
  284. DWORD *_pdwStubPhase);
  285. HRESULT STDMETHODCALLTYPE IWbemPropertyProvider_PutProperty_Proxy(
  286. IWbemPropertyProvider * This,
  287. /* [in] */ long lFlags,
  288. /* [in] */ const BSTR strLocale,
  289. /* [in] */ const BSTR strClassMapping,
  290. /* [in] */ const BSTR strInstMapping,
  291. /* [in] */ const BSTR strPropMapping,
  292. /* [in] */ const VARIANT *pvValue);
  293. void __RPC_STUB IWbemPropertyProvider_PutProperty_Stub(
  294. IRpcStubBuffer *This,
  295. IRpcChannelBuffer *_pRpcChannelBuffer,
  296. PRPC_MESSAGE _pRpcMessage,
  297. DWORD *_pdwStubPhase);
  298. #endif /* __IWbemPropertyProvider_INTERFACE_DEFINED__ */
  299. #ifndef __IWbemUnboundObjectSink_INTERFACE_DEFINED__
  300. #define __IWbemUnboundObjectSink_INTERFACE_DEFINED__
  301. /* interface IWbemUnboundObjectSink */
  302. /* [uuid][object][restricted] */
  303. EXTERN_C const IID IID_IWbemUnboundObjectSink;
  304. #if defined(__cplusplus) && !defined(CINTERFACE)
  305. MIDL_INTERFACE("e246107b-b06e-11d0-ad61-00c04fd8fdff")
  306. IWbemUnboundObjectSink : public IUnknown
  307. {
  308. public:
  309. virtual HRESULT STDMETHODCALLTYPE IndicateToConsumer(
  310. /* [in] */ IWbemClassObject *pLogicalConsumer,
  311. /* [in] */ long lNumObjects,
  312. /* [size_is][in] */ IWbemClassObject **apObjects) = 0;
  313. };
  314. #else /* C style interface */
  315. typedef struct IWbemUnboundObjectSinkVtbl
  316. {
  317. BEGIN_INTERFACE
  318. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  319. IWbemUnboundObjectSink * This,
  320. /* [in] */ REFIID riid,
  321. /* [iid_is][out] */ void **ppvObject);
  322. ULONG ( STDMETHODCALLTYPE *AddRef )(
  323. IWbemUnboundObjectSink * This);
  324. ULONG ( STDMETHODCALLTYPE *Release )(
  325. IWbemUnboundObjectSink * This);
  326. HRESULT ( STDMETHODCALLTYPE *IndicateToConsumer )(
  327. IWbemUnboundObjectSink * This,
  328. /* [in] */ IWbemClassObject *pLogicalConsumer,
  329. /* [in] */ long lNumObjects,
  330. /* [size_is][in] */ IWbemClassObject **apObjects);
  331. END_INTERFACE
  332. } IWbemUnboundObjectSinkVtbl;
  333. interface IWbemUnboundObjectSink
  334. {
  335. CONST_VTBL struct IWbemUnboundObjectSinkVtbl *lpVtbl;
  336. };
  337. #ifdef COBJMACROS
  338. #define IWbemUnboundObjectSink_QueryInterface(This,riid,ppvObject) \
  339. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  340. #define IWbemUnboundObjectSink_AddRef(This) \
  341. (This)->lpVtbl -> AddRef(This)
  342. #define IWbemUnboundObjectSink_Release(This) \
  343. (This)->lpVtbl -> Release(This)
  344. #define IWbemUnboundObjectSink_IndicateToConsumer(This,pLogicalConsumer,lNumObjects,apObjects) \
  345. (This)->lpVtbl -> IndicateToConsumer(This,pLogicalConsumer,lNumObjects,apObjects)
  346. #endif /* COBJMACROS */
  347. #endif /* C style interface */
  348. HRESULT STDMETHODCALLTYPE IWbemUnboundObjectSink_IndicateToConsumer_Proxy(
  349. IWbemUnboundObjectSink * This,
  350. /* [in] */ IWbemClassObject *pLogicalConsumer,
  351. /* [in] */ long lNumObjects,
  352. /* [size_is][in] */ IWbemClassObject **apObjects);
  353. void __RPC_STUB IWbemUnboundObjectSink_IndicateToConsumer_Stub(
  354. IRpcStubBuffer *This,
  355. IRpcChannelBuffer *_pRpcChannelBuffer,
  356. PRPC_MESSAGE _pRpcMessage,
  357. DWORD *_pdwStubPhase);
  358. #endif /* __IWbemUnboundObjectSink_INTERFACE_DEFINED__ */
  359. #ifndef __IWbemEventProvider_INTERFACE_DEFINED__
  360. #define __IWbemEventProvider_INTERFACE_DEFINED__
  361. /* interface IWbemEventProvider */
  362. /* [uuid][object][restricted] */
  363. EXTERN_C const IID IID_IWbemEventProvider;
  364. #if defined(__cplusplus) && !defined(CINTERFACE)
  365. MIDL_INTERFACE("e245105b-b06e-11d0-ad61-00c04fd8fdff")
  366. IWbemEventProvider : public IUnknown
  367. {
  368. public:
  369. virtual HRESULT STDMETHODCALLTYPE ProvideEvents(
  370. /* [in] */ IWbemObjectSink *pSink,
  371. /* [in] */ long lFlags) = 0;
  372. };
  373. #else /* C style interface */
  374. typedef struct IWbemEventProviderVtbl
  375. {
  376. BEGIN_INTERFACE
  377. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  378. IWbemEventProvider * This,
  379. /* [in] */ REFIID riid,
  380. /* [iid_is][out] */ void **ppvObject);
  381. ULONG ( STDMETHODCALLTYPE *AddRef )(
  382. IWbemEventProvider * This);
  383. ULONG ( STDMETHODCALLTYPE *Release )(
  384. IWbemEventProvider * This);
  385. HRESULT ( STDMETHODCALLTYPE *ProvideEvents )(
  386. IWbemEventProvider * This,
  387. /* [in] */ IWbemObjectSink *pSink,
  388. /* [in] */ long lFlags);
  389. END_INTERFACE
  390. } IWbemEventProviderVtbl;
  391. interface IWbemEventProvider
  392. {
  393. CONST_VTBL struct IWbemEventProviderVtbl *lpVtbl;
  394. };
  395. #ifdef COBJMACROS
  396. #define IWbemEventProvider_QueryInterface(This,riid,ppvObject) \
  397. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  398. #define IWbemEventProvider_AddRef(This) \
  399. (This)->lpVtbl -> AddRef(This)
  400. #define IWbemEventProvider_Release(This) \
  401. (This)->lpVtbl -> Release(This)
  402. #define IWbemEventProvider_ProvideEvents(This,pSink,lFlags) \
  403. (This)->lpVtbl -> ProvideEvents(This,pSink,lFlags)
  404. #endif /* COBJMACROS */
  405. #endif /* C style interface */
  406. HRESULT STDMETHODCALLTYPE IWbemEventProvider_ProvideEvents_Proxy(
  407. IWbemEventProvider * This,
  408. /* [in] */ IWbemObjectSink *pSink,
  409. /* [in] */ long lFlags);
  410. void __RPC_STUB IWbemEventProvider_ProvideEvents_Stub(
  411. IRpcStubBuffer *This,
  412. IRpcChannelBuffer *_pRpcChannelBuffer,
  413. PRPC_MESSAGE _pRpcMessage,
  414. DWORD *_pdwStubPhase);
  415. #endif /* __IWbemEventProvider_INTERFACE_DEFINED__ */
  416. #ifndef __IWbemEventProviderQuerySink_INTERFACE_DEFINED__
  417. #define __IWbemEventProviderQuerySink_INTERFACE_DEFINED__
  418. /* interface IWbemEventProviderQuerySink */
  419. /* [uuid][object][restricted] */
  420. EXTERN_C const IID IID_IWbemEventProviderQuerySink;
  421. #if defined(__cplusplus) && !defined(CINTERFACE)
  422. MIDL_INTERFACE("580acaf8-fa1c-11d0-ad72-00c04fd8fdff")
  423. IWbemEventProviderQuerySink : public IUnknown
  424. {
  425. public:
  426. virtual HRESULT STDMETHODCALLTYPE NewQuery(
  427. /* [in] */ unsigned long dwId,
  428. /* [in] */ WBEM_WSTR wszQueryLanguage,
  429. /* [in] */ WBEM_WSTR wszQuery) = 0;
  430. virtual HRESULT STDMETHODCALLTYPE CancelQuery(
  431. /* [in] */ unsigned long dwId) = 0;
  432. };
  433. #else /* C style interface */
  434. typedef struct IWbemEventProviderQuerySinkVtbl
  435. {
  436. BEGIN_INTERFACE
  437. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  438. IWbemEventProviderQuerySink * This,
  439. /* [in] */ REFIID riid,
  440. /* [iid_is][out] */ void **ppvObject);
  441. ULONG ( STDMETHODCALLTYPE *AddRef )(
  442. IWbemEventProviderQuerySink * This);
  443. ULONG ( STDMETHODCALLTYPE *Release )(
  444. IWbemEventProviderQuerySink * This);
  445. HRESULT ( STDMETHODCALLTYPE *NewQuery )(
  446. IWbemEventProviderQuerySink * This,
  447. /* [in] */ unsigned long dwId,
  448. /* [in] */ WBEM_WSTR wszQueryLanguage,
  449. /* [in] */ WBEM_WSTR wszQuery);
  450. HRESULT ( STDMETHODCALLTYPE *CancelQuery )(
  451. IWbemEventProviderQuerySink * This,
  452. /* [in] */ unsigned long dwId);
  453. END_INTERFACE
  454. } IWbemEventProviderQuerySinkVtbl;
  455. interface IWbemEventProviderQuerySink
  456. {
  457. CONST_VTBL struct IWbemEventProviderQuerySinkVtbl *lpVtbl;
  458. };
  459. #ifdef COBJMACROS
  460. #define IWbemEventProviderQuerySink_QueryInterface(This,riid,ppvObject) \
  461. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  462. #define IWbemEventProviderQuerySink_AddRef(This) \
  463. (This)->lpVtbl -> AddRef(This)
  464. #define IWbemEventProviderQuerySink_Release(This) \
  465. (This)->lpVtbl -> Release(This)
  466. #define IWbemEventProviderQuerySink_NewQuery(This,dwId,wszQueryLanguage,wszQuery) \
  467. (This)->lpVtbl -> NewQuery(This,dwId,wszQueryLanguage,wszQuery)
  468. #define IWbemEventProviderQuerySink_CancelQuery(This,dwId) \
  469. (This)->lpVtbl -> CancelQuery(This,dwId)
  470. #endif /* COBJMACROS */
  471. #endif /* C style interface */
  472. HRESULT STDMETHODCALLTYPE IWbemEventProviderQuerySink_NewQuery_Proxy(
  473. IWbemEventProviderQuerySink * This,
  474. /* [in] */ unsigned long dwId,
  475. /* [in] */ WBEM_WSTR wszQueryLanguage,
  476. /* [in] */ WBEM_WSTR wszQuery);
  477. void __RPC_STUB IWbemEventProviderQuerySink_NewQuery_Stub(
  478. IRpcStubBuffer *This,
  479. IRpcChannelBuffer *_pRpcChannelBuffer,
  480. PRPC_MESSAGE _pRpcMessage,
  481. DWORD *_pdwStubPhase);
  482. HRESULT STDMETHODCALLTYPE IWbemEventProviderQuerySink_CancelQuery_Proxy(
  483. IWbemEventProviderQuerySink * This,
  484. /* [in] */ unsigned long dwId);
  485. void __RPC_STUB IWbemEventProviderQuerySink_CancelQuery_Stub(
  486. IRpcStubBuffer *This,
  487. IRpcChannelBuffer *_pRpcChannelBuffer,
  488. PRPC_MESSAGE _pRpcMessage,
  489. DWORD *_pdwStubPhase);
  490. #endif /* __IWbemEventProviderQuerySink_INTERFACE_DEFINED__ */
  491. #ifndef __IWbemEventProviderSecurity_INTERFACE_DEFINED__
  492. #define __IWbemEventProviderSecurity_INTERFACE_DEFINED__
  493. /* interface IWbemEventProviderSecurity */
  494. /* [uuid][object][restricted] */
  495. EXTERN_C const IID IID_IWbemEventProviderSecurity;
  496. #if defined(__cplusplus) && !defined(CINTERFACE)
  497. MIDL_INTERFACE("631f7d96-d993-11d2-b339-00105a1f4aaf")
  498. IWbemEventProviderSecurity : public IUnknown
  499. {
  500. public:
  501. virtual HRESULT STDMETHODCALLTYPE AccessCheck(
  502. /* [in] */ WBEM_CWSTR wszQueryLanguage,
  503. /* [in] */ WBEM_CWSTR wszQuery,
  504. /* [in] */ long lSidLength,
  505. /* [unique][size_is][in] */ const BYTE *pSid) = 0;
  506. };
  507. #else /* C style interface */
  508. typedef struct IWbemEventProviderSecurityVtbl
  509. {
  510. BEGIN_INTERFACE
  511. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  512. IWbemEventProviderSecurity * This,
  513. /* [in] */ REFIID riid,
  514. /* [iid_is][out] */ void **ppvObject);
  515. ULONG ( STDMETHODCALLTYPE *AddRef )(
  516. IWbemEventProviderSecurity * This);
  517. ULONG ( STDMETHODCALLTYPE *Release )(
  518. IWbemEventProviderSecurity * This);
  519. HRESULT ( STDMETHODCALLTYPE *AccessCheck )(
  520. IWbemEventProviderSecurity * This,
  521. /* [in] */ WBEM_CWSTR wszQueryLanguage,
  522. /* [in] */ WBEM_CWSTR wszQuery,
  523. /* [in] */ long lSidLength,
  524. /* [unique][size_is][in] */ const BYTE *pSid);
  525. END_INTERFACE
  526. } IWbemEventProviderSecurityVtbl;
  527. interface IWbemEventProviderSecurity
  528. {
  529. CONST_VTBL struct IWbemEventProviderSecurityVtbl *lpVtbl;
  530. };
  531. #ifdef COBJMACROS
  532. #define IWbemEventProviderSecurity_QueryInterface(This,riid,ppvObject) \
  533. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  534. #define IWbemEventProviderSecurity_AddRef(This) \
  535. (This)->lpVtbl -> AddRef(This)
  536. #define IWbemEventProviderSecurity_Release(This) \
  537. (This)->lpVtbl -> Release(This)
  538. #define IWbemEventProviderSecurity_AccessCheck(This,wszQueryLanguage,wszQuery,lSidLength,pSid) \
  539. (This)->lpVtbl -> AccessCheck(This,wszQueryLanguage,wszQuery,lSidLength,pSid)
  540. #endif /* COBJMACROS */
  541. #endif /* C style interface */
  542. HRESULT STDMETHODCALLTYPE IWbemEventProviderSecurity_AccessCheck_Proxy(
  543. IWbemEventProviderSecurity * This,
  544. /* [in] */ WBEM_CWSTR wszQueryLanguage,
  545. /* [in] */ WBEM_CWSTR wszQuery,
  546. /* [in] */ long lSidLength,
  547. /* [unique][size_is][in] */ const BYTE *pSid);
  548. void __RPC_STUB IWbemEventProviderSecurity_AccessCheck_Stub(
  549. IRpcStubBuffer *This,
  550. IRpcChannelBuffer *_pRpcChannelBuffer,
  551. PRPC_MESSAGE _pRpcMessage,
  552. DWORD *_pdwStubPhase);
  553. #endif /* __IWbemEventProviderSecurity_INTERFACE_DEFINED__ */
  554. #ifndef __IWbemEventConsumerProvider_INTERFACE_DEFINED__
  555. #define __IWbemEventConsumerProvider_INTERFACE_DEFINED__
  556. /* interface IWbemEventConsumerProvider */
  557. /* [uuid][object][restricted] */
  558. EXTERN_C const IID IID_IWbemEventConsumerProvider;
  559. #if defined(__cplusplus) && !defined(CINTERFACE)
  560. MIDL_INTERFACE("e246107a-b06e-11d0-ad61-00c04fd8fdff")
  561. IWbemEventConsumerProvider : public IUnknown
  562. {
  563. public:
  564. virtual HRESULT STDMETHODCALLTYPE FindConsumer(
  565. /* [in] */ IWbemClassObject *pLogicalConsumer,
  566. /* [out] */ IWbemUnboundObjectSink **ppConsumer) = 0;
  567. };
  568. #else /* C style interface */
  569. typedef struct IWbemEventConsumerProviderVtbl
  570. {
  571. BEGIN_INTERFACE
  572. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  573. IWbemEventConsumerProvider * This,
  574. /* [in] */ REFIID riid,
  575. /* [iid_is][out] */ void **ppvObject);
  576. ULONG ( STDMETHODCALLTYPE *AddRef )(
  577. IWbemEventConsumerProvider * This);
  578. ULONG ( STDMETHODCALLTYPE *Release )(
  579. IWbemEventConsumerProvider * This);
  580. HRESULT ( STDMETHODCALLTYPE *FindConsumer )(
  581. IWbemEventConsumerProvider * This,
  582. /* [in] */ IWbemClassObject *pLogicalConsumer,
  583. /* [out] */ IWbemUnboundObjectSink **ppConsumer);
  584. END_INTERFACE
  585. } IWbemEventConsumerProviderVtbl;
  586. interface IWbemEventConsumerProvider
  587. {
  588. CONST_VTBL struct IWbemEventConsumerProviderVtbl *lpVtbl;
  589. };
  590. #ifdef COBJMACROS
  591. #define IWbemEventConsumerProvider_QueryInterface(This,riid,ppvObject) \
  592. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  593. #define IWbemEventConsumerProvider_AddRef(This) \
  594. (This)->lpVtbl -> AddRef(This)
  595. #define IWbemEventConsumerProvider_Release(This) \
  596. (This)->lpVtbl -> Release(This)
  597. #define IWbemEventConsumerProvider_FindConsumer(This,pLogicalConsumer,ppConsumer) \
  598. (This)->lpVtbl -> FindConsumer(This,pLogicalConsumer,ppConsumer)
  599. #endif /* COBJMACROS */
  600. #endif /* C style interface */
  601. HRESULT STDMETHODCALLTYPE IWbemEventConsumerProvider_FindConsumer_Proxy(
  602. IWbemEventConsumerProvider * This,
  603. /* [in] */ IWbemClassObject *pLogicalConsumer,
  604. /* [out] */ IWbemUnboundObjectSink **ppConsumer);
  605. void __RPC_STUB IWbemEventConsumerProvider_FindConsumer_Stub(
  606. IRpcStubBuffer *This,
  607. IRpcChannelBuffer *_pRpcChannelBuffer,
  608. PRPC_MESSAGE _pRpcMessage,
  609. DWORD *_pdwStubPhase);
  610. #endif /* __IWbemEventConsumerProvider_INTERFACE_DEFINED__ */
  611. #ifndef __IWbemProviderInitSink_INTERFACE_DEFINED__
  612. #define __IWbemProviderInitSink_INTERFACE_DEFINED__
  613. /* interface IWbemProviderInitSink */
  614. /* [uuid][object] */
  615. EXTERN_C const IID IID_IWbemProviderInitSink;
  616. #if defined(__cplusplus) && !defined(CINTERFACE)
  617. MIDL_INTERFACE("1be41571-91dd-11d1-aeb2-00c04fb68820")
  618. IWbemProviderInitSink : public IUnknown
  619. {
  620. public:
  621. virtual HRESULT STDMETHODCALLTYPE SetStatus(
  622. /* [in] */ LONG lStatus,
  623. /* [in] */ LONG lFlags) = 0;
  624. };
  625. #else /* C style interface */
  626. typedef struct IWbemProviderInitSinkVtbl
  627. {
  628. BEGIN_INTERFACE
  629. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  630. IWbemProviderInitSink * This,
  631. /* [in] */ REFIID riid,
  632. /* [iid_is][out] */ void **ppvObject);
  633. ULONG ( STDMETHODCALLTYPE *AddRef )(
  634. IWbemProviderInitSink * This);
  635. ULONG ( STDMETHODCALLTYPE *Release )(
  636. IWbemProviderInitSink * This);
  637. HRESULT ( STDMETHODCALLTYPE *SetStatus )(
  638. IWbemProviderInitSink * This,
  639. /* [in] */ LONG lStatus,
  640. /* [in] */ LONG lFlags);
  641. END_INTERFACE
  642. } IWbemProviderInitSinkVtbl;
  643. interface IWbemProviderInitSink
  644. {
  645. CONST_VTBL struct IWbemProviderInitSinkVtbl *lpVtbl;
  646. };
  647. #ifdef COBJMACROS
  648. #define IWbemProviderInitSink_QueryInterface(This,riid,ppvObject) \
  649. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  650. #define IWbemProviderInitSink_AddRef(This) \
  651. (This)->lpVtbl -> AddRef(This)
  652. #define IWbemProviderInitSink_Release(This) \
  653. (This)->lpVtbl -> Release(This)
  654. #define IWbemProviderInitSink_SetStatus(This,lStatus,lFlags) \
  655. (This)->lpVtbl -> SetStatus(This,lStatus,lFlags)
  656. #endif /* COBJMACROS */
  657. #endif /* C style interface */
  658. HRESULT STDMETHODCALLTYPE IWbemProviderInitSink_SetStatus_Proxy(
  659. IWbemProviderInitSink * This,
  660. /* [in] */ LONG lStatus,
  661. /* [in] */ LONG lFlags);
  662. void __RPC_STUB IWbemProviderInitSink_SetStatus_Stub(
  663. IRpcStubBuffer *This,
  664. IRpcChannelBuffer *_pRpcChannelBuffer,
  665. PRPC_MESSAGE _pRpcMessage,
  666. DWORD *_pdwStubPhase);
  667. #endif /* __IWbemProviderInitSink_INTERFACE_DEFINED__ */
  668. #ifndef __IWbemProviderInit_INTERFACE_DEFINED__
  669. #define __IWbemProviderInit_INTERFACE_DEFINED__
  670. /* interface IWbemProviderInit */
  671. /* [uuid][object] */
  672. EXTERN_C const IID IID_IWbemProviderInit;
  673. #if defined(__cplusplus) && !defined(CINTERFACE)
  674. MIDL_INTERFACE("1be41572-91dd-11d1-aeb2-00c04fb68820")
  675. IWbemProviderInit : public IUnknown
  676. {
  677. public:
  678. virtual HRESULT STDMETHODCALLTYPE Initialize(
  679. /* [string][unique][in] */ LPWSTR wszUser,
  680. /* [in] */ LONG lFlags,
  681. /* [string][in] */ LPWSTR wszNamespace,
  682. /* [string][unique][in] */ LPWSTR wszLocale,
  683. /* [in] */ IWbemServices *pNamespace,
  684. /* [in] */ IWbemContext *pCtx,
  685. /* [in] */ IWbemProviderInitSink *pInitSink) = 0;
  686. };
  687. #else /* C style interface */
  688. typedef struct IWbemProviderInitVtbl
  689. {
  690. BEGIN_INTERFACE
  691. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  692. IWbemProviderInit * This,
  693. /* [in] */ REFIID riid,
  694. /* [iid_is][out] */ void **ppvObject);
  695. ULONG ( STDMETHODCALLTYPE *AddRef )(
  696. IWbemProviderInit * This);
  697. ULONG ( STDMETHODCALLTYPE *Release )(
  698. IWbemProviderInit * This);
  699. HRESULT ( STDMETHODCALLTYPE *Initialize )(
  700. IWbemProviderInit * This,
  701. /* [string][unique][in] */ LPWSTR wszUser,
  702. /* [in] */ LONG lFlags,
  703. /* [string][in] */ LPWSTR wszNamespace,
  704. /* [string][unique][in] */ LPWSTR wszLocale,
  705. /* [in] */ IWbemServices *pNamespace,
  706. /* [in] */ IWbemContext *pCtx,
  707. /* [in] */ IWbemProviderInitSink *pInitSink);
  708. END_INTERFACE
  709. } IWbemProviderInitVtbl;
  710. interface IWbemProviderInit
  711. {
  712. CONST_VTBL struct IWbemProviderInitVtbl *lpVtbl;
  713. };
  714. #ifdef COBJMACROS
  715. #define IWbemProviderInit_QueryInterface(This,riid,ppvObject) \
  716. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  717. #define IWbemProviderInit_AddRef(This) \
  718. (This)->lpVtbl -> AddRef(This)
  719. #define IWbemProviderInit_Release(This) \
  720. (This)->lpVtbl -> Release(This)
  721. #define IWbemProviderInit_Initialize(This,wszUser,lFlags,wszNamespace,wszLocale,pNamespace,pCtx,pInitSink) \
  722. (This)->lpVtbl -> Initialize(This,wszUser,lFlags,wszNamespace,wszLocale,pNamespace,pCtx,pInitSink)
  723. #endif /* COBJMACROS */
  724. #endif /* C style interface */
  725. HRESULT STDMETHODCALLTYPE IWbemProviderInit_Initialize_Proxy(
  726. IWbemProviderInit * This,
  727. /* [string][unique][in] */ LPWSTR wszUser,
  728. /* [in] */ LONG lFlags,
  729. /* [string][in] */ LPWSTR wszNamespace,
  730. /* [string][unique][in] */ LPWSTR wszLocale,
  731. /* [in] */ IWbemServices *pNamespace,
  732. /* [in] */ IWbemContext *pCtx,
  733. /* [in] */ IWbemProviderInitSink *pInitSink);
  734. void __RPC_STUB IWbemProviderInit_Initialize_Stub(
  735. IRpcStubBuffer *This,
  736. IRpcChannelBuffer *_pRpcChannelBuffer,
  737. PRPC_MESSAGE _pRpcMessage,
  738. DWORD *_pdwStubPhase);
  739. #endif /* __IWbemProviderInit_INTERFACE_DEFINED__ */
  740. #ifndef __IWbemHiPerfProvider_INTERFACE_DEFINED__
  741. #define __IWbemHiPerfProvider_INTERFACE_DEFINED__
  742. /* interface IWbemHiPerfProvider */
  743. /* [uuid][object][restricted][local] */
  744. EXTERN_C const IID IID_IWbemHiPerfProvider;
  745. #if defined(__cplusplus) && !defined(CINTERFACE)
  746. MIDL_INTERFACE("49353c93-516b-11d1-aea6-00c04fb68820")
  747. IWbemHiPerfProvider : public IUnknown
  748. {
  749. public:
  750. virtual HRESULT STDMETHODCALLTYPE QueryInstances(
  751. /* [in] */ IWbemServices *pNamespace,
  752. /* [string][in] */ WCHAR *wszClass,
  753. /* [in] */ long lFlags,
  754. /* [in] */ IWbemContext *pCtx,
  755. /* [in] */ IWbemObjectSink *pSink) = 0;
  756. virtual HRESULT STDMETHODCALLTYPE CreateRefresher(
  757. /* [in] */ IWbemServices *pNamespace,
  758. /* [in] */ long lFlags,
  759. /* [out] */ IWbemRefresher **ppRefresher) = 0;
  760. virtual HRESULT STDMETHODCALLTYPE CreateRefreshableObject(
  761. /* [in] */ IWbemServices *pNamespace,
  762. /* [in] */ IWbemObjectAccess *pTemplate,
  763. /* [in] */ IWbemRefresher *pRefresher,
  764. /* [in] */ long lFlags,
  765. /* [in] */ IWbemContext *pContext,
  766. /* [out] */ IWbemObjectAccess **ppRefreshable,
  767. /* [out] */ long *plId) = 0;
  768. virtual HRESULT STDMETHODCALLTYPE StopRefreshing(
  769. /* [in] */ IWbemRefresher *pRefresher,
  770. /* [in] */ long lId,
  771. /* [in] */ long lFlags) = 0;
  772. virtual HRESULT STDMETHODCALLTYPE CreateRefreshableEnum(
  773. /* [in] */ IWbemServices *pNamespace,
  774. /* [string][in] */ LPCWSTR wszClass,
  775. /* [in] */ IWbemRefresher *pRefresher,
  776. /* [in] */ long lFlags,
  777. /* [in] */ IWbemContext *pContext,
  778. /* [in] */ IWbemHiPerfEnum *pHiPerfEnum,
  779. /* [out] */ long *plId) = 0;
  780. virtual HRESULT STDMETHODCALLTYPE GetObjects(
  781. /* [in] */ IWbemServices *pNamespace,
  782. /* [in] */ long lNumObjects,
  783. /* [size_is][out][in] */ IWbemObjectAccess **apObj,
  784. /* [in] */ long lFlags,
  785. /* [in] */ IWbemContext *pContext) = 0;
  786. };
  787. #else /* C style interface */
  788. typedef struct IWbemHiPerfProviderVtbl
  789. {
  790. BEGIN_INTERFACE
  791. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  792. IWbemHiPerfProvider * This,
  793. /* [in] */ REFIID riid,
  794. /* [iid_is][out] */ void **ppvObject);
  795. ULONG ( STDMETHODCALLTYPE *AddRef )(
  796. IWbemHiPerfProvider * This);
  797. ULONG ( STDMETHODCALLTYPE *Release )(
  798. IWbemHiPerfProvider * This);
  799. HRESULT ( STDMETHODCALLTYPE *QueryInstances )(
  800. IWbemHiPerfProvider * This,
  801. /* [in] */ IWbemServices *pNamespace,
  802. /* [string][in] */ WCHAR *wszClass,
  803. /* [in] */ long lFlags,
  804. /* [in] */ IWbemContext *pCtx,
  805. /* [in] */ IWbemObjectSink *pSink);
  806. HRESULT ( STDMETHODCALLTYPE *CreateRefresher )(
  807. IWbemHiPerfProvider * This,
  808. /* [in] */ IWbemServices *pNamespace,
  809. /* [in] */ long lFlags,
  810. /* [out] */ IWbemRefresher **ppRefresher);
  811. HRESULT ( STDMETHODCALLTYPE *CreateRefreshableObject )(
  812. IWbemHiPerfProvider * This,
  813. /* [in] */ IWbemServices *pNamespace,
  814. /* [in] */ IWbemObjectAccess *pTemplate,
  815. /* [in] */ IWbemRefresher *pRefresher,
  816. /* [in] */ long lFlags,
  817. /* [in] */ IWbemContext *pContext,
  818. /* [out] */ IWbemObjectAccess **ppRefreshable,
  819. /* [out] */ long *plId);
  820. HRESULT ( STDMETHODCALLTYPE *StopRefreshing )(
  821. IWbemHiPerfProvider * This,
  822. /* [in] */ IWbemRefresher *pRefresher,
  823. /* [in] */ long lId,
  824. /* [in] */ long lFlags);
  825. HRESULT ( STDMETHODCALLTYPE *CreateRefreshableEnum )(
  826. IWbemHiPerfProvider * This,
  827. /* [in] */ IWbemServices *pNamespace,
  828. /* [string][in] */ LPCWSTR wszClass,
  829. /* [in] */ IWbemRefresher *pRefresher,
  830. /* [in] */ long lFlags,
  831. /* [in] */ IWbemContext *pContext,
  832. /* [in] */ IWbemHiPerfEnum *pHiPerfEnum,
  833. /* [out] */ long *plId);
  834. HRESULT ( STDMETHODCALLTYPE *GetObjects )(
  835. IWbemHiPerfProvider * This,
  836. /* [in] */ IWbemServices *pNamespace,
  837. /* [in] */ long lNumObjects,
  838. /* [size_is][out][in] */ IWbemObjectAccess **apObj,
  839. /* [in] */ long lFlags,
  840. /* [in] */ IWbemContext *pContext);
  841. END_INTERFACE
  842. } IWbemHiPerfProviderVtbl;
  843. interface IWbemHiPerfProvider
  844. {
  845. CONST_VTBL struct IWbemHiPerfProviderVtbl *lpVtbl;
  846. };
  847. #ifdef COBJMACROS
  848. #define IWbemHiPerfProvider_QueryInterface(This,riid,ppvObject) \
  849. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  850. #define IWbemHiPerfProvider_AddRef(This) \
  851. (This)->lpVtbl -> AddRef(This)
  852. #define IWbemHiPerfProvider_Release(This) \
  853. (This)->lpVtbl -> Release(This)
  854. #define IWbemHiPerfProvider_QueryInstances(This,pNamespace,wszClass,lFlags,pCtx,pSink) \
  855. (This)->lpVtbl -> QueryInstances(This,pNamespace,wszClass,lFlags,pCtx,pSink)
  856. #define IWbemHiPerfProvider_CreateRefresher(This,pNamespace,lFlags,ppRefresher) \
  857. (This)->lpVtbl -> CreateRefresher(This,pNamespace,lFlags,ppRefresher)
  858. #define IWbemHiPerfProvider_CreateRefreshableObject(This,pNamespace,pTemplate,pRefresher,lFlags,pContext,ppRefreshable,plId) \
  859. (This)->lpVtbl -> CreateRefreshableObject(This,pNamespace,pTemplate,pRefresher,lFlags,pContext,ppRefreshable,plId)
  860. #define IWbemHiPerfProvider_StopRefreshing(This,pRefresher,lId,lFlags) \
  861. (This)->lpVtbl -> StopRefreshing(This,pRefresher,lId,lFlags)
  862. #define IWbemHiPerfProvider_CreateRefreshableEnum(This,pNamespace,wszClass,pRefresher,lFlags,pContext,pHiPerfEnum,plId) \
  863. (This)->lpVtbl -> CreateRefreshableEnum(This,pNamespace,wszClass,pRefresher,lFlags,pContext,pHiPerfEnum,plId)
  864. #define IWbemHiPerfProvider_GetObjects(This,pNamespace,lNumObjects,apObj,lFlags,pContext) \
  865. (This)->lpVtbl -> GetObjects(This,pNamespace,lNumObjects,apObj,lFlags,pContext)
  866. #endif /* COBJMACROS */
  867. #endif /* C style interface */
  868. HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_QueryInstances_Proxy(
  869. IWbemHiPerfProvider * This,
  870. /* [in] */ IWbemServices *pNamespace,
  871. /* [string][in] */ WCHAR *wszClass,
  872. /* [in] */ long lFlags,
  873. /* [in] */ IWbemContext *pCtx,
  874. /* [in] */ IWbemObjectSink *pSink);
  875. void __RPC_STUB IWbemHiPerfProvider_QueryInstances_Stub(
  876. IRpcStubBuffer *This,
  877. IRpcChannelBuffer *_pRpcChannelBuffer,
  878. PRPC_MESSAGE _pRpcMessage,
  879. DWORD *_pdwStubPhase);
  880. HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_CreateRefresher_Proxy(
  881. IWbemHiPerfProvider * This,
  882. /* [in] */ IWbemServices *pNamespace,
  883. /* [in] */ long lFlags,
  884. /* [out] */ IWbemRefresher **ppRefresher);
  885. void __RPC_STUB IWbemHiPerfProvider_CreateRefresher_Stub(
  886. IRpcStubBuffer *This,
  887. IRpcChannelBuffer *_pRpcChannelBuffer,
  888. PRPC_MESSAGE _pRpcMessage,
  889. DWORD *_pdwStubPhase);
  890. HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_CreateRefreshableObject_Proxy(
  891. IWbemHiPerfProvider * This,
  892. /* [in] */ IWbemServices *pNamespace,
  893. /* [in] */ IWbemObjectAccess *pTemplate,
  894. /* [in] */ IWbemRefresher *pRefresher,
  895. /* [in] */ long lFlags,
  896. /* [in] */ IWbemContext *pContext,
  897. /* [out] */ IWbemObjectAccess **ppRefreshable,
  898. /* [out] */ long *plId);
  899. void __RPC_STUB IWbemHiPerfProvider_CreateRefreshableObject_Stub(
  900. IRpcStubBuffer *This,
  901. IRpcChannelBuffer *_pRpcChannelBuffer,
  902. PRPC_MESSAGE _pRpcMessage,
  903. DWORD *_pdwStubPhase);
  904. HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_StopRefreshing_Proxy(
  905. IWbemHiPerfProvider * This,
  906. /* [in] */ IWbemRefresher *pRefresher,
  907. /* [in] */ long lId,
  908. /* [in] */ long lFlags);
  909. void __RPC_STUB IWbemHiPerfProvider_StopRefreshing_Stub(
  910. IRpcStubBuffer *This,
  911. IRpcChannelBuffer *_pRpcChannelBuffer,
  912. PRPC_MESSAGE _pRpcMessage,
  913. DWORD *_pdwStubPhase);
  914. HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_CreateRefreshableEnum_Proxy(
  915. IWbemHiPerfProvider * This,
  916. /* [in] */ IWbemServices *pNamespace,
  917. /* [string][in] */ LPCWSTR wszClass,
  918. /* [in] */ IWbemRefresher *pRefresher,
  919. /* [in] */ long lFlags,
  920. /* [in] */ IWbemContext *pContext,
  921. /* [in] */ IWbemHiPerfEnum *pHiPerfEnum,
  922. /* [out] */ long *plId);
  923. void __RPC_STUB IWbemHiPerfProvider_CreateRefreshableEnum_Stub(
  924. IRpcStubBuffer *This,
  925. IRpcChannelBuffer *_pRpcChannelBuffer,
  926. PRPC_MESSAGE _pRpcMessage,
  927. DWORD *_pdwStubPhase);
  928. HRESULT STDMETHODCALLTYPE IWbemHiPerfProvider_GetObjects_Proxy(
  929. IWbemHiPerfProvider * This,
  930. /* [in] */ IWbemServices *pNamespace,
  931. /* [in] */ long lNumObjects,
  932. /* [size_is][out][in] */ IWbemObjectAccess **apObj,
  933. /* [in] */ long lFlags,
  934. /* [in] */ IWbemContext *pContext);
  935. void __RPC_STUB IWbemHiPerfProvider_GetObjects_Stub(
  936. IRpcStubBuffer *This,
  937. IRpcChannelBuffer *_pRpcChannelBuffer,
  938. PRPC_MESSAGE _pRpcMessage,
  939. DWORD *_pdwStubPhase);
  940. #endif /* __IWbemHiPerfProvider_INTERFACE_DEFINED__ */
  941. #ifndef __IWbemDecoupledRegistrar_INTERFACE_DEFINED__
  942. #define __IWbemDecoupledRegistrar_INTERFACE_DEFINED__
  943. /* interface IWbemDecoupledRegistrar */
  944. /* [uuid][local][object] */
  945. EXTERN_C const IID IID_IWbemDecoupledRegistrar;
  946. #if defined(__cplusplus) && !defined(CINTERFACE)
  947. MIDL_INTERFACE("1005cbcf-e64f-4646-bcd3-3a089d8a84b4")
  948. IWbemDecoupledRegistrar : public IUnknown
  949. {
  950. public:
  951. virtual HRESULT STDMETHODCALLTYPE Register(
  952. /* [in] */ long a_Flags,
  953. /* [in] */ IWbemContext *a_Context,
  954. /* [in] */ LPCWSTR a_User,
  955. /* [in] */ LPCWSTR a_Locale,
  956. /* [in] */ LPCWSTR a_Scope,
  957. /* [in] */ LPCWSTR a_Registration,
  958. /* [in] */ IUnknown *a_Unknown) = 0;
  959. virtual HRESULT STDMETHODCALLTYPE UnRegister( void) = 0;
  960. };
  961. #else /* C style interface */
  962. typedef struct IWbemDecoupledRegistrarVtbl
  963. {
  964. BEGIN_INTERFACE
  965. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  966. IWbemDecoupledRegistrar * This,
  967. /* [in] */ REFIID riid,
  968. /* [iid_is][out] */ void **ppvObject);
  969. ULONG ( STDMETHODCALLTYPE *AddRef )(
  970. IWbemDecoupledRegistrar * This);
  971. ULONG ( STDMETHODCALLTYPE *Release )(
  972. IWbemDecoupledRegistrar * This);
  973. HRESULT ( STDMETHODCALLTYPE *Register )(
  974. IWbemDecoupledRegistrar * This,
  975. /* [in] */ long a_Flags,
  976. /* [in] */ IWbemContext *a_Context,
  977. /* [in] */ LPCWSTR a_User,
  978. /* [in] */ LPCWSTR a_Locale,
  979. /* [in] */ LPCWSTR a_Scope,
  980. /* [in] */ LPCWSTR a_Registration,
  981. /* [in] */ IUnknown *a_Unknown);
  982. HRESULT ( STDMETHODCALLTYPE *UnRegister )(
  983. IWbemDecoupledRegistrar * This);
  984. END_INTERFACE
  985. } IWbemDecoupledRegistrarVtbl;
  986. interface IWbemDecoupledRegistrar
  987. {
  988. CONST_VTBL struct IWbemDecoupledRegistrarVtbl *lpVtbl;
  989. };
  990. #ifdef COBJMACROS
  991. #define IWbemDecoupledRegistrar_QueryInterface(This,riid,ppvObject) \
  992. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  993. #define IWbemDecoupledRegistrar_AddRef(This) \
  994. (This)->lpVtbl -> AddRef(This)
  995. #define IWbemDecoupledRegistrar_Release(This) \
  996. (This)->lpVtbl -> Release(This)
  997. #define IWbemDecoupledRegistrar_Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,a_Unknown) \
  998. (This)->lpVtbl -> Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,a_Unknown)
  999. #define IWbemDecoupledRegistrar_UnRegister(This) \
  1000. (This)->lpVtbl -> UnRegister(This)
  1001. #endif /* COBJMACROS */
  1002. #endif /* C style interface */
  1003. HRESULT STDMETHODCALLTYPE IWbemDecoupledRegistrar_Register_Proxy(
  1004. IWbemDecoupledRegistrar * This,
  1005. /* [in] */ long a_Flags,
  1006. /* [in] */ IWbemContext *a_Context,
  1007. /* [in] */ LPCWSTR a_User,
  1008. /* [in] */ LPCWSTR a_Locale,
  1009. /* [in] */ LPCWSTR a_Scope,
  1010. /* [in] */ LPCWSTR a_Registration,
  1011. /* [in] */ IUnknown *a_Unknown);
  1012. void __RPC_STUB IWbemDecoupledRegistrar_Register_Stub(
  1013. IRpcStubBuffer *This,
  1014. IRpcChannelBuffer *_pRpcChannelBuffer,
  1015. PRPC_MESSAGE _pRpcMessage,
  1016. DWORD *_pdwStubPhase);
  1017. HRESULT STDMETHODCALLTYPE IWbemDecoupledRegistrar_UnRegister_Proxy(
  1018. IWbemDecoupledRegistrar * This);
  1019. void __RPC_STUB IWbemDecoupledRegistrar_UnRegister_Stub(
  1020. IRpcStubBuffer *This,
  1021. IRpcChannelBuffer *_pRpcChannelBuffer,
  1022. PRPC_MESSAGE _pRpcMessage,
  1023. DWORD *_pdwStubPhase);
  1024. #endif /* __IWbemDecoupledRegistrar_INTERFACE_DEFINED__ */
  1025. EXTERN_C const CLSID CLSID_WbemAdministrativeLocator;
  1026. #ifdef __cplusplus
  1027. class DECLSPEC_UUID("cb8555cc-9128-11d1-ad9b-00c04fd8fdff")
  1028. WbemAdministrativeLocator;
  1029. #endif
  1030. EXTERN_C const CLSID CLSID_WbemAuthenticatedLocator;
  1031. #ifdef __cplusplus
  1032. class DECLSPEC_UUID("cd184336-9128-11d1-ad9b-00c04fd8fdff")
  1033. WbemAuthenticatedLocator;
  1034. #endif
  1035. EXTERN_C const CLSID CLSID_WbemUnauthenticatedLocator;
  1036. #ifdef __cplusplus
  1037. class DECLSPEC_UUID("443E7B79-DE31-11d2-B340-00104BCC4B4A")
  1038. WbemUnauthenticatedLocator;
  1039. #endif
  1040. EXTERN_C const CLSID CLSID_WbemDecoupledRegistrar;
  1041. #ifdef __cplusplus
  1042. class DECLSPEC_UUID("4cfc7932-0f9d-4bef-9c32-8ea2a6b56fcb")
  1043. WbemDecoupledRegistrar;
  1044. #endif
  1045. EXTERN_C const CLSID CLSID_WbemDecoupledBasicEventProvider;
  1046. #ifdef __cplusplus
  1047. class DECLSPEC_UUID("f5f75737-2843-4f22-933d-c76a97cda62f")
  1048. WbemDecoupledBasicEventProvider;
  1049. #endif
  1050. #endif /* __WbemProviders_v1_LIBRARY_DEFINED__ */
  1051. #ifndef __IWbemProviderIdentity_INTERFACE_DEFINED__
  1052. #define __IWbemProviderIdentity_INTERFACE_DEFINED__
  1053. /* interface IWbemProviderIdentity */
  1054. /* [uuid][object][restricted] */
  1055. EXTERN_C const IID IID_IWbemProviderIdentity;
  1056. #if defined(__cplusplus) && !defined(CINTERFACE)
  1057. MIDL_INTERFACE("631f7d97-d993-11d2-b339-00105a1f4aaf")
  1058. IWbemProviderIdentity : public IUnknown
  1059. {
  1060. public:
  1061. virtual HRESULT STDMETHODCALLTYPE SetRegistrationObject(
  1062. /* [in] */ long lFlags,
  1063. /* [in] */ IWbemClassObject *pProvReg) = 0;
  1064. };
  1065. #else /* C style interface */
  1066. typedef struct IWbemProviderIdentityVtbl
  1067. {
  1068. BEGIN_INTERFACE
  1069. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1070. IWbemProviderIdentity * This,
  1071. /* [in] */ REFIID riid,
  1072. /* [iid_is][out] */ void **ppvObject);
  1073. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1074. IWbemProviderIdentity * This);
  1075. ULONG ( STDMETHODCALLTYPE *Release )(
  1076. IWbemProviderIdentity * This);
  1077. HRESULT ( STDMETHODCALLTYPE *SetRegistrationObject )(
  1078. IWbemProviderIdentity * This,
  1079. /* [in] */ long lFlags,
  1080. /* [in] */ IWbemClassObject *pProvReg);
  1081. END_INTERFACE
  1082. } IWbemProviderIdentityVtbl;
  1083. interface IWbemProviderIdentity
  1084. {
  1085. CONST_VTBL struct IWbemProviderIdentityVtbl *lpVtbl;
  1086. };
  1087. #ifdef COBJMACROS
  1088. #define IWbemProviderIdentity_QueryInterface(This,riid,ppvObject) \
  1089. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1090. #define IWbemProviderIdentity_AddRef(This) \
  1091. (This)->lpVtbl -> AddRef(This)
  1092. #define IWbemProviderIdentity_Release(This) \
  1093. (This)->lpVtbl -> Release(This)
  1094. #define IWbemProviderIdentity_SetRegistrationObject(This,lFlags,pProvReg) \
  1095. (This)->lpVtbl -> SetRegistrationObject(This,lFlags,pProvReg)
  1096. #endif /* COBJMACROS */
  1097. #endif /* C style interface */
  1098. HRESULT STDMETHODCALLTYPE IWbemProviderIdentity_SetRegistrationObject_Proxy(
  1099. IWbemProviderIdentity * This,
  1100. /* [in] */ long lFlags,
  1101. /* [in] */ IWbemClassObject *pProvReg);
  1102. void __RPC_STUB IWbemProviderIdentity_SetRegistrationObject_Stub(
  1103. IRpcStubBuffer *This,
  1104. IRpcChannelBuffer *_pRpcChannelBuffer,
  1105. PRPC_MESSAGE _pRpcMessage,
  1106. DWORD *_pdwStubPhase);
  1107. #endif /* __IWbemProviderIdentity_INTERFACE_DEFINED__ */
  1108. /* interface __MIDL_itf_wbemprov_0169 */
  1109. /* [local] */
  1110. typedef
  1111. enum tag_WBEM_EXTRA_RETURN_CODES
  1112. { WBEM_S_INITIALIZED = 0,
  1113. WBEM_S_LIMITED_SERVICE = 0x43001,
  1114. WBEM_S_INDIRECTLY_UPDATED = WBEM_S_LIMITED_SERVICE + 1,
  1115. WBEM_S_SUBJECT_TO_SDS = WBEM_S_INDIRECTLY_UPDATED + 1,
  1116. WBEM_E_RETRY_LATER = 0x80043001,
  1117. WBEM_E_RESOURCE_CONTENTION = WBEM_E_RETRY_LATER + 1
  1118. } WBEM_EXTRA_RETURN_CODES;
  1119. typedef
  1120. enum tag_WBEM_PROVIDER_FLAGS
  1121. { WBEM_FLAG_OWNER_UPDATE = 0x10000
  1122. } WBEM_PROVIDER_FLAGS;
  1123. extern RPC_IF_HANDLE __MIDL_itf_wbemprov_0169_v0_0_c_ifspec;
  1124. extern RPC_IF_HANDLE __MIDL_itf_wbemprov_0169_v0_0_s_ifspec;
  1125. #ifndef __IWbemDecoupledBasicEventProvider_INTERFACE_DEFINED__
  1126. #define __IWbemDecoupledBasicEventProvider_INTERFACE_DEFINED__
  1127. /* interface IWbemDecoupledBasicEventProvider */
  1128. /* [uuid][local][object] */
  1129. EXTERN_C const IID IID_IWbemDecoupledBasicEventProvider;
  1130. #if defined(__cplusplus) && !defined(CINTERFACE)
  1131. MIDL_INTERFACE("86336d20-ca11-4786-9ef1-bc8a946b42fc")
  1132. IWbemDecoupledBasicEventProvider : public IWbemDecoupledRegistrar
  1133. {
  1134. public:
  1135. virtual HRESULT STDMETHODCALLTYPE GetSink(
  1136. /* [in] */ long a_Flags,
  1137. /* [in] */ IWbemContext *a_Context,
  1138. /* [out] */ IWbemObjectSink **a_Sink) = 0;
  1139. virtual HRESULT STDMETHODCALLTYPE GetService(
  1140. /* [in] */ long a_Flags,
  1141. /* [in] */ IWbemContext *a_Context,
  1142. /* [out] */ IWbemServices **a_Service) = 0;
  1143. };
  1144. #else /* C style interface */
  1145. typedef struct IWbemDecoupledBasicEventProviderVtbl
  1146. {
  1147. BEGIN_INTERFACE
  1148. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1149. IWbemDecoupledBasicEventProvider * This,
  1150. /* [in] */ REFIID riid,
  1151. /* [iid_is][out] */ void **ppvObject);
  1152. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1153. IWbemDecoupledBasicEventProvider * This);
  1154. ULONG ( STDMETHODCALLTYPE *Release )(
  1155. IWbemDecoupledBasicEventProvider * This);
  1156. HRESULT ( STDMETHODCALLTYPE *Register )(
  1157. IWbemDecoupledBasicEventProvider * This,
  1158. /* [in] */ long a_Flags,
  1159. /* [in] */ IWbemContext *a_Context,
  1160. /* [in] */ LPCWSTR a_User,
  1161. /* [in] */ LPCWSTR a_Locale,
  1162. /* [in] */ LPCWSTR a_Scope,
  1163. /* [in] */ LPCWSTR a_Registration,
  1164. /* [in] */ IUnknown *a_Unknown);
  1165. HRESULT ( STDMETHODCALLTYPE *UnRegister )(
  1166. IWbemDecoupledBasicEventProvider * This);
  1167. HRESULT ( STDMETHODCALLTYPE *GetSink )(
  1168. IWbemDecoupledBasicEventProvider * This,
  1169. /* [in] */ long a_Flags,
  1170. /* [in] */ IWbemContext *a_Context,
  1171. /* [out] */ IWbemObjectSink **a_Sink);
  1172. HRESULT ( STDMETHODCALLTYPE *GetService )(
  1173. IWbemDecoupledBasicEventProvider * This,
  1174. /* [in] */ long a_Flags,
  1175. /* [in] */ IWbemContext *a_Context,
  1176. /* [out] */ IWbemServices **a_Service);
  1177. END_INTERFACE
  1178. } IWbemDecoupledBasicEventProviderVtbl;
  1179. interface IWbemDecoupledBasicEventProvider
  1180. {
  1181. CONST_VTBL struct IWbemDecoupledBasicEventProviderVtbl *lpVtbl;
  1182. };
  1183. #ifdef COBJMACROS
  1184. #define IWbemDecoupledBasicEventProvider_QueryInterface(This,riid,ppvObject) \
  1185. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1186. #define IWbemDecoupledBasicEventProvider_AddRef(This) \
  1187. (This)->lpVtbl -> AddRef(This)
  1188. #define IWbemDecoupledBasicEventProvider_Release(This) \
  1189. (This)->lpVtbl -> Release(This)
  1190. #define IWbemDecoupledBasicEventProvider_Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,a_Unknown) \
  1191. (This)->lpVtbl -> Register(This,a_Flags,a_Context,a_User,a_Locale,a_Scope,a_Registration,a_Unknown)
  1192. #define IWbemDecoupledBasicEventProvider_UnRegister(This) \
  1193. (This)->lpVtbl -> UnRegister(This)
  1194. #define IWbemDecoupledBasicEventProvider_GetSink(This,a_Flags,a_Context,a_Sink) \
  1195. (This)->lpVtbl -> GetSink(This,a_Flags,a_Context,a_Sink)
  1196. #define IWbemDecoupledBasicEventProvider_GetService(This,a_Flags,a_Context,a_Service) \
  1197. (This)->lpVtbl -> GetService(This,a_Flags,a_Context,a_Service)
  1198. #endif /* COBJMACROS */
  1199. #endif /* C style interface */
  1200. HRESULT STDMETHODCALLTYPE IWbemDecoupledBasicEventProvider_GetSink_Proxy(
  1201. IWbemDecoupledBasicEventProvider * This,
  1202. /* [in] */ long a_Flags,
  1203. /* [in] */ IWbemContext *a_Context,
  1204. /* [out] */ IWbemObjectSink **a_Sink);
  1205. void __RPC_STUB IWbemDecoupledBasicEventProvider_GetSink_Stub(
  1206. IRpcStubBuffer *This,
  1207. IRpcChannelBuffer *_pRpcChannelBuffer,
  1208. PRPC_MESSAGE _pRpcMessage,
  1209. DWORD *_pdwStubPhase);
  1210. HRESULT STDMETHODCALLTYPE IWbemDecoupledBasicEventProvider_GetService_Proxy(
  1211. IWbemDecoupledBasicEventProvider * This,
  1212. /* [in] */ long a_Flags,
  1213. /* [in] */ IWbemContext *a_Context,
  1214. /* [out] */ IWbemServices **a_Service);
  1215. void __RPC_STUB IWbemDecoupledBasicEventProvider_GetService_Stub(
  1216. IRpcStubBuffer *This,
  1217. IRpcChannelBuffer *_pRpcChannelBuffer,
  1218. PRPC_MESSAGE _pRpcMessage,
  1219. DWORD *_pdwStubPhase);
  1220. #endif /* __IWbemDecoupledBasicEventProvider_INTERFACE_DEFINED__ */
  1221. /* interface __MIDL_itf_wbemprov_0174 */
  1222. /* [local] */
  1223. typedef /* [v1_enum] */
  1224. enum tag_WBEM_BATCH_TYPE
  1225. { WBEM_FLAG_BATCH_IF_NEEDED = 0,
  1226. WBEM_FLAG_MUST_BATCH = 0x1,
  1227. WBEM_FLAG_MUST_NOT_BATCH = 0x2
  1228. } WBEM_BATCH_TYPE;
  1229. extern RPC_IF_HANDLE __MIDL_itf_wbemprov_0174_v0_0_c_ifspec;
  1230. extern RPC_IF_HANDLE __MIDL_itf_wbemprov_0174_v0_0_s_ifspec;
  1231. #ifndef __IWbemEventSink_INTERFACE_DEFINED__
  1232. #define __IWbemEventSink_INTERFACE_DEFINED__
  1233. /* interface IWbemEventSink */
  1234. /* [uuid][restricted][object] */
  1235. EXTERN_C const IID IID_IWbemEventSink;
  1236. #if defined(__cplusplus) && !defined(CINTERFACE)
  1237. MIDL_INTERFACE("3ae0080a-7e3a-4366-bf89-0feedc931659")
  1238. IWbemEventSink : public IWbemObjectSink
  1239. {
  1240. public:
  1241. virtual HRESULT STDMETHODCALLTYPE SetSinkSecurity(
  1242. /* [in] */ long lSDLength,
  1243. /* [size_is][in] */ BYTE *pSD) = 0;
  1244. virtual HRESULT STDMETHODCALLTYPE IsActive( void) = 0;
  1245. virtual HRESULT STDMETHODCALLTYPE GetRestrictedSink(
  1246. /* [in] */ long lNumQueries,
  1247. /* [string][size_is][in] */ const LPCWSTR *awszQueries,
  1248. /* [in] */ IUnknown *pCallback,
  1249. /* [out] */ IWbemEventSink **ppSink) = 0;
  1250. virtual HRESULT STDMETHODCALLTYPE SetBatchingParameters(
  1251. /* [in] */ LONG lFlags,
  1252. /* [in] */ DWORD dwMaxBufferSize,
  1253. /* [in] */ DWORD dwMaxSendLatency) = 0;
  1254. };
  1255. #else /* C style interface */
  1256. typedef struct IWbemEventSinkVtbl
  1257. {
  1258. BEGIN_INTERFACE
  1259. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1260. IWbemEventSink * This,
  1261. /* [in] */ REFIID riid,
  1262. /* [iid_is][out] */ void **ppvObject);
  1263. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1264. IWbemEventSink * This);
  1265. ULONG ( STDMETHODCALLTYPE *Release )(
  1266. IWbemEventSink * This);
  1267. HRESULT ( STDMETHODCALLTYPE *Indicate )(
  1268. IWbemEventSink * This,
  1269. /* [in] */ long lObjectCount,
  1270. /* [size_is][in] */ IWbemClassObject **apObjArray);
  1271. HRESULT ( STDMETHODCALLTYPE *SetStatus )(
  1272. IWbemEventSink * This,
  1273. /* [in] */ long lFlags,
  1274. /* [in] */ HRESULT hResult,
  1275. /* [in] */ BSTR strParam,
  1276. /* [in] */ IWbemClassObject *pObjParam);
  1277. HRESULT ( STDMETHODCALLTYPE *SetSinkSecurity )(
  1278. IWbemEventSink * This,
  1279. /* [in] */ long lSDLength,
  1280. /* [size_is][in] */ BYTE *pSD);
  1281. HRESULT ( STDMETHODCALLTYPE *IsActive )(
  1282. IWbemEventSink * This);
  1283. HRESULT ( STDMETHODCALLTYPE *GetRestrictedSink )(
  1284. IWbemEventSink * This,
  1285. /* [in] */ long lNumQueries,
  1286. /* [string][size_is][in] */ const LPCWSTR *awszQueries,
  1287. /* [in] */ IUnknown *pCallback,
  1288. /* [out] */ IWbemEventSink **ppSink);
  1289. HRESULT ( STDMETHODCALLTYPE *SetBatchingParameters )(
  1290. IWbemEventSink * This,
  1291. /* [in] */ LONG lFlags,
  1292. /* [in] */ DWORD dwMaxBufferSize,
  1293. /* [in] */ DWORD dwMaxSendLatency);
  1294. END_INTERFACE
  1295. } IWbemEventSinkVtbl;
  1296. interface IWbemEventSink
  1297. {
  1298. CONST_VTBL struct IWbemEventSinkVtbl *lpVtbl;
  1299. };
  1300. #ifdef COBJMACROS
  1301. #define IWbemEventSink_QueryInterface(This,riid,ppvObject) \
  1302. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1303. #define IWbemEventSink_AddRef(This) \
  1304. (This)->lpVtbl -> AddRef(This)
  1305. #define IWbemEventSink_Release(This) \
  1306. (This)->lpVtbl -> Release(This)
  1307. #define IWbemEventSink_Indicate(This,lObjectCount,apObjArray) \
  1308. (This)->lpVtbl -> Indicate(This,lObjectCount,apObjArray)
  1309. #define IWbemEventSink_SetStatus(This,lFlags,hResult,strParam,pObjParam) \
  1310. (This)->lpVtbl -> SetStatus(This,lFlags,hResult,strParam,pObjParam)
  1311. #define IWbemEventSink_SetSinkSecurity(This,lSDLength,pSD) \
  1312. (This)->lpVtbl -> SetSinkSecurity(This,lSDLength,pSD)
  1313. #define IWbemEventSink_IsActive(This) \
  1314. (This)->lpVtbl -> IsActive(This)
  1315. #define IWbemEventSink_GetRestrictedSink(This,lNumQueries,awszQueries,pCallback,ppSink) \
  1316. (This)->lpVtbl -> GetRestrictedSink(This,lNumQueries,awszQueries,pCallback,ppSink)
  1317. #define IWbemEventSink_SetBatchingParameters(This,lFlags,dwMaxBufferSize,dwMaxSendLatency) \
  1318. (This)->lpVtbl -> SetBatchingParameters(This,lFlags,dwMaxBufferSize,dwMaxSendLatency)
  1319. #endif /* COBJMACROS */
  1320. #endif /* C style interface */
  1321. HRESULT STDMETHODCALLTYPE IWbemEventSink_SetSinkSecurity_Proxy(
  1322. IWbemEventSink * This,
  1323. /* [in] */ long lSDLength,
  1324. /* [size_is][in] */ BYTE *pSD);
  1325. void __RPC_STUB IWbemEventSink_SetSinkSecurity_Stub(
  1326. IRpcStubBuffer *This,
  1327. IRpcChannelBuffer *_pRpcChannelBuffer,
  1328. PRPC_MESSAGE _pRpcMessage,
  1329. DWORD *_pdwStubPhase);
  1330. HRESULT STDMETHODCALLTYPE IWbemEventSink_IsActive_Proxy(
  1331. IWbemEventSink * This);
  1332. void __RPC_STUB IWbemEventSink_IsActive_Stub(
  1333. IRpcStubBuffer *This,
  1334. IRpcChannelBuffer *_pRpcChannelBuffer,
  1335. PRPC_MESSAGE _pRpcMessage,
  1336. DWORD *_pdwStubPhase);
  1337. HRESULT STDMETHODCALLTYPE IWbemEventSink_GetRestrictedSink_Proxy(
  1338. IWbemEventSink * This,
  1339. /* [in] */ long lNumQueries,
  1340. /* [string][size_is][in] */ const LPCWSTR *awszQueries,
  1341. /* [in] */ IUnknown *pCallback,
  1342. /* [out] */ IWbemEventSink **ppSink);
  1343. void __RPC_STUB IWbemEventSink_GetRestrictedSink_Stub(
  1344. IRpcStubBuffer *This,
  1345. IRpcChannelBuffer *_pRpcChannelBuffer,
  1346. PRPC_MESSAGE _pRpcMessage,
  1347. DWORD *_pdwStubPhase);
  1348. HRESULT STDMETHODCALLTYPE IWbemEventSink_SetBatchingParameters_Proxy(
  1349. IWbemEventSink * This,
  1350. /* [in] */ LONG lFlags,
  1351. /* [in] */ DWORD dwMaxBufferSize,
  1352. /* [in] */ DWORD dwMaxSendLatency);
  1353. void __RPC_STUB IWbemEventSink_SetBatchingParameters_Stub(
  1354. IRpcStubBuffer *This,
  1355. IRpcChannelBuffer *_pRpcChannelBuffer,
  1356. PRPC_MESSAGE _pRpcMessage,
  1357. DWORD *_pdwStubPhase);
  1358. #endif /* __IWbemEventSink_INTERFACE_DEFINED__ */
  1359. /* Additional Prototypes for ALL interfaces */
  1360. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  1361. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  1362. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  1363. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  1364. unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
  1365. unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
  1366. unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
  1367. void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
  1368. /* end of Additional Prototypes */
  1369. #ifdef __cplusplus
  1370. }
  1371. #endif
  1372. #endif