wbemprov.h 61 KB

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