Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1714 lines
60 KiB

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // WMI System MOF
  4. // Copyright (c) 1997-2001 Microsoft Corporation, All Rights Reserved
  5. //
  6. #pragma autorecover
  7. #pragma classflags("forceupdate")
  8. #include ("%SYSTEMROOT%\\system32\\wbem\\ncprov.mof")
  9. #pragma namespace ("\\\\.\\root\\cimv2")
  10. /////////////////////////////////////////////////////////////////////////////
  11. // Base event for all WMI self-instrumentation events.
  12. class MSFT_WmiSelfEvent : __ExtrinsicEvent
  13. {
  14. };
  15. /////////////////////////////////////////////////////////////////////////////
  16. //
  17. // ESS Classes
  18. class MSFT_WmiEssEvent : MSFT_WmiSelfEvent
  19. {
  20. };
  21. /////////////////////////////////////////////////////////////////////////////
  22. // New notification sink registered because of new query
  23. class MSFT_WmiRegisterNotificationSink : MSFT_WmiEssEvent
  24. {
  25. string Namespace;
  26. string QueryLanguage;
  27. string Query;
  28. uint64 Sink;
  29. };
  30. /////////////////////////////////////////////////////////////////////////////
  31. // Notification sink removed
  32. class MSFT_WmiCancelNotificationSink : MSFT_WmiEssEvent
  33. {
  34. string Namespace;
  35. string QueryLanguage;
  36. string Query;
  37. uint64 Sink;
  38. };
  39. /////////////////////////////////////////////////////////////////////////////
  40. // Provider base event
  41. class MSFT_WmiProviderEvent : MSFT_WmiEssEvent
  42. {
  43. string Namespace;
  44. string ProviderName;
  45. };
  46. /////////////////////////////////////////////////////////////////////////////
  47. // Consumer provider events
  48. class MSFT_WmiConsumerProviderEvent : MSFT_WmiProviderEvent
  49. {
  50. string Machine;
  51. };
  52. class MSFT_WmiConsumerProviderLoaded : MSFT_WmiConsumerProviderEvent
  53. {
  54. };
  55. class MSFT_WmiConsumerProviderUnloaded : MSFT_WmiConsumerProviderEvent
  56. {
  57. };
  58. class MSFT_WmiConsumerProviderSinkLoaded : MSFT_WmiConsumerProviderEvent
  59. {
  60. __EventConsumer ref Consumer;
  61. };
  62. class MSFT_WmiConsumerProviderSinkUnloaded : MSFT_WmiConsumerProviderEvent
  63. {
  64. __EventConsumer ref Consumer;
  65. };
  66. /////////////////////////////////////////////////////////////////////////////
  67. // Thread pool events
  68. class MSFT_WmiThreadPoolEvent : MSFT_WmiEssEvent
  69. {
  70. uint32 ThreadId;
  71. };
  72. class MSFT_WmiThreadPoolThreadCreated : MSFT_WmiThreadPoolEvent
  73. {
  74. };
  75. class MSFT_WmiThreadPoolThreadDeleted : MSFT_WmiThreadPoolEvent
  76. {
  77. };
  78. /////////////////////////////////////////////////////////////////////////////
  79. // Filter events
  80. class MSFT_WmiFilterEvent : MSFT_WmiEssEvent
  81. {
  82. string Namespace;
  83. string Name;
  84. string QueryLanguage;
  85. string Query;
  86. };
  87. class MSFT_WmiFilterActivated : MSFT_WmiFilterEvent
  88. {
  89. };
  90. class MSFT_WmiFilterDeactivated : MSFT_WmiFilterEvent
  91. {
  92. };
  93. /////////////////////////////////////////////////////////////////////////////
  94. //
  95. // WMI Event Provider registration.
  96. #pragma DeleteInstance("MSFT_WMI_NonCOMEventProvider.Name=\"WMI Self-Instrumentation Event Provider\"", NOFAIL)
  97. instance of __Win32Provider as $P1
  98. {
  99. Name = "WMI Self-Instrumentation Event Provider";
  100. HostingModel = "Decoupled:NonCOM";
  101. };
  102. instance of __EventProviderRegistration
  103. {
  104. Provider = $P1;
  105. EventQueryList =
  106. {
  107. "select * from MSFT_WmiEssEvent"
  108. };
  109. };
  110. /////////////////////////////////////////////////////////////////////////////
  111. //
  112. // Core classes & events
  113. class MSFT_WmiCoreEvent : MSFT_WmiSelfEvent
  114. {
  115. };
  116. class MSFT_WmiCoreLogonEvent : MSFT_WmiCoreEvent
  117. {
  118. [subtype("SID")]
  119. uint32 UserSid[];
  120. string Namespace;
  121. };
  122. class MSFT_WmiCoreLogoffEvent : MSFT_WmiCoreEvent
  123. {
  124. [subtype("SID")]
  125. uint32 UserSid[];
  126. string Namespace;
  127. };
  128. class MSFT_WmiCoreTaskFailure : MSFT_WmiCoreEvent
  129. {
  130. uint64 TaskID;
  131. [subtype("SID")]
  132. uint32 UserSid[];
  133. string Namespace;
  134. string Request;
  135. uint32 HRESULT;
  136. string Comment;
  137. };
  138. class MSFT_WmiCoreObject
  139. {
  140. };
  141. class MSFT_WmiCoreUser : MSFT_WmiCoreObject
  142. {
  143. [subtype("SID")]
  144. uint32 UserSid[];
  145. datetime TimeOfLastRequest;
  146. };
  147. [singleton]
  148. class MSFT_WmiCoreStatus : MSFT_WmiCoreObject
  149. {
  150. uint32 Users; // absolute
  151. uint32 Connections; // absolute
  152. uint32 Tasks; // absolute
  153. uint32 TasksExecuted; // increment-only
  154. uint32 DeliveryBacklogBytes; // absolute
  155. uint32 TotalApiCallsMade; // increment-only
  156. uint32 InternalObjectCount; // absolute
  157. uint32 InternalSinkCount; // absolute
  158. };
  159. /******************************************************************************
  160. *
  161. * Name:
  162. *
  163. *
  164. * Description:
  165. *
  166. *
  167. *****************************************************************************/
  168. instance of __Win32Provider as $PInstance
  169. {
  170. Name = "Msft_ProviderSubSystem";
  171. Clsid = "{7F598975-37E0-4a67-A992-116680F0CEDA}";
  172. HostingModel = "WmiCore" ;
  173. };
  174. /******************************************************************************
  175. *
  176. * Name:
  177. *
  178. *
  179. * Description:
  180. *
  181. *
  182. *****************************************************************************/
  183. instance of __MethodProviderRegistration
  184. {
  185. Provider = $PInstance;
  186. };
  187. /******************************************************************************
  188. *
  189. * Name:
  190. *
  191. *
  192. * Description:
  193. *
  194. *
  195. *****************************************************************************/
  196. instance of __InstanceProviderRegistration
  197. {
  198. Provider = $PInstance;
  199. SupportsGet = TRUE;
  200. SupportsPut = TRUE;
  201. SupportsDelete = TRUE;
  202. SupportsEnumeration = TRUE;
  203. QuerySupportLevels = { "WQL:UnarySelect" } ;
  204. };
  205. /******************************************************************************
  206. *
  207. * Name:
  208. *
  209. *
  210. * Description:
  211. *
  212. *
  213. *****************************************************************************/
  214. #pragma DeleteInstance("MSFT_WMI_NonCOMEventProvider.Name=\"ProviderSubSystem\"", NOFAIL)
  215. instance of __Win32Provider as $P
  216. {
  217. Name = "ProviderSubSystem";
  218. HostingModel = "Decoupled:NonCOM";
  219. };
  220. /******************************************************************************
  221. *
  222. * Name:
  223. *
  224. *
  225. * Description:
  226. *
  227. *
  228. *****************************************************************************/
  229. [
  230. Description (
  231. "The Msft_WmiProvider_OperationEvent event class is the root definition of all WMI provider events."
  232. "A provider operation is defined as some execution on behalf of a client via WMI that results"
  233. "in one or more calls to a provider executable, "
  234. "The properties of this class define the identity of the provider associated with the operation being executed "
  235. "and is uniquely associated with instances of the class Msft_Providers. Each instance of __Win32Provider can have "
  236. "an associated operation and be identified using the properties below. Internally WMI can contain "
  237. "any number of objects that refer to a particular instance of __Win32Provider since it differentiates each object "
  238. "based on whether the provider supports per user or per locale instantiation and also "
  239. "depending on where the provider is being hosted. Currently TransactionIdentifier is always an empty string. "
  240. )
  241. ]
  242. class Msft_WmiProvider_OperationEvent : MSFT_WmiSelfEvent
  243. {
  244. [Description ( "The Namespace property indicates the namespace where instance of __Win32Provider is instantiated." )]
  245. String Namespace ;
  246. [Description ( "The Provider property indicates the Unique Name associated with the instance of __Win32Provider." )]
  247. String Provider ;
  248. [Description ( "If the provider registration specifies per user initialization, "
  249. "then the User property defines the client principle identity associated with "
  250. "specific instantiation of a provider." )]
  251. String User ;
  252. [Description ( "If the provider registration specifies per locale initialization, "
  253. "then the Locale property defines the client locale associated with "
  254. "specific instantiation of a provider." )]
  255. String Locale ;
  256. [Description ( "The TransactionIdentifer property is for internal use, currently always empty." )]
  257. String TransactionIdentifer ;
  258. [Description ( "The HostingSpecification property currently is not used." )]
  259. Uint32 HostingSpecification ;
  260. [Description ( "The HostingGroup property currently is not used." )]
  261. String HostingGroup ;
  262. } ;
  263. /******************************************************************************
  264. *
  265. * Name:
  266. *
  267. *
  268. * Description:
  269. *
  270. *
  271. *****************************************************************************/
  272. [
  273. Description ("The Msft_WmiProvider_OperationEvent_Pre event class contains the "
  274. "operation event generated prior to calling provider implementation.")
  275. ]
  276. class Msft_WmiProvider_OperationEvent_Pre : Msft_WmiProvider_OperationEvent
  277. {
  278. } ;
  279. /******************************************************************************
  280. *
  281. * Name:
  282. *
  283. *
  284. * Description:
  285. *
  286. *
  287. *****************************************************************************/
  288. [
  289. Description ("The Msft_WmiProvider_OperationEvent_Post event class contains the "
  290. "operation event generated following completion of provider implementation.")
  291. ]
  292. class Msft_WmiProvider_OperationEvent_Post : Msft_WmiProvider_OperationEvent
  293. {
  294. } ;
  295. /******************************************************************************
  296. *
  297. * Name:
  298. *
  299. *
  300. * Description:
  301. *
  302. *
  303. *****************************************************************************/
  304. [
  305. Description ("The Msft_WmiProvider_ComServerLoadOperationEvent event class "
  306. "defines the successful activation of a com server instance"
  307. "associated with the provider registration.")
  308. ]
  309. class Msft_WmiProvider_ComServerLoadOperationEvent : Msft_WmiProvider_OperationEvent
  310. {
  311. [Description ( "The Clsid property, if applicable, defines the COM CLSID associated with server implementation. "
  312. "Note: decoupled providers do not have an associated COM CLSID." )]
  313. String Clsid ;
  314. [Description ( "The ServerName property, if applicable, defines the COM server name present within "
  315. "the unnamed value of the CLSID key." )]
  316. String ServerName ;
  317. [Description ( "The InProcServer property, if applicable, defines whether the server supports inproc32 activation." )]
  318. boolean InProcServer ;
  319. [Description ( "The LocalServer property, if applicable, defines whether the server supports localserver32 activation." )]
  320. boolean LocalServer ;
  321. [Description ( "The InProcServerPath property, if applicable, defines the server inproc32 executable name." )]
  322. String InProcServerPath ;
  323. [Description ( "The LocalServerPath property, if applicable, defines the server localserver32 executable application name." )]
  324. String LocalServerPath ;
  325. } ;
  326. /******************************************************************************
  327. *
  328. * Name:
  329. *
  330. *
  331. * Description:
  332. *
  333. *
  334. *****************************************************************************/
  335. [
  336. Description ("The Msft_WmiProvider_ComServerLoadOperationFailureEvent event class "
  337. "defines the unsuccessful activation of a com server instance"
  338. "associated with the provider registration.")
  339. ]
  340. class Msft_WmiProvider_ComServerLoadOperationFailureEvent : Msft_WmiProvider_OperationEvent
  341. {
  342. [Description ( "The Clsid property, if applicable, defines the COM CLSID associated with server implementation. "
  343. "Note: decoupled providers do not have an associated COM CLSID." )]
  344. String Clsid ;
  345. [Description ( "The ServerName property, if applicable, defines the COM server name present within "
  346. "the unnamed value of the CLSID key." )]
  347. String ServerName ;
  348. [Description ( "The InProcServer property, if applicable, defines whether the server supports inproc32 activation." )]
  349. boolean InProcServer ;
  350. [Description ( "The LocalServer property, if applicable, defines whether the server supports localserver32 activation." )]
  351. boolean LocalServer ;
  352. [Description ( "The InProcServerPath property, if applicable, defines the server inproc32 executable name." )]
  353. String InProcServerPath ;
  354. [Description ( "The LocalServerPath property, if applicable, defines the server localserver32 executable application name." )]
  355. String LocalServerPath ;
  356. [Description ( "The ResultCode property, if applicable, defines the result code returned from the COM activation procedure." )]
  357. uint32 ResultCode ;
  358. } ;
  359. /******************************************************************************
  360. *
  361. * Name:
  362. *
  363. *
  364. * Description:
  365. *
  366. *
  367. *****************************************************************************/
  368. [
  369. Description ("The Msft_WmiProvider_LoadOperationEvent event class defines the successful "
  370. "activation and initialization of the provider cache entry. "
  371. "WMI caches provider registration objects to decrease overall"
  372. "execution time. The substem will drop cache entries either through the cache "
  373. "ageing process, through loss of RPC connectivity, through user control or due "
  374. "to some change in the provider's registration.")
  375. ]
  376. class Msft_WmiProvider_LoadOperationEvent : Msft_WmiProvider_OperationEvent
  377. {
  378. [Description ( "The Clsid property, if applicable, defines the COM CLSID associated with server implementation. "
  379. "Note: decoupled providers do not have an associated COM CLSID." )]
  380. String Clsid ;
  381. [Description ( "The ServerName property, if applicable, defines the COM server name present within "
  382. "the unnamed value of the CLSID key." )]
  383. String ServerName ;
  384. [Description ( "The InProcServer property, if applicable, defines whether the server supports inproc32 activation." )]
  385. boolean InProcServer ;
  386. [Description ( "The LocalServer property, if applicable, defines whether the server supports localserver32 activation." )]
  387. boolean LocalServer ;
  388. [Description ( "The InProcServerPath property, if applicable, defines the server inproc32 executable name." )]
  389. String InProcServerPath ;
  390. [Description ( "The LocalServerPath property, if applicable, defines the server localserver32 executable application name." )]
  391. String LocalServerPath ;
  392. [Description ( "The ThreadingModel property, if applicable, defines the server "
  393. "threading model, can take one of the following values: \n"
  394. "0 - Apartment \n "
  395. "1 - Both \n "
  396. "2 - Free \n "
  397. "3 - Neutral \n "
  398. "4 - Unknown"),
  399. Values {"Apartment","Both", "Neutral","Unknown"},
  400. ValueMap{"0", "1", "2", "3", "4"}]
  401. uint32 ThreadingModel ;
  402. [Description ( "The Synchronisation property, if applicable, defines the server "
  403. "synchronisation model, can take on one of the following values: \n"
  404. "0 - Ignored \n "
  405. "1 - None \n "
  406. "2 - Supported \n "
  407. "3 - Required \n "
  408. "4 - RequiresNew \n "
  409. "5 - Unknown"),
  410. Values {"Ignored","None", "Supported","Required","RequiresNew", "Unknown"},
  411. ValueMap{"0", "1", "2", "3", "4", "5"}]
  412. uint32 Synchronisation ;
  413. } ;
  414. /******************************************************************************
  415. *
  416. * Name:
  417. *
  418. *
  419. * Description:
  420. *
  421. *
  422. *****************************************************************************/
  423. [
  424. Description ("WMI caches provider registration objects to decrease overall"
  425. "execution time. The substem will drop cache entries either through the cache "
  426. "ageing process, through loss of RPC connectivity, through user control or due "
  427. "to some change in the provider's registration. This event defines the unsuccessful "
  428. "activation and initialization of the provider cache entry.")
  429. ]
  430. class Msft_WmiProvider_LoadOperationFailureEvent : Msft_WmiProvider_OperationEvent
  431. {
  432. [Description ( "If applicable, defines the COM CLSID associated with server implementation. "
  433. "Note: decoupled providers do not have an associated COM CLSID." )]
  434. String Clsid ;
  435. [Description ( "If applicable, defines the COM server name present within "
  436. "the unnamed value of the CLSID key." )]
  437. String ServerName ;
  438. [Description ( "If applicable, defines whether the server supports inproc32 activation." )]
  439. boolean InProcServer ;
  440. [Description ( "If applicable, defines whether the server supports localserver32 activation." )]
  441. boolean LocalServer ;
  442. [Description ( "If applicable, defines the server inproc32 executable name." )]
  443. String InProcServerPath ;
  444. [Description ( "If applicable, defines the server localserver32 executable application name." )]
  445. String LocalServerPath ;
  446. [Description ( "The ThreadingModel property, if applicable, defines the server "
  447. "threading model, can take one of the following values: \n"
  448. "0 - Apartment \n "
  449. "1 - Both \n "
  450. "2 - Free \n "
  451. "3 - Neutral \n "
  452. "4 - Unknown"),
  453. Values {"Apartment","Both", "Neutral","Unknown"},
  454. ValueMap {"0", "1", "2", "3", "4"}]
  455. uint32 ThreadingModel ;
  456. [Description ( "The Synchronisation property, if applicable, defines the server "
  457. "synchronisation model, can take on one of the following values: \n"
  458. "0 - Ignored \n "
  459. "1 - None \n "
  460. "2 - Supported \n "
  461. "3 - Required \n "
  462. "4 - RequiresNew \n "
  463. "5 - Unknown"),
  464. Values {"Ignored","None", "Supported","Required","RequiresNew", "Unknown"},
  465. ValueMap{"0", "1", "2", "3", "4", "5"}]
  466. uint32 Synchronisation ;
  467. [Description ( "The ResultCode property reveals the HRESULT code returned from the loading process." )]
  468. uint32 ResultCode ;
  469. } ;
  470. /******************************************************************************
  471. *
  472. * Name:
  473. *
  474. *
  475. * Description:
  476. *
  477. *
  478. *****************************************************************************/
  479. [
  480. Description ("The Msft_WmiProvider_InitializationOperationEvent event class "
  481. "defines the successful initialization "
  482. "of the provider server instance. Following activation of the provider server, the WMI will "
  483. "attempt to initialize the instance provider through a number of COM interface "
  484. "method calls. ")
  485. ]
  486. class Msft_WmiProvider_InitializationOperationEvent : Msft_WmiProvider_OperationEvent
  487. {
  488. } ;
  489. /******************************************************************************
  490. *
  491. * Name:
  492. *
  493. *
  494. * Description:
  495. *
  496. *
  497. *****************************************************************************/
  498. [
  499. Description ("The Msft_WmiProvider_InitializationOperationFailureEvent event "
  500. " class defines the unsuccessful initialization "
  501. "of the provider server instance. Following activation of the provider server, the WMI will"
  502. "attempt to initialize the instance provider through a number of COM interface "
  503. "method calls. This event defines the unsuccessful initialization "
  504. "of the provider server instance.")
  505. ]
  506. class Msft_WmiProvider_InitializationOperationFailureEvent : Msft_WmiProvider_OperationEvent
  507. {
  508. [Description ( "The ResultCode property reveals the HRESULT code returned from the initialization process." )]
  509. uint32 ResultCode ;
  510. } ;
  511. /******************************************************************************
  512. *
  513. * Name:
  514. *
  515. *
  516. * Description:
  517. *
  518. *
  519. *****************************************************************************/
  520. [
  521. Description ("The Msft_WmiProvider_UnLoadOperationEvent event class defines "
  522. "the removal of the provider cache entry. At this point there will be no reference held by WMI on"
  523. "the COM server instance. WMI caches provider registration objects to decrease overall"
  524. "execution time. The substem will drop cache entries either through the cache "
  525. "ageing process, through loss of RPC connectivity, through user control or due "
  526. "to some change in the provider's registration.")
  527. ]
  528. class Msft_WmiProvider_UnLoadOperationEvent : Msft_WmiProvider_OperationEvent
  529. {
  530. } ;
  531. /******************************************************************************
  532. *
  533. * Name:
  534. *
  535. *
  536. * Description:
  537. *
  538. *
  539. *****************************************************************************/
  540. [
  541. Description ("The Msft_WmiProvider_GetObjectAsyncEvent_Pre event class represents "
  542. "an event generated immediately prior to calling the provider's implementation of IWbemServices :: GetObjectAsync. ")
  543. ]
  544. class Msft_WmiProvider_GetObjectAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  545. {
  546. [Description ( "The ObjecPath property holds the path of the object to retrieve." )]
  547. String ObjectPath ;
  548. [Description ( "The Flags property contains the flags associated with the call." )]
  549. Uint32 Flags ;
  550. } ;
  551. /******************************************************************************
  552. *
  553. * Name:
  554. *
  555. *
  556. * Description:
  557. *
  558. *
  559. *****************************************************************************/
  560. [
  561. Description ("The Msft_WmiProvider_PutClassAsyncEvent_Pre event class represents "
  562. "an event generated immediately prior to calling the provider's implementation of IWbemServices :: PutClassAsync.")
  563. ]
  564. class Msft_WmiProvider_PutClassAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  565. {
  566. [Description ( "The ClassObject property holds the object containing the class definition." )]
  567. Object ClassObject ;
  568. [Description ( "The Flags property contains the flags associated with the call." )]
  569. Uint32 Flags ;
  570. } ;
  571. /******************************************************************************
  572. *
  573. * Name:
  574. *
  575. *
  576. * Description:
  577. *
  578. *
  579. *****************************************************************************/
  580. [
  581. Description ("The Msft_WmiProvider_DeleteClassAsyncEvent_Pre event class represents "
  582. "an event generated immediately prior to calling the provider's implementation of IWbemServices :: DeleteClassAsync.")
  583. ]
  584. class Msft_WmiProvider_DeleteClassAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  585. {
  586. [Description ( "The ClassName property hold the name of the class targeted for deletion." )]
  587. String ClassName ;
  588. [Description ( "The Flags property contains the flags associated with the call." )]
  589. Uint32 Flags ;
  590. } ;
  591. /******************************************************************************
  592. *
  593. * Name:
  594. *
  595. *
  596. * Description:
  597. *
  598. *
  599. *****************************************************************************/
  600. [
  601. Description ("The Msft_WmiProvider_CreateClassEnumAsyncEvent_Pre event class represents "
  602. "an event generated immediately prior to calling the provider's implementation of "
  603. "IWbemServices :: CreateClassEnumAsync.")
  604. ]
  605. class Msft_WmiProvider_CreateClassEnumAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  606. {
  607. [Description ( "The SuperclassName property, if not NULL or blank, "
  608. "specifies a superclass name. Only classes that "
  609. "are subclasses of this class are returned"
  610. "If NULL or blank, and Flags contains WBEM_FLAG_SHALLOW,"
  611. "only top-level classes, that is, those which have no"
  612. "parent class or superclass, are returned. If it is"
  613. "NULL or blank and Flags is WBEM_FLAG_DEEP, all classes "
  614. "within the namespace are returned." )]
  615. String SuperclassName ;
  616. [Description ( "The Flags property contains the flags associated with the call." )]
  617. Uint32 Flags ;
  618. } ;
  619. /******************************************************************************
  620. *
  621. * Name:
  622. *
  623. *
  624. * Description:
  625. *
  626. *
  627. *****************************************************************************/
  628. [
  629. Description ("The Msft_WmiProvider_PutInstanceAsyncEvent_Pre event class represents "
  630. "an event generated immediately prior to calling the provider's "
  631. "implementation of IWbemServices :: PutInstanceAsync.")
  632. ]
  633. class Msft_WmiProvider_PutInstanceAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  634. {
  635. [Description ( "The InstanceObject property contains the object instance to be written." )]
  636. Object InstanceObject ;
  637. [Description ( "The Flags property contains the flags associated with the call." )]
  638. Uint32 Flags ;
  639. } ;
  640. /******************************************************************************
  641. *
  642. * Name:
  643. *
  644. *
  645. * Description:
  646. *
  647. *
  648. *****************************************************************************/
  649. [
  650. Description ("The Msft_WmiProvider_DeleteInstanceAsyncEvent_Pre event class "
  651. "represents an event generated immediately prior to calling the "
  652. "provider's implementation of IWbemServices :: DeleteInstanceAsync.")
  653. ]
  654. class Msft_WmiProvider_DeleteInstanceAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  655. {
  656. [Description ( "The ObjectPath property is a string containing the path of instance to be deleted." )]
  657. String ObjectPath ;
  658. [Description ( "The Flags property contains the flags associated with the call." )]
  659. Uint32 Flags ;
  660. } ;
  661. /******************************************************************************
  662. *
  663. * Name:
  664. *
  665. *
  666. * Description:
  667. *
  668. *
  669. *****************************************************************************/
  670. [
  671. Description ("The Msft_WmiProvider_CreateInstanceEnumAsyncEvent_Pre event class "
  672. "represents an event generated immediately prior to calling the "
  673. "provider's implementation of IWbemServices :: CreateInstanceEnumAsync.")
  674. ]
  675. class Msft_WmiProvider_CreateInstanceEnumAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  676. {
  677. [Description ( "The ClassName property is a string containing the name of "
  678. "the class for which instances are desired." )]
  679. String ClassName ;
  680. [Description ( "The Flags property contains the flags associated with the call." )]
  681. Uint32 Flags ;
  682. } ;
  683. /******************************************************************************
  684. *
  685. * Name:
  686. *
  687. *
  688. * Description:
  689. *
  690. *
  691. *****************************************************************************/
  692. [
  693. Description ("The Msft_WmiProvider_ExecQueryAsyncEvent_Pre class represents "
  694. "an event generated immediately prior to calling the provider's "
  695. "implementation of IWbemServices :: ExecQueryAsync.")
  696. ]
  697. class Msft_WmiProvider_ExecQueryAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  698. {
  699. [Description ( "The QueryLanguage property is a string containing one of the query "
  700. "languages supported by Windows Management." )]
  701. String QueryLanguage ;
  702. [Description ( "The Query property is a string containing the text of the query." )]
  703. String Query ;
  704. [Description ( "The Flags property contains the flags associated with the call." )]
  705. Uint32 Flags ;
  706. } ;
  707. /******************************************************************************
  708. *
  709. * Name:
  710. *
  711. *
  712. * Description:
  713. *
  714. *
  715. *****************************************************************************/
  716. [
  717. Description ("The Msft_WmiProvider_ExecMethodAsyncEvent_Pre event class represents "
  718. "an event generated immediately prior to calling the provider's implementation "
  719. "of IWbemServices :: ExecMethodAsync.")
  720. ]
  721. class Msft_WmiProvider_ExecMethodAsyncEvent_Pre : Msft_WmiProvider_OperationEvent_Pre
  722. {
  723. [Description ( "The ObjectPath property is a string containing the object path of "
  724. "the object for which the method is to be executed." )]
  725. String ObjectPath ;
  726. [Description ( "The MethodName is a string container the name of the method for "
  727. "the object." )]
  728. String MethodName ;
  729. [Description ( "The Flags property contains the flags associated with the call." )]
  730. Uint32 Flags ;
  731. [Description ( "The InputParameters property is Null, if no inbound parameters "
  732. "are required to execute the method. Otherwise, an object that contains "
  733. "the properties acting as inbound parameters for the method execution. "
  734. "The contents of the object are method-specific, and are part of the "
  735. "specification for the provider in question." )]
  736. Object InputParameters ;
  737. } ;
  738. /******************************************************************************
  739. *
  740. * Name:
  741. *
  742. *
  743. * Description:
  744. *
  745. *
  746. *****************************************************************************/
  747. [
  748. Description ("The Msft_WmiProvider_NewQuery_Pre event class represents an event "
  749. "generated immediately prior to calling the provider's implementation of "
  750. "IWbemEventProviderQuerySink :: NewQuery.")
  751. ]
  752. class Msft_WmiProvider_NewQuery_Pre : Msft_WmiProvider_OperationEvent_Pre
  753. {
  754. [Description ( "The QueryId property holds the Windows Management-generated identifier for the query. "
  755. "The provider can track this so that during a later "
  756. "cancellation it will know which query was canceled." )]
  757. uint32 QueryId ;
  758. [Description ( "The QueryLanguage property contains the language of the "
  759. "following query filter. For this version "
  760. "of WMI, it will always be 'WQL'." )]
  761. string QueryLanguage ;
  762. [Description ( "The Query property is a string containing the event query "
  763. "filter, which was registered by a logical consumer." )]
  764. string Query ;
  765. };
  766. /******************************************************************************
  767. *
  768. * Name:
  769. *
  770. *
  771. * Description:
  772. *
  773. *
  774. *****************************************************************************/
  775. [
  776. Description ("The Msft_WmiProvider_CancelQuery_Pre event class represents an event "
  777. "generated immediately prior to calling the provider's implementation of "
  778. "IWbemEventProviderQuerySink :: CancelQuery.")
  779. ]
  780. class Msft_WmiProvider_CancelQuery_Pre : Msft_WmiProvider_OperationEvent_Pre
  781. {
  782. [Description ( "The QueryId property holds the Identifier of the query which was canceled. This identifier "
  783. "was originally delivered to the provider by the NewQuery "
  784. "method of this interface." )]
  785. uint32 QueryId ;
  786. };
  787. /******************************************************************************
  788. *
  789. * Name:
  790. *
  791. *
  792. * Description:
  793. *
  794. *
  795. *****************************************************************************/
  796. [
  797. Description ("The Msft_WmiProvider_AccessCheck_Pre event class represents an event "
  798. "generated immediately prior to calling the provider's implementation of "
  799. "IWbemEventSecurity :: AccessCheck.")
  800. ]
  801. class Msft_WmiProvider_AccessCheck_Pre : Msft_WmiProvider_OperationEvent_Pre
  802. {
  803. [Description ( "The QueryLanguage property contains the language of the "
  804. "following query filter. For this version of WMI, it will always be 'WQL'." )]
  805. string QueryLanguage ;
  806. [Description ( "The Query property is a string containing the event query filter, "
  807. "which was registered by a logical consumer." )]
  808. string Query ;
  809. [Description ( "The Sid property holds a Byte Array representing the SID of the "
  810. "client creating the subscription, NULL if subscription is temporary." )]
  811. uint8 Sid [] ;
  812. };
  813. /******************************************************************************
  814. *
  815. * Name:
  816. *
  817. *
  818. * Description:
  819. *
  820. *
  821. *****************************************************************************/
  822. [
  823. Description ("The Msft_WmiProvider_ProvideEvents_Pre event class represents an event "
  824. "generated immediately prior to calling the provider's implementation of "
  825. "IWbemEventProvider :: ProvideEvents.")
  826. ]
  827. class Msft_WmiProvider_ProvideEvents_Pre : Msft_WmiProvider_OperationEvent_Pre
  828. {
  829. [Description ( "The Flags property contains the flags associated with the call." )]
  830. uint32 Flags ;
  831. };
  832. /******************************************************************************
  833. *
  834. * Name:
  835. *
  836. *
  837. * Description:
  838. *
  839. *
  840. *****************************************************************************/
  841. [
  842. Description ("The Msft_WmiProvider_GetObjectAsyncEvent_Post event class "
  843. "representes an event generated immediately following completion of "
  844. "the provider's implementation of IWbemServices :: GetObjectAsync. ")
  845. ]
  846. class Msft_WmiProvider_GetObjectAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  847. {
  848. [Description ( "The ObjectPath property hold the path of the object to retrieve." )]
  849. String ObjectPath ;
  850. [Description ( "The Flags property contains the flags associated with the call." )]
  851. Uint32 Flags ;
  852. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  853. Uint32 ResultCode ;
  854. [Description ( "The ObjectParameter property holds the object defining the extended "
  855. "status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  856. Object ObjectParameter ;
  857. [Description ( "The StringParameter property is currently always NULL." )]
  858. String StringParameter ;
  859. } ;
  860. /******************************************************************************
  861. *
  862. * Name:
  863. *
  864. *
  865. * Description:
  866. *
  867. *
  868. *****************************************************************************/
  869. [
  870. Description ("The Msft_WmiProvider_PutClassAsyncEvent_Post event class "
  871. "represents an event generated immediately following completion of "
  872. "the provider's implementation of IWbemServices :: PutClassAsync.")
  873. ]
  874. class Msft_WmiProvider_PutClassAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  875. {
  876. [Description ( "The ClassObject property holds the object containing the class definition." )]
  877. Object ClassObject ;
  878. [Description ( "The Flags property contains the flags associated with the call." )]
  879. Uint32 Flags ;
  880. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  881. Uint32 ResultCode ;
  882. [Description ( "The ObjectParameter property holds the object defining the extended "
  883. "status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  884. Object ObjectParameter ;
  885. [Description ( "The StringParameter property is currently always NULL." )]
  886. String StringParameter ;
  887. } ;
  888. /******************************************************************************
  889. *
  890. * Name:
  891. *
  892. *
  893. * Description:
  894. *
  895. *
  896. *****************************************************************************/
  897. [
  898. Description ("Msft_WmiProvider_DeleteClassAsyncEvent_Post event class represents an event "
  899. "generated immediately following completion of the provider's implementation of "
  900. "IWbemServices :: DeleteClassAsync.")
  901. ]
  902. class Msft_WmiProvider_DeleteClassAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  903. {
  904. [Description ( "The ClassName property holds the name of the class targeted for deletion." )]
  905. String ClassName ;
  906. [Description ( "The Flags property contains the flags associated with the call." )]
  907. Uint32 Flags ;
  908. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  909. Uint32 ResultCode ;
  910. [Description ( "The ObjectParameter property holds the o defining the extended status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  911. Object ObjectParameter ;
  912. [Description ( "The StringParameter property is currently always NULL." )]
  913. String StringParameter ;
  914. } ;
  915. /******************************************************************************
  916. *
  917. * Name:
  918. *
  919. *
  920. * Description:
  921. *
  922. *
  923. *****************************************************************************/
  924. [
  925. Description ("The Msft_WmiProvider_CreateClassEnumAsyncEvent_Post event class "
  926. "represents an event generated immediately following completion of the "
  927. "provider's implementation of IWbemServices :: CreateClassEnumAsync.")
  928. ]
  929. class Msft_WmiProvider_CreateClassEnumAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  930. {
  931. [Description ( "The SuperclassName property, if not NULL or blank, this parameter "
  932. "specifies a superclass name. Only classes that "
  933. "are subclasses of this class are returned"
  934. "If NULL or blank, and Flags contains WBEM_FLAG_SHALLOW,"
  935. "only top-level classes, that is, those which have no"
  936. "parent class or superclass, are returned. If it is"
  937. "NULL or blank and Flags is WBEM_FLAG_DEEP, all classes "
  938. "within the namespace are returned." )]
  939. String SuperclassName ;
  940. [Description ( "The Flags property contains the flags associated with the call." )]
  941. Uint32 Flags ;
  942. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  943. Uint32 ResultCode ;
  944. [Description ( "The ObjectParameter property holds the o defining the extended status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  945. Object ObjectParameter ;
  946. [Description ( "The StringParameter property is currently always NULL." )]
  947. String StringParameter ;
  948. } ;
  949. /******************************************************************************
  950. *
  951. * Name:
  952. *
  953. *
  954. * Description:
  955. *
  956. *
  957. *****************************************************************************/
  958. [
  959. Description ("The Msft_WmiProvider_PutInstanceAsyncEvent_Post event class "
  960. "represents an event generated immediately following completion of "
  961. "the provider's implementation of IWbemServices :: PutInstanceAsync.")
  962. ]
  963. class Msft_WmiProvider_PutInstanceAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  964. {
  965. [Description ( "The InstanceObject property holds the object instance to be written." )]
  966. Object InstanceObject ;
  967. [Description ( "The Flags property contains the flags associated with the call." )]
  968. Uint32 Flags ;
  969. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  970. Uint32 ResultCode ;
  971. [Description ( "The ObjectParameter property holds the o defining the extended status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  972. Object ObjectParameter ;
  973. [Description ( "The StringParameter property, for create operations, string containing "
  974. "the path of the instance created during the call."
  975. "The provider can pass the StringParameter to IWbemObjectSink :: SetStatus "
  976. "indicating the key of the instance just created." )]
  977. String StringParameter ;
  978. } ;
  979. /******************************************************************************
  980. *
  981. * Name:
  982. *
  983. *
  984. * Description:
  985. *
  986. *
  987. *****************************************************************************/
  988. [
  989. Description ("The Msft_WmiProvider_DeleteInstanceAsyncEvent_Post event class "
  990. "represents an event generated immediately following completion of the "
  991. "provider's implementation of IWbemServices :: DeleteInstanceAsync.")
  992. ]
  993. class Msft_WmiProvider_DeleteInstanceAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  994. {
  995. [Description ( "The ObjectPath property holds a string containing path of instance to be deleted." )]
  996. String ObjectPath ;
  997. [Description ( "The Flags property contains the flags associated with the call." )]
  998. Uint32 Flags ;
  999. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  1000. Uint32 ResultCode ;
  1001. [Description ( "The ObjectParameter property holds the o defining the extended status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  1002. Object ObjectParameter ;
  1003. [Description ( "The StringParameter property is currently always NULL." )]
  1004. String StringParameter ;
  1005. } ;
  1006. /******************************************************************************
  1007. *
  1008. * Name:
  1009. *
  1010. *
  1011. * Description:
  1012. *
  1013. *
  1014. *****************************************************************************/
  1015. [
  1016. Description ("The Msft_WmiProvider_CreateInstanceEnumAsyncEvent_Post event "
  1017. "class represents an event generated immediately following completion of the "
  1018. "provider's implementation of IWbemServices :: CreateInstanceEnumAsync.")
  1019. ]
  1020. class Msft_WmiProvider_CreateInstanceEnumAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  1021. {
  1022. [Description ( "String containing the name of the class for which instances are desired." )]
  1023. String ClassName ;
  1024. [Description ( "The Flags property contains the flags associated with the call." )]
  1025. Uint32 Flags ;
  1026. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  1027. Uint32 ResultCode ;
  1028. [Description ( "The ObjectParameter property holds the o defining the extended status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  1029. Object ObjectParameter ;
  1030. [Description ( "The StringParameter property is currently always NULL." )]
  1031. String StringParameter ;
  1032. } ;
  1033. /******************************************************************************
  1034. *
  1035. * Name:
  1036. *
  1037. *
  1038. * Description:
  1039. *
  1040. *
  1041. *****************************************************************************/
  1042. [
  1043. Description ("The Msft_WmiProvider_ExecQueryAsyncEvent_Post event class "
  1044. "represents an event generated immediately following completion of "
  1045. "the provider's implementation of IWbemServices :: ExecQueryAsync.")
  1046. ]
  1047. class Msft_WmiProvider_ExecQueryAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  1048. {
  1049. [Description ( "The QueryLanguage property holds a string containing one of "
  1050. "the query languages supported by Windows Management." )]
  1051. String QueryLanguage ;
  1052. [Description ( "The Query property holds a string containing the text of the query." )]
  1053. String Query ;
  1054. [Description ( "The Flags property contains the flags associated with the call." )]
  1055. Uint32 Flags ;
  1056. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  1057. Uint32 ResultCode ;
  1058. [Description ( "The ObjectParameter property holds the o defining the extended status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  1059. Object ObjectParameter ;
  1060. [Description ( "The StringParameter property is currently always NULL." )]
  1061. String StringParameter ;
  1062. } ;
  1063. /******************************************************************************
  1064. *
  1065. * Name:
  1066. *
  1067. *
  1068. * Description:
  1069. *
  1070. *
  1071. *****************************************************************************/
  1072. [
  1073. Description ("The Msft_WmiProvider_ExecMethodAsyncEvent_Post event class "
  1074. "represents an event generated immediately following completion of "
  1075. "the provider's implementation of IWbemServices :: ExecMethodAsync.")
  1076. ]
  1077. class Msft_WmiProvider_ExecMethodAsyncEvent_Post : Msft_WmiProvider_OperationEvent_Post
  1078. {
  1079. [Description ( "The ObjectPath property holds a string containing the object path "
  1080. "of the object for which the method is to be executed." )]
  1081. String ObjectPath ;
  1082. [Description ( "The MethodName property holds a string container the name of the method for the object." )]
  1083. String MethodName ;
  1084. [Description ( "The Flags property contains the flags associated with the call." )]
  1085. Uint32 Flags ;
  1086. [Description ( "The InputParameters property is Null, if no inbound parameters are required to execute the method. Otherwise, an "
  1087. "object that contains the properties acting as inbound parameters for "
  1088. "the method execution. The contents of the object are method-specific, and "
  1089. "are part of the specification for the provider in question." )]
  1090. Object InputParameters ;
  1091. [Description ( "The ResultCode property holds the HRESULT Status code of operation." )]
  1092. Uint32 ResultCode ;
  1093. [Description ( "The ObjectParameter property holds the o defining the extended status passed though provider's IWbemObjectSink :: SetStatus call, possibly NULL." )]
  1094. Object ObjectParameter ;
  1095. [Description ( "The StringParameter property is currently always NULL." )]
  1096. String StringParameter ;
  1097. } ;
  1098. /******************************************************************************
  1099. *
  1100. * Name:
  1101. *
  1102. *
  1103. * Description:
  1104. *
  1105. *
  1106. *****************************************************************************/
  1107. [
  1108. Description ("The Msft_WmiProvider_NewQuery_Post event class represents an "
  1109. "event generated immediately following completion of the provider's "
  1110. "implementation of IWbemEventProviderQuerySink :: NewQuery.")
  1111. ]
  1112. class Msft_WmiProvider_NewQuery_Post : Msft_WmiProvider_OperationEvent_Post
  1113. {
  1114. [Description ( "The QueryId property holds a Windows Management-generated identifier for the query. "
  1115. "The provider can track this so that during a later "
  1116. "cancellation it will know which query was canceled." )]
  1117. uint32 QueryId ;
  1118. [Description ( "The QueryLanguage property hold the language of the following query filter. For this version "
  1119. "of WMI, it will always be 'WQL'." )]
  1120. string QueryLanguage ;
  1121. [Description ( "The Query property holds a string containing the event query filter, which was registered by a logical consumer." )]
  1122. string Query ;
  1123. [Description ( "The Result property holds the HRESULT Status code of operation." )]
  1124. uint32 Result ;
  1125. };
  1126. /******************************************************************************
  1127. *
  1128. * Name:
  1129. *
  1130. *
  1131. * Description:
  1132. *
  1133. *
  1134. *****************************************************************************/
  1135. [
  1136. Description ("The Msft_WmiProvider_CancelQuery_Post event class represents an "
  1137. "event generated immediately following completion of the provider's "
  1138. "implementation of IWbemEventProviderQuerySink :: CancelQuery.")
  1139. ]
  1140. class Msft_WmiProvider_CancelQuery_Post : Msft_WmiProvider_OperationEvent_Post
  1141. {
  1142. [Description ( "The QueryId property holds an identifier of the query which was canceled. This identifier "
  1143. "was originally delivered to the provider by the NewQuery "
  1144. "method of this interface." )]
  1145. uint32 QueryId ;
  1146. [Description ( "The Result property holds the HRESULT Status code of operation." )]
  1147. uint32 Result ;
  1148. };
  1149. /******************************************************************************
  1150. *
  1151. * Name:
  1152. *
  1153. *
  1154. * Description:
  1155. *
  1156. *
  1157. *****************************************************************************/
  1158. [
  1159. Description ("The Msft_WmiProvider_AccessCheck_Post event class represents "
  1160. "an event generated immediately following completion of the provider's "
  1161. "implementation of IWbemEventSecurity :: AccessCheck.")
  1162. ]
  1163. class Msft_WmiProvider_AccessCheck_Post : Msft_WmiProvider_OperationEvent_Post
  1164. {
  1165. [Description ( "The QueryLanguage property holds the language of the following "
  1166. "query filter. For this version of WMI, it will always be 'WQL'." )]
  1167. string QueryLanguage ;
  1168. [Description ( "The Query property is a string containing the event query filter, "
  1169. "which was registered by a logical consumer." )]
  1170. string Query ;
  1171. [Description ( "The Sid property is a Byte Array representing the SID of the "
  1172. "client creating the subscription, NULL if subscription is temporary." )]
  1173. uint8 Sid [] ;
  1174. [Description ( "The Result property holds the HRESULT Status code of operation." )]
  1175. uint32 Result ;
  1176. };
  1177. /******************************************************************************
  1178. *
  1179. * Name:
  1180. *
  1181. *
  1182. * Description:
  1183. *
  1184. *
  1185. *****************************************************************************/
  1186. [
  1187. Description ("The Msft_WmiProvider_ProvideEvents_Post event class represents "
  1188. "an event generated immediately following completion of the provider's "
  1189. "implementation of IWbemEventProvider :: ProvideEvents.")
  1190. ]
  1191. class Msft_WmiProvider_ProvideEvents_Post : Msft_WmiProvider_OperationEvent_Post
  1192. {
  1193. [Description ( "The Flags property contains the flags associated with the call." )]
  1194. uint32 Flags ;
  1195. [Description ( "The Result property holds the HRESULT Status code of operation." )]
  1196. uint32 Result ;
  1197. };
  1198. /******************************************************************************
  1199. *
  1200. * Name:
  1201. *
  1202. *
  1203. * Description:
  1204. *
  1205. *
  1206. *****************************************************************************/
  1207. instance of __EventProviderRegistration
  1208. {
  1209. Provider = $P;
  1210. EventQueryList = {"select * from Msft_WmiProvider_OperationEvent"};
  1211. };
  1212. /******************************************************************************
  1213. *
  1214. * Name:
  1215. *
  1216. *
  1217. * Description:
  1218. *
  1219. *
  1220. *****************************************************************************/
  1221. [
  1222. Dynamic,Provider ("Msft_ProviderSubSystem"),
  1223. Singleton ,
  1224. Description ("ThMsft_WmiProvider_Counters class exposes approximate internal "
  1225. "operation call count information accross all providers.")
  1226. ]
  1227. class Msft_WmiProvider_Counters
  1228. {
  1229. [Description ( "The ProviderOperation_GetObjectAsync property indicates the number of calls to IWbemServices :: GetObjectAsync." )]
  1230. Uint64 ProviderOperation_GetObjectAsync ;
  1231. [Description ( "The ProviderOperation_PutClassAsync property indicates the number of calls to IWbemServices :: PutClassAsync." )]
  1232. Uint64 ProviderOperation_PutClassAsync ;
  1233. [Description ( "The ProviderOperation_DeleteClassAsync property indicates the number of calls to IWbemServices :: DeleteClassAsync." )]
  1234. Uint64 ProviderOperation_DeleteClassAsync ;
  1235. [Description ( "The ProviderOperation_CreateClassEnumAsync property indicates the number of calls to IWbemServices :: CreateClassEnumAsync." )]
  1236. Uint64 ProviderOperation_CreateClassEnumAsync ;
  1237. [Description ( "The ProviderOperation_PutInstanceAsync property indicates the number of calls to IWbemServices :: PutInstanceAsync." )]
  1238. Uint64 ProviderOperation_PutInstanceAsync ;
  1239. [Description ( "The ProviderOperation_DeleteInstanceAsync property indicates the number of calls to IWbemServices :: DeleteInstanceAsync." )]
  1240. Uint64 ProviderOperation_DeleteInstanceAsync ;
  1241. [Description ( "The ProviderOperation_CreateInstanceEnumAsync property indicates the number of calls to IWbemServices :: CreateInstanceEnumAsync." )]
  1242. Uint64 ProviderOperation_CreateInstanceEnumAsync ;
  1243. [Description ( "The ProviderOperation_ExecQueryAsync property indicates the number of calls to IWbemServices :: ExecQueryAsync." )]
  1244. Uint64 ProviderOperation_ExecQueryAsync ;
  1245. [Description ( "The ProviderOperation_ExecMethodAsync property indicates the number of calls to IWbemServices :: ExecMethodAsync." )]
  1246. Uint64 ProviderOperation_ExecMethodAsync ;
  1247. [Description ( "The ProviderOperation_QueryInstances property indicates the number of calls to IWbemHiPerfProvider :: QueryInstances." )]
  1248. Uint64 ProviderOperation_QueryInstances ;
  1249. [Description ( "The ProviderOperation_CreateRefresher property indicates the number of calls to IWbemHiPerfProvider :: CreateRefresher." )]
  1250. Uint64 ProviderOperation_CreateRefresher ;
  1251. [Description ( "The ProviderOperation_CreateRefreshableObject property indicates the number of calls to IWbemHiPerfProvider :: CreateRefreshableObject." )]
  1252. Uint64 ProviderOperation_CreateRefreshableObject ;
  1253. [Description ( "The ProviderOperation_StopRefreshing property indicates the number of calls to IWbemHiPerfProvider :: StopRefreshing." )]
  1254. Uint64 ProviderOperation_StopRefreshing ;
  1255. [Description ( "The ProviderOperation_CreateRefreshableEnum property indicates the number of calls to IWbemHiPerfProvider :: CreateRefreshableEnum." )]
  1256. Uint64 ProviderOperation_CreateRefreshableEnum ;
  1257. [Description ( "The ProviderOperation_GetObjects property indicates the number of calls to IWbemHiPerfProvider :: GetObjects." )]
  1258. Uint64 ProviderOperation_GetObjects ;
  1259. [Description ( "The ProviderOperation_GetProperty property indicates the number of calls to IWbemPropertyProvider :: GetProperty." )]
  1260. Uint64 ProviderOperation_GetProperty ;
  1261. [Description ( "The ProviderOperation_PutProperty property indicates the number of calls to IWbemPropertyProvider :: PutProperty." )]
  1262. Uint64 ProviderOperation_PutProperty ;
  1263. [Description ( "The ProviderOperation_ProvideEvents property indicates the number of calls to IWbemEventProvider :: ProvideEvents." )]
  1264. Uint64 ProviderOperation_ProvideEvents ;
  1265. [Description ( "The ProviderOperation_NewQuery property indicates the number of calls to IWbemEventProviderQuerySink :: NewQuery." )]
  1266. Uint64 ProviderOperation_NewQuery ;
  1267. [Description ( "The ProviderOperation_CancelQuery property indicates the number of calls to IWbemEventProviderQuerySink :: CancelQuery." )]
  1268. Uint64 ProviderOperation_CancelQuery ;
  1269. [Description ( "The ProviderOperation_AccessCheck property indicates the number of calls to IWbemEventProviderSecurity :: AccessCheck." )]
  1270. Uint64 ProviderOperation_AccessCheck ;
  1271. [Description ( "The ProviderOperation_SetRegistrationObject ProviderOperation_SetRegistrationObject property is currently not set." )]
  1272. Uint64 ProviderOperation_SetRegistrationObject ;
  1273. [Description ( "The ProviderOperation_FindConsumer property indicates the number of calls to IWbemEventConsumerProvider :: FindConsumer." )]
  1274. Uint64 ProviderOperation_FindConsumer ;
  1275. [Description ( "The ProviderOperation_ValidateSubscription property indicates the number of calls to IWbemEventConsumerProviderEx :: ValidateSubscription." )]
  1276. Uint64 ProviderOperation_ValidateSubscription ;
  1277. } ;
  1278. /******************************************************************************
  1279. *
  1280. * Name:
  1281. *
  1282. *
  1283. * Description:
  1284. *
  1285. *
  1286. *****************************************************************************/
  1287. [
  1288. Dynamic,Provider ("Msft_ProviderSubSystem"),
  1289. Description ( "The Msft_Providers class exposes configuration relating to provider instances" )
  1290. ]
  1291. class Msft_Providers
  1292. {
  1293. [Key,Description ( "The Namespace property indicates the Namespace associated with a particular instantiation of a provider instance." )]
  1294. String Namespace ;
  1295. [Key,Description ( "If provider is configured for Per User Initialization, then the User property "
  1296. "refers to User's particular instantiation of a provider instance." )]
  1297. String User ;
  1298. [Key,Description ( "If provider is configured for Per Local Initialization, then the Locale property "
  1299. "refers to Locale's particular instantiation of a provider instance." )]
  1300. String Locale ;
  1301. [Key,Description ( "The Provider property holds the Provider Name associated with a particular instantiation of a provider instance."
  1302. "The Provider Name is identical to the __Win32provider :: Name property." )]
  1303. String Provider ;
  1304. [Key,Description ( "The TransactionIdentifier property is for internal use, "
  1305. "currently always {00000000-0000-0000-0000-000000000000}." )]
  1306. String TransactionIdentifier ;
  1307. [Key,Description ( "The HostingSpecification property defines the first component of the __Win32provider :: HostingModel"
  1308. "property. The hosting property is defined to be one of the following value types :-"
  1309. "WmiCore - Activate provider in host to the winmgmt service, note this is only supported for OS components."
  1310. "Note, attempts to register providers with WmiCore as HostingModel will fail with WBEM_E_ACCESS_DENIED"
  1311. "WmiCoreOrSelfHost - Activate provider in host to the winmgmt service or as local server,"
  1312. "Note this is only supported for OS components."
  1313. "SelfHost - Activate provider as a local server implementation."
  1314. "Decoupled:Com - Activate provider as a decoupled com provider."
  1315. "Decoupled:NonCom - Activate provider as a non com event provider."
  1316. "LocalSystemHost[:((.)+)] - Activate provider in host to a wmi provider host running as LocalSystem."
  1317. "Note, this is the default if __Win32provider :: HostingModel is not set. "
  1318. "Further note, that on creation of an instance of __Win32provider with HostingModel equal to NULL, "
  1319. "LocalSystemHost or LocalSystemHostOrSelfHost, an event log record is generated so that admins are aware of"
  1320. "providers running under the trusted status."
  1321. "LocalSystemHostOrSelfHost[:((.)+)] - Activate provider in host to a wmi provider host running as LocalSystem "
  1322. "or as local server. Note, this is the default if __Win32provider :: HostingModel is not set. "
  1323. "Further note, that on creation of an instance of __Win32provider with HostingModel equal to NULL, "
  1324. "LocalSystemHost or LocalSystemHostOrSelfHost, an event log record is generated so that admins are aware of"
  1325. "providers running under the trusted status."
  1326. "NetworkServiceHost[:((.)+)] - Activate provider in host to a wmi provider host running as NetworkService."
  1327. "LocalServiceHost[:((.)+)] - Activate provider in host to a wmi provider host running as LocalService."
  1328. "Note, [:((.)+)] refers to a regular expression that defines the hosting group for the provider." )]
  1329. Uint32 HostingSpecification ;
  1330. [Key,Description ( "The HostingGroup specification defines the second component of the __Win32provider :: HostingModel when"
  1331. "the hosting model is one of LocalSystemHost, LocalSystemHostOrSelfHost, NetworkServiceHost or LocalServiceHost."
  1332. "The hosting group defines a particular instantiation of a wmi provider host, providers that share the same hosting model"
  1333. "and hosting group share the same surrogate process." )]
  1334. String HostingGroup ;
  1335. [Description ( "The HostProcessIdentifier property defines the process identifier hosting the particular instance of the provider." )]
  1336. Uint32 HostProcessIdentifier ;
  1337. [Description ( "The ProviderOperation_GetObjectAsync property indicates the number of calls to IWbemServices :: GetObjectAsync." )]
  1338. Uint64 ProviderOperation_GetObjectAsync ;
  1339. [Description ( "The property indicates the number of calls to IWbemServices :: PutClassAsync." )]
  1340. Uint64 ProviderOperation_PutClassAsync ;
  1341. [Description ( "The ProviderOperation_DeleteClassAsync property indicates the number of calls to IWbemServices :: DeleteClassAsync." )]
  1342. Uint64 ProviderOperation_DeleteClassAsync ;
  1343. [Description ( "The ProviderOperation_CreateClassEnumAsync property indicates the number of calls to IWbemServices :: CreateClassEnumAsync." )]
  1344. Uint64 ProviderOperation_CreateClassEnumAsync ;
  1345. [Description ( "The ProviderOperation_PutInstanceAsync property indicates the number of calls to IWbemServices :: PutInstanceAsync." )]
  1346. Uint64 ProviderOperation_PutInstanceAsync ;
  1347. [Description ( "The ProviderOperation_DeleteInstanceAsync property indicates the number of calls to IWbemServices :: DeleteInstanceAsync." )]
  1348. Uint64 ProviderOperation_DeleteInstanceAsync ;
  1349. [Description ( "The ProviderOperation_CreateInstanceEnumAsync property indicates the number of calls to IWbemServices :: CreateInstanceEnumAsync." )]
  1350. Uint64 ProviderOperation_CreateInstanceEnumAsync ;
  1351. [Description ( "The ProviderOperation_ExecQueryAsync property indicates the number of calls to IWbemServices :: ExecQueryAsync." )]
  1352. Uint64 ProviderOperation_ExecQueryAsync ;
  1353. [Description ( "The ProviderOperation_ExecMethodAsync property indicates the number of calls to IWbemServices :: ExecMethodAsync." )]
  1354. Uint64 ProviderOperation_ExecMethodAsync ;
  1355. [Description ( "The ProviderOperation_QueryInstances property indicates the number of calls to IWbemHiPerfProvider :: QueryInstances." )]
  1356. Uint64 ProviderOperation_QueryInstances ;
  1357. [Description ( "The ProviderOperation_CreateRefresher property indicates the number of calls to IWbemHiPerfProvider :: CreateRefresher." )]
  1358. Uint64 ProviderOperation_CreateRefresher ;
  1359. [Description ( "The ProviderOperation_CreateRefreshableObject property indicates the number of calls to IWbemHiPerfProvider :: CreateRefreshableObject." )]
  1360. Uint64 ProviderOperation_CreateRefreshableObject ;
  1361. [Description ( "The ProviderOperation_StopRefreshing property indicates the number of calls to IWbemHiPerfProvider :: StopRefreshing." )]
  1362. Uint64 ProviderOperation_StopRefreshing ;
  1363. [Description ( "The ProviderOperation_CreateRefreshableEnum property indicates the number of calls to IWbemHiPerfProvider :: CreateRefreshableEnum." )]
  1364. Uint64 ProviderOperation_CreateRefreshableEnum ;
  1365. [Description ( "The ProviderOperation_GetObjects property indicates the number of calls to IWbemHiPerfProvider :: GetObjects." )]
  1366. Uint64 ProviderOperation_GetObjects ;
  1367. [Description ( "The ProviderOperation_GetProperty property indicates the number of calls to IWbemPropertyProvider :: GetProperty." )]
  1368. Uint64 ProviderOperation_GetProperty ;
  1369. [Description ( "The ProviderOperation_PutProperty property indicates the number of calls to IWbemPropertyProvider :: PutProperty." )]
  1370. Uint64 ProviderOperation_PutProperty ;
  1371. [Description ( "The ProviderOperation_ProvideEvents property indicates the number of calls to IWbemEventProvider :: ProvideEvents." )]
  1372. Uint64 ProviderOperation_ProvideEvents ;
  1373. [Description ( "The ProviderOperation_NewQuery property indicates the number of calls to IWbemEventProviderQuerySink :: NewQuery." )]
  1374. Uint64 ProviderOperation_NewQuery ;
  1375. [Description ( "The ProviderOperation_CancelQuery property indicates the number of calls to IWbemEventProviderQuerySink :: CancelQuery." )]
  1376. Uint64 ProviderOperation_CancelQuery ;
  1377. [Description ( "The ProviderOperation_AccessCheck property indicates the number of calls to IWbemEventProviderSecurity :: AccessCheck." )]
  1378. Uint64 ProviderOperation_AccessCheck ;
  1379. [Description ( "The ProviderOperation_SetRegistrationObject property is currently not set." )]
  1380. Uint64 ProviderOperation_SetRegistrationObject ;
  1381. [Description ( "The ProviderOperation_FindConsumer property indicates the number of calls to IWbemEventConsumerProvider :: FindConsumer." )]
  1382. Uint64 ProviderOperation_FindConsumer ;
  1383. [Description ( "The ProviderOperation_ValidateSubscription property indicates the number of calls to IWbemEventConsumerProviderEx :: ValidateSubscription." )]
  1384. Uint64 ProviderOperation_ValidateSubscription ;
  1385. [
  1386. Implemented,
  1387. Description ( "The Suspend method suspends execution of providers. All calls passing "
  1388. "through a particular instance of the provider will be pass through an"
  1389. "interception layer, this layer will fail the call. Depending on the particular "
  1390. "operation, the client may receive the status code WBEM_E_PROVIDER_SUSPENDED " )
  1391. ]
  1392. Uint32 Suspend () ;
  1393. [
  1394. Implemented,
  1395. Description ( "The Resume method resumes execution of providers suspended through the use of the Suspend method." )
  1396. ]
  1397. Uint32 Resume () ;
  1398. [
  1399. Implemented,
  1400. Description ( "The dynamic UnLoad method unloads the COM server associated with the particular instance of the provider. Further calls into"
  1401. "the provider with the same CLSID will return WBEM_E_PROVIDER_DISABLED. If the COM server "
  1402. "implementation is an inproc server hosted in the provider host process it will receive calls to the "
  1403. "exported function DllCanUnloadNow, if the provider responds by returning TRUE then COM will unload the "
  1404. "executable image. Currently COM is configured to unload the executable approximately 30 seconds after the "
  1405. "first successful call to DllCanUnloadNow. If hosted in some other process surrogate the surrogate will unload "
  1406. "using some other strategy. The provider can be re-enabled either through the use of the Msft_Provider :: Load "
  1407. "method, changes to the associated instance of __Win32Provider or via service restart." )
  1408. ]
  1409. Uint32 UnLoad () ;
  1410. [
  1411. Static,
  1412. Implemented,
  1413. Description ( "The Load method loads a specific instance of a provider." )
  1414. ]
  1415. Uint32 Load (
  1416. [In] String Namespace ,
  1417. [In] String User ,
  1418. [In] String Locale ,
  1419. [In] String Provider ,
  1420. [In] String TransactionIdentifier
  1421. ) ;
  1422. } ;