2 * Copyright 2013 Hans Leidekker for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 #define threading(model)
24 #define vi_progid(str)
28 uuid(565783c6-cb41-11d1-8b02-00600806d9b6),
29 helpstring("Microsoft WMI Scripting V1.2 Library"),
36 importlib("stdole2.tlb");
38 interface ISWbemEventSource;
39 interface ISWbemLocator;
40 interface ISWbemMethod;
41 interface ISWbemMethodSet;
42 interface ISWbemNamedValue;
43 interface ISWbemNamedValueSet;
44 interface ISWbemObject;
45 interface ISWbemObjectPath;
46 interface ISWbemObjectSet;
47 interface ISWbemPrivilege;
48 interface ISWbemPrivilegeSet;
49 interface ISWbemProperty;
50 interface ISWbemPropertySet;
51 interface ISWbemQualifier;
52 interface ISWbemQualifierSet;
53 interface ISWbemSecurity;
54 interface ISWbemServices;
59 uuid(bf078c2a-07d9-11d2-8b21-00600806d9b6)
63 wbemTimeoutInfinite = 0xffffffff
69 uuid(4a249b72-fc9a-11d1-8b1e-00600806d9b6)
71 enum WbemChangeFlagEnum
73 wbemChangeFlagCreateOrUpdate = 0,
74 wbemChangeFlagUpdateOnly = 0x00000001,
75 wbemChangeFlagCreateOnly = 0x00000002,
76 wbemChangeFlagUpdateCompatible = 0x00000000,
77 wbemChangeFlagUpdateSafeMode = 0x00000020,
78 wbemChangeFlagUpdateForceMode = 0x00000040,
79 wbemChangeFlagStrongValidation = 0x00000080,
80 wbemChangeFlagAdvisory = 0x00010000
86 uuid(4a249b73-fc9a-11d1-8b1e-00600806d9b6)
90 wbemFlagReturnImmediately = 0x00010,
91 wbemFlagReturnWhenComplete = 0,
92 wbemFlagBidirectional = 0,
93 wbemFlagForwardOnly = 0x00020,
94 wbemFlagNoErrorObject = 0x00040,
95 wbemFlagReturnErrorObject = 0,
96 wbemFlagSendStatus = 0x00080,
97 wbemFlagDontSendStatus = 0,
98 wbemFlagEnsureLocatable = 0x00100,
99 wbemFlagDirectRead = 0x00200,
100 wbemFlagSendOnlySelected = 0,
101 wbemFlagUseAmendedQualifiers = 0x20000,
102 wbemFlagGetDefault = 0x0,
103 wbemFlagSpawnInstance = 0x00001,
104 wbemFlagUseCurrentTime = 0x00001
110 uuid(4a249b76-fc9a-11d1-8b1e-00600806d9b6)
112 enum WbemQueryFlagEnum
115 wbemQueryFlagShallow,
116 wbemQueryFlagPrototype
122 uuid(4A249B79-FC9A-11d1-8B1E-00600806D9B6)
124 enum WbemComparisonFlagEnum
126 wbemComparisonFlagIncludeAll = 0,
127 wbemComparisonFlagIgnoreQualifiers = 1,
128 wbemComparisonFlagIgnoreObjectSource = 2,
129 wbemComparisonFlagIgnoreDefaultValues = 4,
130 wbemComparisonFlagIgnoreClass = 8,
131 wbemComparisonFlagIgnoreCase = 16,
132 wbemComparisonFlagIgnoreFlavor = 32
133 } WbemComparisonFlagEnum;
138 uuid(27d54d92-0ebe-11d2-8b22-00600806d9b6),
144 interface ISWbemEventSource : IDispatch
148 [in, defaultvalue(wbemTimeoutInfinite)] long iTimeoutMs,
149 [out, retval] ISWbemObject **objWbemObject);
153 [out, retval] ISWbemSecurity **objWbemSecurity);
159 uuid(76a6415b-cb41-11d1-8b02-00600806d9b6),
163 pointer_default(unique)
165 interface ISWbemLocator : IDispatch
168 HRESULT ConnectServer(
169 [in, defaultvalue(".")] BSTR strServer,
170 [in, defaultvalue("")] BSTR strNamespace,
171 [in, defaultvalue("")] BSTR strUser,
172 [in, defaultvalue("")] BSTR strPassword,
173 [in, defaultvalue("")] BSTR strLocale,
174 [in, defaultvalue("")] BSTR strAuthority,
175 [in, defaultvalue(0)] long iSecurityFlags,
176 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
177 [out, retval] ISWbemServices **objWbemServices);
180 HRESULT Security_([out, retval] ISWbemSecurity **objWbemSecurity);
186 uuid(422e8e90-d955-11d1-8b09-00600806d9b6),
190 pointer_default(unique),
193 interface ISWbemMethod : IDispatch
197 [out, retval] BSTR *strName);
201 [out, retval] BSTR *strOrigin);
204 HRESULT InParameters(
205 [out, retval] ISWbemObject **objWbemInParameters);
208 HRESULT OutParameters(
209 [out, retval] ISWbemObject **objWbemOutParameters);
213 [out, retval] ISWbemQualifierSet **objWbemQualifierSet);
219 uuid(c93ba292-d955-11d1-8b09-00600806d9b6),
225 interface ISWbemMethodSet : IDispatch
227 [ id(DISPID_NEWENUM), propget, restricted ]
229 [out, retval] IUnknown **pUnk);
234 [in, defaultvalue(0)] long iFlags,
235 [out, retval] ISWbemMethod **objWbemMethod);
239 [out, retval] long *iCount);
245 uuid(76a64164-cb41-11d1-8b02-00600806d9b6),
250 interface ISWbemNamedValue : IDispatch
252 [ id(DISPID_VALUE), propget ]
254 [out, retval] VARIANT *varValue);
256 [ id(DISPID_VALUE), propput ]
258 [in] VARIANT *varValue);
262 [out, retval] BSTR *strName);
268 uuid(cf2376ea-ce8c-11d1-8b05-00600806d9b6),
273 interface ISWbemNamedValueSet : IDispatch
275 [ id(DISPID_NEWENUM), propget, restricted ]
277 [out, retval] IUnknown **pUnk);
282 [in, defaultvalue(0)] long iFlags,
283 [out, retval] ISWbemNamedValue **objWbemNamedValue);
287 [out, retval] long *iCount);
292 [in] VARIANT *varValue,
293 [in, defaultvalue(0)] long iFlags,
294 [out, retval] ISWbemNamedValue **objWbemNamedValue);
299 [in, defaultvalue(0)] long iFlags);
303 [out, retval] ISWbemNamedValueSet **objWbemNamedValueSet);
312 uuid(76A6415A-CB41-11d1-8B02-00600806D9B6),
317 interface ISWbemObject : IDispatch
321 [in, defaultvalue(wbemChangeFlagCreateOrUpdate)] long iFlags,
322 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
323 [out, retval] ISWbemObjectPath **objWbemObjectPath);
327 [in] IDispatch *objWbemSink,
328 [in, defaultvalue(wbemChangeFlagCreateOrUpdate)] long iFlags,
329 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
330 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
334 [in, defaultvalue(0)] long iFlags,
335 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet);
338 HRESULT DeleteAsync_(
339 [in] IDispatch *objWbemSink,
340 [in, defaultvalue(0)] long iFlags,
341 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
342 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
346 [in, defaultvalue(wbemFlagReturnImmediately)] long iFlags,
347 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
348 [out, retval] ISWbemObjectSet **objWbemObjectSet);
351 HRESULT InstancesAsync_(
352 [in] IDispatch *objWbemSink,
353 [in, defaultvalue(0)] long iFlags,
354 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
355 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
359 [in, defaultvalue(wbemFlagReturnImmediately|wbemQueryFlagDeep)] long iFlags,
360 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
361 [out, retval] ISWbemObjectSet **objWbemObjectSet);
364 HRESULT SubclassesAsync_(
365 [in] IDispatch *objWbemSink,
366 [in, defaultvalue(wbemQueryFlagDeep)] long iFlags,
367 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
368 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
371 HRESULT Associators_(
372 [in, defaultvalue("")] BSTR strAssocClass,
373 [in, defaultvalue("")] BSTR strResultClass,
374 [in, defaultvalue("")] BSTR strResultRole,
375 [in, defaultvalue("")] BSTR strRole,
376 [in, defaultvalue(FALSE)] VARIANT_BOOL bClassesOnly,
377 [in, defaultvalue(FALSE)] VARIANT_BOOL bSchemaOnly,
378 [in, defaultvalue("")] BSTR strRequiredAssocQualifier,
379 [in, defaultvalue("")] BSTR strRequiredQualifier,
380 [in, defaultvalue(wbemFlagReturnImmediately)] long iFlags,
381 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
382 [out, retval] ISWbemObjectSet **objWbemObjectSet);
385 HRESULT AssociatorsAsync_(
386 [in] IDispatch *objWbemSink,
387 [in, defaultvalue("")] BSTR strAssocClass,
388 [in, defaultvalue("")] BSTR strResultClass,
389 [in, defaultvalue("")] BSTR strResultRole,
390 [in, defaultvalue("")] BSTR strRole,
391 [in, defaultvalue(FALSE)] VARIANT_BOOL bClassesOnly,
392 [in, defaultvalue(FALSE)] VARIANT_BOOL bSchemaOnly,
393 [in, defaultvalue("")] BSTR strRequiredAssocQualifier,
394 [in, defaultvalue("")] BSTR strRequiredQualifier,
395 [in, defaultvalue(0)] long iFlags,
396 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
397 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
401 [in, defaultvalue("")] BSTR strResultClass,
402 [in, defaultvalue("")] BSTR strRole,
403 [in, defaultvalue(FALSE)] VARIANT_BOOL bClassesOnly,
404 [in, defaultvalue(FALSE)] VARIANT_BOOL bSchemaOnly,
405 [in, defaultvalue("")] BSTR strRequiredQualifier,
406 [in, defaultvalue(wbemFlagReturnImmediately)] long iFlags,
407 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
408 [out, retval] ISWbemObjectSet **objWbemObjectSet);
411 HRESULT ReferencesAsync_(
412 [in] IDispatch *objWbemSink,
413 [in, defaultvalue("")] BSTR strResultClass,
414 [in, defaultvalue("")] BSTR strRole,
415 [in, defaultvalue(FALSE)] VARIANT_BOOL bClassesOnly,
416 [in, defaultvalue(FALSE)] VARIANT_BOOL bSchemaOnly,
417 [in, defaultvalue("")] BSTR strRequiredQualifier,
418 [in, defaultvalue(0)] long iFlags,
419 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
420 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
424 [in] BSTR strMethodName,
425 [in, defaultvalue(0)] IDispatch *objWbemInParameters,
426 [in, defaultvalue(0)] long iFlags,
427 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
428 [out, retval] ISWbemObject **objWbemOutParameters);
431 HRESULT ExecMethodAsync_(
432 [in] IDispatch *objWbemSink,
433 [in] BSTR strMethodName,
434 [in, defaultvalue(0)] IDispatch *objWbemInParameters,
435 [in, defaultvalue(0)] long iFlags,
436 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
437 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
441 [out, retval] ISWbemObject **objWbemObject);
444 HRESULT GetObjectText_(
445 [in, defaultvalue(0)] long iFlags,
446 [out, retval] BSTR *strObjectText);
449 HRESULT SpawnDerivedClass_(
450 [in, defaultvalue(0)] long iFlags,
451 [out, retval] ISWbemObject **objWbemObject);
454 HRESULT SpawnInstance_(
455 [in, defaultvalue(0)] long iFlags,
456 [out, retval] ISWbemObject **objWbemObject);
460 [in] IDispatch *objWbemObject,
461 [in, defaultvalue(wbemComparisonFlagIncludeAll)] long iFlags,
462 [out, retval] VARIANT_BOOL *bResult);
466 [out, retval] ISWbemQualifierSet **objWbemQualifierSet);
470 [out, retval] ISWbemPropertySet **objWbemPropertySet);
474 [out, retval] ISWbemMethodSet **objWbemMethodSet);
478 [out, retval] VARIANT *strClassNameArray);
482 [out, retval] ISWbemObjectPath **objWbemObjectPath);
486 [out, retval] ISWbemSecurity **objWbemSecurity);
492 uuid(5791bc27-ce9c-11d1-97bf-0000f81e849c),
496 pointer_default(unique)
498 interface ISWbemObjectPath : IDispatch
500 [ id(DISPID_VALUE), propget ]
502 [out, retval] BSTR *strPath);
504 [ id(DISPID_VALUE), propput ]
510 [out, retval] BSTR *strRelPath);
514 [in] BSTR strRelPath);
518 [out, retval] BSTR *strServer);
522 [in] BSTR strServer);
526 [out, retval] BSTR *strNamespace);
530 [in] BSTR strNamespace);
533 HRESULT ParentNamespace(
534 [out, retval] BSTR *strParentNamespace);
538 [out, retval] BSTR *strDisplayName);
542 [in] BSTR strDisplayName);
546 [out, retval] BSTR *strClass);
554 [out, retval] VARIANT_BOOL *bIsClass);
557 HRESULT SetAsClass();
561 [out, retval] VARIANT_BOOL *bIsSingleton);
564 HRESULT SetAsSingleton();
568 [out, retval] ISWbemNamedValueSet **objWbemNamedValueSet);
572 [out, retval] ISWbemSecurity **objWbemSecurity);
576 [out, retval] BSTR *strLocale);
580 [in] BSTR strLocale);
584 [out, retval] BSTR *strAuthority);
588 [in] BSTR strAuthority);
594 uuid(76a6415f-cb41-11d1-8b02-00600806d9b6),
600 interface ISWbemObjectSet : IDispatch
602 [ id(DISPID_NEWENUM), propget, restricted ]
604 [out, retval] IUnknown **pUnk);
608 [in] BSTR strObjectPath,
609 [in, defaultvalue(0)] long iFlags,
610 [out, retval] ISWbemObject **objWbemObject);
614 [out, retval] long *iCount);
618 [out, retval] ISWbemSecurity **objWbemSecurity);
623 [out, retval] ISWbemObject **objWbemObject);
629 uuid(176d2f70-5af3-11d2-8b4a-00600806d9b6)
631 enum WbemPrivilegeEnum
633 wbemPrivilegeCreateToken = 1,
634 wbemPrivilegePrimaryToken = 2,
635 wbemPrivilegeLockMemory = 3,
636 wbemPrivilegeIncreaseQuota = 4,
637 wbemPrivilegeMachineAccount = 5,
638 wbemPrivilegeTcb = 6,
639 wbemPrivilegeSecurity = 7,
640 wbemPrivilegeTakeOwnership = 8,
641 wbemPrivilegeLoadDriver = 9,
642 wbemPrivilegeSystemProfile = 10,
643 wbemPrivilegeSystemtime = 11,
644 wbemPrivilegeProfileSingleProcess = 12,
645 wbemPrivilegeIncreaseBasePriority = 13,
646 wbemPrivilegeCreatePagefile = 14,
647 wbemPrivilegeCreatePermanent = 15,
648 wbemPrivilegeBackup = 16,
649 wbemPrivilegeRestore = 17,
650 wbemPrivilegeShutdown = 18,
651 wbemPrivilegeDebug = 19,
652 wbemPrivilegeAudit = 20,
653 wbemPrivilegeSystemEnvironment = 21,
654 wbemPrivilegeChangeNotify = 22,
655 wbemPrivilegeRemoteShutdown = 23,
656 wbemPrivilegeUndock = 24,
657 wbemPrivilegeSyncAgent = 25,
658 wbemPrivilegeEnableDelegation = 26,
659 wbemPrivilegeManageVolume = 27
665 uuid(26ee67bd-5804-11d2-8b4a-00600806d9b6),
671 interface ISWbemPrivilege : IDispatch
673 [ id(DISPID_VALUE), propget ]
675 [out, retval] VARIANT_BOOL *bIsEnabled);
677 [ id(DISPID_VALUE), propput ]
679 [in] VARIANT_BOOL bIsEnabled);
683 [out, retval] BSTR *strDisplayName);
687 [out, retval] BSTR *strDisplayName);
691 [out, retval] WbemPrivilegeEnum *iPrivilege);
697 uuid(26ee67bf-5804-11d2-8b4a-00600806d9b6),
703 interface ISWbemPrivilegeSet : IDispatch
705 [ id(DISPID_NEWENUM), propget, restricted ]
707 [out, retval] IUnknown **pUnk);
711 [in] WbemPrivilegeEnum iPrivilege,
712 [out, retval] ISWbemPrivilege **objWbemPrivilege);
716 [out, retval] long *iCount);
720 [in] WbemPrivilegeEnum iPrivilege,
721 [in, defaultvalue(TRUE)] VARIANT_BOOL bIsEnabled,
722 [out, retval] ISWbemPrivilege **objWbemPrivilege);
726 [in] WbemPrivilegeEnum iPrivilege);
733 [in] BSTR strPrivilege,
734 [in, defaultvalue(TRUE)] VARIANT_BOOL bIsEnabled,
735 [out, retval] ISWbemPrivilege **objWbemPrivilege);
741 uuid(4a249b7b-fc9a-11d1-8b1e-00600806d9b6),
745 wbemCimtypeSint16 = 2,
746 wbemCimtypeSint32 = 3,
747 wbemCimtypeReal32 = 4,
748 wbemCimtypeReal64 = 5,
749 wbemCimtypeString = 8,
750 wbemCimtypeBoolean = 11,
751 wbemCimtypeObject = 13,
752 wbemCimtypeSint8 = 16,
753 wbemCimtypeUint8 = 17,
754 wbemCimtypeUint16 = 18,
755 wbemCimtypeUint32 = 19,
756 wbemCimtypeSint64 = 20,
757 wbemCimtypeUint64 = 21,
758 wbemCimtypeDatetime = 101,
759 wbemCimtypeReference = 102,
760 wbemCimtypeChar16 = 103
766 uuid(1a388f98-d4ba-11d1-8b09-00600806d9b6),
770 pointer_default(unique)
772 interface ISWbemProperty : IDispatch
774 [ id(DISPID_VALUE), propget ]
776 [out, retval] VARIANT *varValue);
778 [ id(DISPID_VALUE), propput ]
780 [in] VARIANT *varValue);
784 [out, retval] BSTR *strName);
788 [out, retval] VARIANT_BOOL *bIsLocal);
792 [out, retval] BSTR *strOrigin);
796 [out, retval] WbemCimtypeEnum *iCimType);
800 [out, retval] ISWbemQualifierSet **objWbemQualifierSet);
804 [out, retval] VARIANT_BOOL *bIsArray);
810 uuid(dea0a7b2-d4ba-11d1-8b09-00600806d9b6),
815 interface ISWbemPropertySet : IDispatch
817 [ id(DISPID_NEWENUM), propget, restricted ]
819 [out, retval] IUnknown **pUnk);
824 [in, defaultvalue(0)] long iFlags,
825 [out, retval] ISWbemProperty **objWbemProperty);
829 [out, retval] long *iCount);
834 [in] WbemCimtypeEnum iCIMType,
835 [in, defaultvalue(FALSE)] VARIANT_BOOL bIsArray,
836 [in, defaultvalue(0)] long iFlags,
837 [out, retval] ISWbemProperty **objWbemProperty);
842 [in, defaultvalue(0)] long iFlags);
848 uuid(79b05932-d3b7-11d1-8b06-00600806d9b6),
853 pointer_default(unique)
855 interface ISWbemQualifier : IDispatch
857 [ id(DISPID_VALUE), propget ]
859 [out, retval] VARIANT *varValue);
861 [ id(DISPID_VALUE), propput ]
863 [in] VARIANT *varValue);
867 [out, retval] BSTR *strName);
871 [out, retval] VARIANT_BOOL *bIsLocal);
874 HRESULT PropagatesToSubclass(
875 [out, retval] VARIANT_BOOL *bPropagatesToSubclass);
878 HRESULT PropagatesToSubclass(
879 [in] VARIANT_BOOL bPropagatesToSubclass);
882 HRESULT PropagatesToInstance(
883 [out, retval] VARIANT_BOOL *bPropagatesToInstance);
886 HRESULT PropagatesToInstance(
887 [in] VARIANT_BOOL bPropagatesToInstance);
890 HRESULT IsOverridable(
891 [out, retval] VARIANT_BOOL *bIsOverridable);
894 HRESULT IsOverridable(
895 [in] VARIANT_BOOL bIsOverridable);
899 [out, retval] VARIANT_BOOL *bIsAmended);
905 uuid(9b16ed16-d3df-11d1-8b08-00600806d9b6),
911 interface ISWbemQualifierSet : IDispatch
913 [ id(DISPID_NEWENUM), propget, restricted ]
915 [out, retval] IUnknown **pUnk);
920 [in, defaultvalue(0)] long iFlags,
921 [out, retval] ISWbemQualifier **objWbemQualifier);
925 [out, retval] long *iCount);
930 [in] VARIANT *varVal,
931 [in, defaultvalue(TRUE)] VARIANT_BOOL bPropagatesToSubclass,
932 [in, defaultvalue(TRUE)] VARIANT_BOOL bPropagatesToInstance,
933 [in, defaultvalue(TRUE)] VARIANT_BOOL bIsOverridable,
934 [in, defaultvalue(0)] long iFlags,
935 [out, retval] ISWbemQualifier **objWbemQualifier);
940 [in, defaultvalue(0)] long iFlags);
946 uuid(b54d66e8-2287-11d2-8b33-00600806d9b6)
948 enum WbemImpersonationLevelEnum
950 wbemImpersonationLevelAnonymous = 1,
951 wbemImpersonationLevelIdentify = 2,
952 wbemImpersonationLevelImpersonate = 3,
953 wbemImpersonationLevelDelegate = 4
954 } WbemImpersonationLevelEnum;
959 uuid(b54d66e7-2287-11d2-8b33-00600806d9b6)
961 enum WbemAuthenticationLevelEnum
963 wbemAuthenticationLevelDefault = 0,
964 wbemAuthenticationLevelNone = 1,
965 wbemAuthenticationLevelConnect = 2,
966 wbemAuthenticationLevelCall = 3,
967 wbemAuthenticationLevelPkt = 4,
968 wbemAuthenticationLevelPktIntegrity = 5,
969 wbemAuthenticationLevelPktPrivacy = 6
970 } WbemAuthenticationLevelEnum;
975 uuid(b54d66e6-2287-11d2-8b33-00600806d9b6),
981 interface ISWbemSecurity : IDispatch
984 HRESULT ImpersonationLevel(
985 [out, retval] WbemImpersonationLevelEnum *iImpersonationLevel);
988 HRESULT ImpersonationLevel(
989 [in] WbemImpersonationLevelEnum iImpersonationLevel);
992 HRESULT AuthenticationLevel(
993 [out, retval] WbemAuthenticationLevelEnum *iAuthenticationLevel);
996 HRESULT AuthenticationLevel(
997 [in] WbemAuthenticationLevelEnum iAuthenticationLevel);
1001 [out, retval] ISWbemPrivilegeSet **objWbemPrivilegeSet);
1007 uuid(76a6415c-cb41-11d1-8b02-00600806d9b6),
1011 pointer_default(unique)
1013 interface ISWbemServices : IDispatch
1017 [in, defaultvalue("")] BSTR strObjectPath,
1018 [in, defaultvalue(0)] long iFlags,
1019 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1020 [out, retval] ISWbemObject **objWbemObject);
1024 [in] IDispatch *objWbemSink,
1025 [in, defaultvalue("")] BSTR strObjectPath,
1026 [in, defaultvalue(0)] long iFlags,
1027 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1028 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1032 [in] BSTR strObjectPath,
1033 [in, defaultvalue(0)] long iFlags,
1034 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet);
1037 HRESULT DeleteAsync(
1038 [in] IDispatch *objWbemSink,
1039 [in] BSTR strObjectPath,
1040 [in, defaultvalue(0)] long iFlags,
1041 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1042 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1045 HRESULT InstancesOf(
1047 [in, defaultvalue(wbemFlagReturnImmediately)] long iFlags,
1048 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1049 [out, retval] ISWbemObjectSet **objWbemObjectSet);
1052 HRESULT InstancesOfAsync(
1053 [in] IDispatch *objWbemSink,
1055 [in, defaultvalue(0)] long iFlags,
1056 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1057 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1060 HRESULT SubclassesOf(
1061 [in, defaultvalue("")] BSTR strSuperclass,
1062 [in, defaultvalue(wbemFlagReturnImmediately|wbemQueryFlagDeep)] long iFlags,
1063 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1064 [out, retval] ISWbemObjectSet **objWbemObjectSet);
1067 HRESULT SubclassesOfAsync(
1068 [in] IDispatch *objWbemSink,
1069 [in, defaultvalue("")] BSTR strSuperclass,
1070 [in, defaultvalue(wbemQueryFlagDeep)] long iFlags,
1071 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1072 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1077 [in, defaultvalue("WQL")] BSTR strQueryLanguage,
1078 [in, defaultvalue(wbemFlagReturnImmediately)] long iFlags,
1079 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1080 [out, retval] ISWbemObjectSet **objWbemObjectSet);
1083 HRESULT ExecQueryAsync(
1084 [in] IDispatch *objWbemSink,
1086 [in, defaultvalue("WQL")] BSTR strQueryLanguage,
1087 [in, defaultvalue(0)] long lFlags,
1088 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1089 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1092 HRESULT AssociatorsOf(
1093 [in] BSTR strObjectPath,
1094 [in, defaultvalue("")] BSTR strAssocClass,
1095 [in, defaultvalue("")] BSTR strResultClass,
1096 [in, defaultvalue("")] BSTR strResultRole,
1097 [in, defaultvalue("")] BSTR strRole,
1098 [in, defaultvalue(FALSE)] VARIANT_BOOL bClassesOnly,
1099 [in, defaultvalue(FALSE)] VARIANT_BOOL bSchemaOnly,
1100 [in, defaultvalue("")] BSTR strRequiredAssocQualifier,
1101 [in, defaultvalue("")] BSTR strRequiredQualifier,
1102 [in, defaultvalue(wbemFlagReturnImmediately)] long iFlags,
1103 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1104 [out, retval] ISWbemObjectSet **objWbemObjectSet);
1107 HRESULT AssociatorsOfAsync(
1108 [in] IDispatch *objWbemSink,
1109 [in] BSTR strObjectPath,
1110 [in, defaultvalue("")] BSTR strAssocClass,
1111 [in, defaultvalue("")] BSTR strResultClass,
1112 [in, defaultvalue("")] BSTR strResultRole,
1113 [in, defaultvalue("")] BSTR strRole,
1114 [in, defaultvalue(FALSE)] VARIANT_BOOL bClassesOnly,
1115 [in, defaultvalue(FALSE)] VARIANT_BOOL bSchemaOnly,
1116 [in, defaultvalue("")] BSTR strRequiredAssocQualifier,
1117 [in, defaultvalue("")] BSTR strRequiredQualifier,
1118 [in, defaultvalue(0)] long iFlags,
1119 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1120 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1123 HRESULT ReferencesTo(
1124 [in] BSTR strObjectPath,
1125 [in, defaultvalue("")] BSTR strResultClass,
1126 [in, defaultvalue("")] BSTR strRole,
1127 [in, defaultvalue(FALSE)] VARIANT_BOOL bClassesOnly,
1128 [in, defaultvalue(FALSE)] VARIANT_BOOL bSchemaOnly,
1129 [in, defaultvalue("")] BSTR strRequiredQualifier,
1130 [in, defaultvalue(wbemFlagReturnImmediately)] long iFlags,
1131 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1132 [out, retval] ISWbemObjectSet **objWbemObjectSet);
1135 HRESULT ReferencesToAsync(
1136 [in] IDispatch *objWbemSink,
1137 [in] BSTR strObjectPath,
1138 [in, defaultvalue("")] BSTR strResultClass,
1139 [in, defaultvalue("")] BSTR strRole,
1140 [in, defaultvalue(FALSE)] VARIANT_BOOL bClassesOnly,
1141 [in, defaultvalue(FALSE)] VARIANT_BOOL bSchemaOnly,
1142 [in, defaultvalue("")] BSTR strRequiredQualifier,
1143 [in, defaultvalue(0)] long iFlags,
1144 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1145 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1148 HRESULT ExecNotificationQuery(
1150 [in, defaultvalue("WQL")] BSTR strQueryLanguage,
1151 [in, defaultvalue(wbemFlagReturnImmediately|wbemFlagForwardOnly)] long iFlags,
1152 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1153 [out, retval] ISWbemEventSource **objWbemEventSource);
1156 HRESULT ExecNotificationQueryAsync(
1157 [in] IDispatch *objWbemSink,
1159 [in, defaultvalue("WQL")] BSTR strQueryLanguage,
1160 [in, defaultvalue(0)] long iFlags,
1161 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1162 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1166 [in] BSTR strObjectPath,
1167 [in] BSTR strMethodName,
1168 [in, defaultvalue(0)] IDispatch *objWbemInParameters,
1169 [in, defaultvalue(0)] long iFlags,
1170 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1171 [out, retval] ISWbemObject **objWbemOutParameters);
1174 HRESULT ExecMethodAsync(
1175 [in] IDispatch *objWbemSink,
1176 [in] BSTR strObjectPath,
1177 [in] BSTR strMethodName,
1178 [in, defaultvalue(0)] IDispatch *objWbemInParameters,
1179 [in, defaultvalue(0)] long iFlags,
1180 [in, defaultvalue(0)] IDispatch *objWbemNamedValueSet,
1181 [in, defaultvalue(0)] IDispatch *objWbemAsyncContext);
1185 [out, retval] ISWbemSecurity **objWbemSecurity);
1189 threading(apartment),
1190 uuid(76a64158-cb41-11d1-8b02-00600806d9b6),
1191 progid("WbemScripting.SWbemLocator.1"),
1192 vi_progid("WbemScripting.SWbemLocator")
1194 coclass SWbemLocator
1196 interface ISWbemLocator;
1199 }; /* WbemScripting */