]> git.proxmox.com Git - rustc.git/blob - vendor/winapi/src/um/wbemdisp.rs
New upstream version 1.41.1+dfsg1
[rustc.git] / vendor / winapi / src / um / wbemdisp.rs
1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 use ctypes::c_long;
7 use shared::winerror::HRESULT;
8 use shared::wtypes::{BSTR, DATE, VARIANT_BOOL};
9 use um::oaidl::{DISPID, IDispatch, IDispatchVtbl, VARIANT};
10 use um::unknwnbase::IUnknown;
11 // extern RPC_IF_HANDLE __MIDL_itf_wbemdisp_0000_0000_v0_0_c_ifspec;
12 // extern RPC_IF_HANDLE __MIDL_itf_wbemdisp_0000_0000_v0_0_s_ifspec;
13 ENUM!{enum WbemChangeFlagEnum {
14 wbemChangeFlagCreateOrUpdate = 0,
15 wbemChangeFlagUpdateOnly = 0x1,
16 wbemChangeFlagCreateOnly = 0x2,
17 wbemChangeFlagUpdateCompatible = 0,
18 wbemChangeFlagUpdateSafeMode = 0x20,
19 wbemChangeFlagUpdateForceMode = 0x40,
20 wbemChangeFlagStrongValidation = 0x80,
21 wbemChangeFlagAdvisory = 0x10000,
22 }}
23 ENUM!{enum WbemFlagEnum {
24 wbemFlagReturnImmediately = 0x10,
25 wbemFlagReturnWhenComplete = 0,
26 wbemFlagBidirectional = 0,
27 wbemFlagForwardOnly = 0x20,
28 wbemFlagNoErrorObject = 0x40,
29 wbemFlagReturnErrorObject = 0,
30 wbemFlagSendStatus = 0x80,
31 wbemFlagDontSendStatus = 0,
32 wbemFlagEnsureLocatable = 0x100,
33 wbemFlagDirectRead = 0x200,
34 wbemFlagSendOnlySelected = 0,
35 wbemFlagUseAmendedQualifiers = 0x20000,
36 wbemFlagGetDefault = 0,
37 wbemFlagSpawnInstance = 0x1,
38 wbemFlagUseCurrentTime = 0x1,
39 }}
40 ENUM!{enum WbemQueryFlagEnum {
41 wbemQueryFlagDeep = 0,
42 wbemQueryFlagShallow = 1,
43 wbemQueryFlagPrototype = 2,
44 }}
45 ENUM!{enum WbemTextFlagEnum {
46 wbemTextFlagNoFlavors = 0x1,
47 }}
48 ENUM!{enum WbemTimeout {
49 wbemTimeoutInfinite = 0xffffffff,
50 }}
51 ENUM!{enum WbemComparisonFlagEnum {
52 wbemComparisonFlagIncludeAll = 0,
53 wbemComparisonFlagIgnoreQualifiers = 0x1,
54 wbemComparisonFlagIgnoreObjectSource = 0x2,
55 wbemComparisonFlagIgnoreDefaultValues = 0x4,
56 wbemComparisonFlagIgnoreClass = 0x8,
57 wbemComparisonFlagIgnoreCase = 0x10,
58 wbemComparisonFlagIgnoreFlavor = 0x20,
59 }}
60 ENUM!{enum WbemCimtypeEnum {
61 wbemCimtypeSint8 = 16,
62 wbemCimtypeUint8 = 17,
63 wbemCimtypeSint16 = 2,
64 wbemCimtypeUint16 = 18,
65 wbemCimtypeSint32 = 3,
66 wbemCimtypeUint32 = 19,
67 wbemCimtypeSint64 = 20,
68 wbemCimtypeUint64 = 21,
69 wbemCimtypeReal32 = 4,
70 wbemCimtypeReal64 = 5,
71 wbemCimtypeBoolean = 11,
72 wbemCimtypeString = 8,
73 wbemCimtypeDatetime = 101,
74 wbemCimtypeReference = 102,
75 wbemCimtypeChar16 = 103,
76 wbemCimtypeObject = 13,
77 }}
78 ENUM!{enum WbemErrorEnum {
79 wbemNoErr = 0,
80 wbemErrFailed = 0x80041001,
81 wbemErrNotFound = 0x80041002,
82 wbemErrAccessDenied = 0x80041003,
83 wbemErrProviderFailure = 0x80041004,
84 wbemErrTypeMismatch = 0x80041005,
85 wbemErrOutOfMemory = 0x80041006,
86 wbemErrInvalidContext = 0x80041007,
87 wbemErrInvalidParameter = 0x80041008,
88 wbemErrNotAvailable = 0x80041009,
89 wbemErrCriticalError = 0x8004100a,
90 wbemErrInvalidStream = 0x8004100b,
91 wbemErrNotSupported = 0x8004100c,
92 wbemErrInvalidSuperclass = 0x8004100d,
93 wbemErrInvalidNamespace = 0x8004100e,
94 wbemErrInvalidObject = 0x8004100f,
95 wbemErrInvalidClass = 0x80041010,
96 wbemErrProviderNotFound = 0x80041011,
97 wbemErrInvalidProviderRegistration = 0x80041012,
98 wbemErrProviderLoadFailure = 0x80041013,
99 wbemErrInitializationFailure = 0x80041014,
100 wbemErrTransportFailure = 0x80041015,
101 wbemErrInvalidOperation = 0x80041016,
102 wbemErrInvalidQuery = 0x80041017,
103 wbemErrInvalidQueryType = 0x80041018,
104 wbemErrAlreadyExists = 0x80041019,
105 wbemErrOverrideNotAllowed = 0x8004101a,
106 wbemErrPropagatedQualifier = 0x8004101b,
107 wbemErrPropagatedProperty = 0x8004101c,
108 wbemErrUnexpected = 0x8004101d,
109 wbemErrIllegalOperation = 0x8004101e,
110 wbemErrCannotBeKey = 0x8004101f,
111 wbemErrIncompleteClass = 0x80041020,
112 wbemErrInvalidSyntax = 0x80041021,
113 wbemErrNondecoratedObject = 0x80041022,
114 wbemErrReadOnly = 0x80041023,
115 wbemErrProviderNotCapable = 0x80041024,
116 wbemErrClassHasChildren = 0x80041025,
117 wbemErrClassHasInstances = 0x80041026,
118 wbemErrQueryNotImplemented = 0x80041027,
119 wbemErrIllegalNull = 0x80041028,
120 wbemErrInvalidQualifierType = 0x80041029,
121 wbemErrInvalidPropertyType = 0x8004102a,
122 wbemErrValueOutOfRange = 0x8004102b,
123 wbemErrCannotBeSingleton = 0x8004102c,
124 wbemErrInvalidCimType = 0x8004102d,
125 wbemErrInvalidMethod = 0x8004102e,
126 wbemErrInvalidMethodParameters = 0x8004102f,
127 wbemErrSystemProperty = 0x80041030,
128 wbemErrInvalidProperty = 0x80041031,
129 wbemErrCallCancelled = 0x80041032,
130 wbemErrShuttingDown = 0x80041033,
131 wbemErrPropagatedMethod = 0x80041034,
132 wbemErrUnsupportedParameter = 0x80041035,
133 wbemErrMissingParameter = 0x80041036,
134 wbemErrInvalidParameterId = 0x80041037,
135 wbemErrNonConsecutiveParameterIds = 0x80041038,
136 wbemErrParameterIdOnRetval = 0x80041039,
137 wbemErrInvalidObjectPath = 0x8004103a,
138 wbemErrOutOfDiskSpace = 0x8004103b,
139 wbemErrBufferTooSmall = 0x8004103c,
140 wbemErrUnsupportedPutExtension = 0x8004103d,
141 wbemErrUnknownObjectType = 0x8004103e,
142 wbemErrUnknownPacketType = 0x8004103f,
143 wbemErrMarshalVersionMismatch = 0x80041040,
144 wbemErrMarshalInvalidSignature = 0x80041041,
145 wbemErrInvalidQualifier = 0x80041042,
146 wbemErrInvalidDuplicateParameter = 0x80041043,
147 wbemErrTooMuchData = 0x80041044,
148 wbemErrServerTooBusy = 0x80041045,
149 wbemErrInvalidFlavor = 0x80041046,
150 wbemErrCircularReference = 0x80041047,
151 wbemErrUnsupportedClassUpdate = 0x80041048,
152 wbemErrCannotChangeKeyInheritance = 0x80041049,
153 wbemErrCannotChangeIndexInheritance = 0x80041050,
154 wbemErrTooManyProperties = 0x80041051,
155 wbemErrUpdateTypeMismatch = 0x80041052,
156 wbemErrUpdateOverrideNotAllowed = 0x80041053,
157 wbemErrUpdatePropagatedMethod = 0x80041054,
158 wbemErrMethodNotImplemented = 0x80041055,
159 wbemErrMethodDisabled = 0x80041056,
160 wbemErrRefresherBusy = 0x80041057,
161 wbemErrUnparsableQuery = 0x80041058,
162 wbemErrNotEventClass = 0x80041059,
163 wbemErrMissingGroupWithin = 0x8004105a,
164 wbemErrMissingAggregationList = 0x8004105b,
165 wbemErrPropertyNotAnObject = 0x8004105c,
166 wbemErrAggregatingByObject = 0x8004105d,
167 wbemErrUninterpretableProviderQuery = 0x8004105f,
168 wbemErrBackupRestoreWinmgmtRunning = 0x80041060,
169 wbemErrQueueOverflow = 0x80041061,
170 wbemErrPrivilegeNotHeld = 0x80041062,
171 wbemErrInvalidOperator = 0x80041063,
172 wbemErrLocalCredentials = 0x80041064,
173 wbemErrCannotBeAbstract = 0x80041065,
174 wbemErrAmendedObject = 0x80041066,
175 wbemErrClientTooSlow = 0x80041067,
176 wbemErrNullSecurityDescriptor = 0x80041068,
177 wbemErrTimeout = 0x80041069,
178 wbemErrInvalidAssociation = 0x8004106a,
179 wbemErrAmbiguousOperation = 0x8004106b,
180 wbemErrQuotaViolation = 0x8004106c,
181 wbemErrTransactionConflict = 0x8004106d,
182 wbemErrForcedRollback = 0x8004106e,
183 wbemErrUnsupportedLocale = 0x8004106f,
184 wbemErrHandleOutOfDate = 0x80041070,
185 wbemErrConnectionFailed = 0x80041071,
186 wbemErrInvalidHandleRequest = 0x80041072,
187 wbemErrPropertyNameTooWide = 0x80041073,
188 wbemErrClassNameTooWide = 0x80041074,
189 wbemErrMethodNameTooWide = 0x80041075,
190 wbemErrQualifierNameTooWide = 0x80041076,
191 wbemErrRerunCommand = 0x80041077,
192 wbemErrDatabaseVerMismatch = 0x80041078,
193 wbemErrVetoPut = 0x80041079,
194 wbemErrVetoDelete = 0x8004107a,
195 wbemErrInvalidLocale = 0x80041080,
196 wbemErrProviderSuspended = 0x80041081,
197 wbemErrSynchronizationRequired = 0x80041082,
198 wbemErrNoSchema = 0x80041083,
199 wbemErrProviderAlreadyRegistered = 0x80041084,
200 wbemErrProviderNotRegistered = 0x80041085,
201 wbemErrFatalTransportError = 0x80041086,
202 wbemErrEncryptedConnectionRequired = 0x80041087,
203 wbemErrRegistrationTooBroad = 0x80042001,
204 wbemErrRegistrationTooPrecise = 0x80042002,
205 wbemErrTimedout = 0x80043001,
206 wbemErrResetToDefault = 0x80043002,
207 }}
208 ENUM!{enum WbemAuthenticationLevelEnum {
209 wbemAuthenticationLevelDefault = 0,
210 wbemAuthenticationLevelNone = 1,
211 wbemAuthenticationLevelConnect = 2,
212 wbemAuthenticationLevelCall = 3,
213 wbemAuthenticationLevelPkt = 4,
214 wbemAuthenticationLevelPktIntegrity = 5,
215 wbemAuthenticationLevelPktPrivacy = 6,
216 }}
217 ENUM!{enum WbemImpersonationLevelEnum {
218 wbemImpersonationLevelAnonymous = 1,
219 wbemImpersonationLevelIdentify = 2,
220 wbemImpersonationLevelImpersonate = 3,
221 wbemImpersonationLevelDelegate = 4,
222 }}
223 ENUM!{enum WbemPrivilegeEnum {
224 wbemPrivilegeCreateToken = 1,
225 wbemPrivilegePrimaryToken = 2,
226 wbemPrivilegeLockMemory = 3,
227 wbemPrivilegeIncreaseQuota = 4,
228 wbemPrivilegeMachineAccount = 5,
229 wbemPrivilegeTcb = 6,
230 wbemPrivilegeSecurity = 7,
231 wbemPrivilegeTakeOwnership = 8,
232 wbemPrivilegeLoadDriver = 9,
233 wbemPrivilegeSystemProfile = 10,
234 wbemPrivilegeSystemtime = 11,
235 wbemPrivilegeProfileSingleProcess = 12,
236 wbemPrivilegeIncreaseBasePriority = 13,
237 wbemPrivilegeCreatePagefile = 14,
238 wbemPrivilegeCreatePermanent = 15,
239 wbemPrivilegeBackup = 16,
240 wbemPrivilegeRestore = 17,
241 wbemPrivilegeShutdown = 18,
242 wbemPrivilegeDebug = 19,
243 wbemPrivilegeAudit = 20,
244 wbemPrivilegeSystemEnvironment = 21,
245 wbemPrivilegeChangeNotify = 22,
246 wbemPrivilegeRemoteShutdown = 23,
247 wbemPrivilegeUndock = 24,
248 wbemPrivilegeSyncAgent = 25,
249 wbemPrivilegeEnableDelegation = 26,
250 wbemPrivilegeManageVolume = 27,
251 }}
252 ENUM!{enum WbemObjectTextFormatEnum {
253 wbemObjectTextFormatCIMDTD20 = 1,
254 wbemObjectTextFormatWMIDTD20 = 2,
255 }}
256 ENUM!{enum WbemConnectOptionsEnum {
257 wbemConnectFlagUseMaxWait = 0x80,
258 }}
259 // EXTERN_C const IID LIBID_WbemScripting;
260 // EXTERN_C const IID IID_ISWbemServices;
261 DEFINE_GUID!{IID_ISWbemServices,
262 0x76a6415c, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
263 RIDL!{#[uuid(0x76a6415c, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
264 interface ISWbemServices(ISWbemServicesVtbl): IDispatch(IDispatchVtbl) {
265 fn Get(
266 strObjectPath: BSTR,
267 iFlags: c_long,
268 objWbemNamedValueSet: *mut IDispatch,
269 objWbemObject: *mut *mut ISWbemObject,
270 ) -> HRESULT,
271 fn GetAsync(
272 objWbemSink: *mut IDispatch,
273 strObjectPath: BSTR,
274 iFlags: c_long,
275 objWbemNamedValueSet: *mut IDispatch,
276 objWbemAsyncContext: *mut IDispatch,
277 ) -> HRESULT,
278 fn Delete(
279 strObjectPath: BSTR,
280 iFlags: c_long,
281 objWbemNamedValueSet: *mut IDispatch,
282 ) -> HRESULT,
283 fn DeleteAsync(
284 objWbemSink: *mut IDispatch,
285 strObjectPath: BSTR,
286 iFlags: c_long,
287 objWbemNamedValueSet: *mut IDispatch,
288 objWbemAsyncContext: *mut IDispatch,
289 ) -> HRESULT,
290 fn InstancesOf(
291 strClass: BSTR,
292 iFlags: c_long,
293 objWbemNamedValueSet: *mut IDispatch,
294 objWbemObjectSet: *mut *mut ISWbemObjectSet,
295 ) -> HRESULT,
296 fn InstancesOfAsync(
297 objWbemSink: *mut IDispatch,
298 strClass: BSTR,
299 iFlags: c_long,
300 objWbemNamedValueSet: *mut IDispatch,
301 objWbemAsyncContext: *mut IDispatch,
302 ) -> HRESULT,
303 fn SubclassesOf(
304 strSuperclass: BSTR,
305 iFlags: c_long,
306 objWbemNamedValueSet: *mut IDispatch,
307 objWbemObjectSet: *mut *mut ISWbemObjectSet,
308 ) -> HRESULT,
309 fn SubclassesOfAsync(
310 objWbemSink: *mut IDispatch,
311 strSuperclass: BSTR,
312 iFlags: c_long,
313 objWbemNamedValueSet: *mut IDispatch,
314 objWbemAsyncContext: *mut IDispatch,
315 ) -> HRESULT,
316 fn ExecQuery(
317 strQuery: BSTR,
318 strQueryLanguage: BSTR,
319 iFlags: c_long,
320 objWbemNamedValueSet: *mut IDispatch,
321 objWbemObjectSet: *mut *mut ISWbemObjectSet,
322 ) -> HRESULT,
323 fn ExecQueryAsync(
324 objWbemSink: *mut IDispatch,
325 strQuery: BSTR,
326 strQueryLanguage: BSTR,
327 lFlags: c_long,
328 objWbemNamedValueSet: *mut IDispatch,
329 objWbemAsyncContext: *mut IDispatch,
330 ) -> HRESULT,
331 fn AssociatorsOf(
332 strObjectPath: BSTR,
333 strAssocClass: BSTR,
334 strResultClass: BSTR,
335 strResultRole: BSTR,
336 strRole: BSTR,
337 bClassesOnly: VARIANT_BOOL,
338 bSchemaOnly: VARIANT_BOOL,
339 strRequiredAssocQualifier: BSTR,
340 strRequiredQualifier: BSTR,
341 iFlags: c_long,
342 objWbemNamedValueSet: *mut IDispatch,
343 objWbemObjectSet: *mut *mut ISWbemObjectSet,
344 ) -> HRESULT,
345 fn AssociatorsOfAsync(
346 objWbemSink: *mut IDispatch,
347 strObjectPath: BSTR,
348 strAssocClass: BSTR,
349 strResultClass: BSTR,
350 strResultRole: BSTR,
351 strRole: BSTR,
352 bClassesOnly: VARIANT_BOOL,
353 bSchemaOnly: VARIANT_BOOL,
354 strRequiredAssocQualifier: BSTR,
355 strRequiredQualifier: BSTR,
356 iFlags: c_long,
357 objWbemNamedValueSet: *mut IDispatch,
358 objWbemAsyncContext: *mut IDispatch,
359 ) -> HRESULT,
360 fn ReferencesTo(
361 strObjectPath: BSTR,
362 strResultClass: BSTR,
363 strRole: BSTR,
364 bClassesOnly: VARIANT_BOOL,
365 bSchemaOnly: VARIANT_BOOL,
366 strRequiredQualifier: BSTR,
367 iFlags: c_long,
368 objWbemNamedValueSet: *mut IDispatch,
369 objWbemObjectSet: *mut *mut ISWbemObjectSet,
370 ) -> HRESULT,
371 fn ReferencesToAsync(
372 objWbemSink: *mut IDispatch,
373 strObjectPath: BSTR,
374 strResultClass: BSTR,
375 strRole: BSTR,
376 bClassesOnly: VARIANT_BOOL,
377 bSchemaOnly: VARIANT_BOOL,
378 strRequiredQualifier: BSTR,
379 iFlags: c_long,
380 objWbemNamedValueSet: *mut IDispatch,
381 objWbemAsyncContext: *mut IDispatch,
382 ) -> HRESULT,
383 fn ExecNotificationQuery(
384 strQuery: BSTR,
385 strQueryLanguage: BSTR,
386 iFlags: c_long,
387 objWbemNamedValueSet: *mut IDispatch,
388 objWbemEventSource: *mut *mut ISWbemEventSource,
389 ) -> HRESULT,
390 fn ExecNotificationQueryAsync(
391 objWbemSink: *mut IDispatch,
392 strQuery: BSTR,
393 strQueryLanguage: BSTR,
394 iFlags: c_long,
395 objWbemNamedValueSet: *mut IDispatch,
396 objWbemAsyncContext: *mut IDispatch,
397 ) -> HRESULT,
398 fn ExecMethod(
399 strObjectPath: BSTR,
400 strMethodName: BSTR,
401 objWbemInParameters: *mut IDispatch,
402 iFlags: c_long,
403 objWbemNamedValueSet: *mut IDispatch,
404 objWbemOutParameters: *mut *mut ISWbemObject,
405 ) -> HRESULT,
406 fn ExecMethodAsync(
407 objWbemSink: *mut IDispatch,
408 strObjectPath: BSTR,
409 strMethodName: BSTR,
410 objWbemInParameters: *mut IDispatch,
411 iFlags: c_long,
412 objWbemNamedValueSet: *mut IDispatch,
413 objWbemAsyncContext: *mut IDispatch,
414 ) -> HRESULT,
415 fn get_Security_(
416 objWbemSecurity: *mut *mut ISWbemSecurity,
417 ) -> HRESULT,
418 }}
419 // EXTERN_C const IID IID_ISWbemLocator;
420 DEFINE_GUID!{IID_ISWbemLocator,
421 0x76a6415b, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
422 RIDL!{#[uuid(0x76a6415b, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
423 interface ISWbemLocator(ISWbemLocatorVtbl): IDispatch(IDispatchVtbl) {
424 fn ConnectServer(
425 strServer: BSTR,
426 strNamespace: BSTR,
427 strUser: BSTR,
428 strPassword: BSTR,
429 strLocale: BSTR,
430 strAuthority: BSTR,
431 iSecurityFlags: c_long,
432 objWbemNamedValueSet: *mut IDispatch,
433 objWbemServices: *mut *mut ISWbemServices,
434 ) -> HRESULT,
435 fn get_Security_(
436 objWbemSecurity: *mut *mut ISWbemSecurity,
437 ) -> HRESULT,
438 }}
439 pub const WBEMS_DISPID_DERIVATION: DISPID = 23;
440 // EXTERN_C const IID IID_ISWbemObject;
441 DEFINE_GUID!{IID_ISWbemObject,
442 0x76a6415a, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
443 RIDL!{#[uuid(0x76a6415a, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
444 interface ISWbemObject(ISWbemObjectVtbl): IDispatch(IDispatchVtbl) {
445 fn Put_(
446 iFlags: c_long,
447 objWbemNamedValueSet: *mut IDispatch,
448 objWbemObjectPath: *mut *mut ISWbemObjectPath,
449 ) -> HRESULT,
450 fn PutAsync_(
451 objWbemSink: *mut IDispatch,
452 iFlags: c_long,
453 objWbemNamedValueSet: *mut IDispatch,
454 objWbemAsyncContext: *mut IDispatch,
455 ) -> HRESULT,
456 fn Delete_(
457 iFlags: c_long,
458 objWbemNamedValueSet: *mut IDispatch,
459 ) -> HRESULT,
460 fn DeleteAsync_(
461 objWbemSink: *mut IDispatch,
462 iFlags: c_long,
463 objWbemNamedValueSet: *mut IDispatch,
464 objWbemAsyncContext: *mut IDispatch,
465 ) -> HRESULT,
466 fn Instances_(
467 iFlags: c_long,
468 objWbemNamedValueSet: *mut IDispatch,
469 objWbemObjectSet: *mut *mut ISWbemObjectSet,
470 ) -> HRESULT,
471 fn InstancesAsync_(
472 objWbemSink: *mut IDispatch,
473 iFlags: c_long,
474 objWbemNamedValueSet: *mut IDispatch,
475 objWbemAsyncContext: *mut IDispatch,
476 ) -> HRESULT,
477 fn Subclasses_(
478 iFlags: c_long,
479 objWbemNamedValueSet: *mut IDispatch,
480 objWbemObjectSet: *mut *mut ISWbemObjectSet,
481 ) -> HRESULT,
482 fn SubclassesAsync_(
483 objWbemSink: *mut IDispatch,
484 iFlags: c_long,
485 objWbemNamedValueSet: *mut IDispatch,
486 objWbemAsyncContext: *mut IDispatch,
487 ) -> HRESULT,
488 fn Associators_(
489 strAssocClass: BSTR,
490 strResultClass: BSTR,
491 strResultRole: BSTR,
492 strRole: BSTR,
493 bClassesOnly: VARIANT_BOOL,
494 bSchemaOnly: VARIANT_BOOL,
495 strRequiredAssocQualifier: BSTR,
496 strRequiredQualifier: BSTR,
497 iFlags: c_long,
498 objWbemNamedValueSet: *mut IDispatch,
499 objWbemObjectSet: *mut *mut ISWbemObjectSet,
500 ) -> HRESULT,
501 fn AssociatorsAsync_(
502 objWbemSink: *mut IDispatch,
503 strAssocClass: BSTR,
504 strResultClass: BSTR,
505 strResultRole: BSTR,
506 strRole: BSTR,
507 bClassesOnly: VARIANT_BOOL,
508 bSchemaOnly: VARIANT_BOOL,
509 strRequiredAssocQualifier: BSTR,
510 strRequiredQualifier: BSTR,
511 iFlags: c_long,
512 objWbemNamedValueSet: *mut IDispatch,
513 objWbemAsyncContext: *mut IDispatch,
514 ) -> HRESULT,
515 fn References_(
516 strResultClass: BSTR,
517 strRole: BSTR,
518 bClassesOnly: VARIANT_BOOL,
519 bSchemaOnly: VARIANT_BOOL,
520 strRequiredQualifier: BSTR,
521 iFlags: c_long,
522 objWbemNamedValueSet: *mut IDispatch,
523 objWbemObjectSet: *mut *mut ISWbemObjectSet,
524 ) -> HRESULT,
525 fn ReferencesAsync_(
526 objWbemSink: *mut IDispatch,
527 strResultClass: BSTR,
528 strRole: BSTR,
529 bClassesOnly: VARIANT_BOOL,
530 bSchemaOnly: VARIANT_BOOL,
531 strRequiredQualifier: BSTR,
532 iFlags: c_long,
533 objWbemNamedValueSet: *mut IDispatch,
534 objWbemAsyncContext: *mut IDispatch,
535 ) -> HRESULT,
536 fn ExecMethod_(
537 strMethodName: BSTR,
538 objWbemInParameters: *mut IDispatch,
539 iFlags: c_long,
540 objWbemNamedValueSet: *mut IDispatch,
541 objWbemOutParameters: *mut *mut ISWbemObject,
542 ) -> HRESULT,
543 fn ExecMethodAsync_(
544 objWbemSink: *mut IDispatch,
545 strMethodName: BSTR,
546 objWbemInParameters: *mut IDispatch,
547 iFlags: c_long,
548 objWbemNamedValueSet: *mut IDispatch,
549 objWbemAsyncContext: *mut IDispatch,
550 ) -> HRESULT,
551 fn Clone_(
552 objWbemObject: *mut *mut ISWbemObject,
553 ) -> HRESULT,
554 fn GetObjectText_(
555 iFlags: c_long,
556 strObjectText: *mut BSTR,
557 ) -> HRESULT,
558 fn SpawnDerivedClass_(
559 iFlags: c_long,
560 objWbemObject: *mut *mut ISWbemObject,
561 ) -> HRESULT,
562 fn SpawnInstance_(
563 iFlags: c_long,
564 objWbemObject: *mut *mut ISWbemObject,
565 ) -> HRESULT,
566 fn CompareTo_(
567 objWbemObject: *mut IDispatch,
568 iFlags: c_long,
569 bResult: *mut VARIANT_BOOL,
570 ) -> HRESULT,
571 fn get_Qualifiers_(
572 objWbemQualifierSet: *mut *mut ISWbemQualifierSet,
573 ) -> HRESULT,
574 fn get_Properties_(
575 objWbemPropertySet: *mut *mut ISWbemPropertySet,
576 ) -> HRESULT,
577 fn get_Methods_(
578 objWbemMethodSet: *mut *mut ISWbemMethodSet,
579 ) -> HRESULT,
580 fn get_Derivation_(
581 strClassNameArray: *mut VARIANT,
582 ) -> HRESULT,
583 fn get_Path_(
584 objWbemObjectPath: *mut *mut ISWbemObjectPath,
585 ) -> HRESULT,
586 fn get_Security_(
587 objWbemSecurity: *mut *mut ISWbemSecurity,
588 ) -> HRESULT,
589 }}
590 // EXTERN_C const IID IID_ISWbemObjectSet;
591 DEFINE_GUID!{IID_ISWbemObjectSet,
592 0x76a6415f, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
593 RIDL!{#[uuid(0x76a6415f, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
594 interface ISWbemObjectSet(ISWbemObjectSetVtbl): IDispatch(IDispatchVtbl) {
595 fn get__NewEnum(
596 pUnk: *mut *mut IUnknown,
597 ) -> HRESULT,
598 fn Item(
599 strObjectPath: BSTR,
600 iFlags: c_long,
601 objWbemObject: *mut *mut ISWbemObject,
602 ) -> HRESULT,
603 fn get_Count(
604 iCount: *mut c_long,
605 ) -> HRESULT,
606 fn get_Security_(
607 objWbemSecurity: *mut *mut ISWbemSecurity,
608 ) -> HRESULT,
609 fn ItemIndex(
610 lIndex: c_long,
611 objWbemObject: *mut *mut ISWbemObject,
612 ) -> HRESULT,
613 }}
614 // EXTERN_C const IID IID_ISWbemNamedValue;
615 DEFINE_GUID!{IID_ISWbemNamedValue,
616 0x76a64164, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
617 RIDL!{#[uuid(0x76a64164, 0xcb41, 0x11d1, 0x8b, 0x02, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
618 interface ISWbemNamedValue(ISWbemNamedValueVtbl): IDispatch(IDispatchVtbl) {
619 fn get_Value(
620 varValue: *mut VARIANT,
621 ) -> HRESULT,
622 fn put_Value(
623 varValue: *mut VARIANT,
624 ) -> HRESULT,
625 fn get_Name(
626 strName: *mut BSTR,
627 ) -> HRESULT,
628 }}
629 // EXTERN_C const IID IID_ISWbemNamedValueSet;
630 DEFINE_GUID!{IID_ISWbemNamedValueSet,
631 0xcf2376ea, 0xce8c, 0x11d1, 0x8b, 0x05, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
632 RIDL!{#[uuid(0xcf2376ea, 0xce8c, 0x11d1, 0x8b, 0x05, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
633 interface ISWbemNamedValueSet(ISWbemNamedValueSetVtbl): IDispatch(IDispatchVtbl) {
634 fn get__NewEnum(
635 pUnk: *mut *mut IUnknown,
636 ) -> HRESULT,
637 fn Item(
638 strName: BSTR,
639 iFlags: c_long,
640 objWbemNamedValue: *mut *mut ISWbemNamedValue,
641 ) -> HRESULT,
642 fn get_Count(
643 iCount: *mut c_long,
644 ) -> HRESULT,
645 fn Add(
646 strName: BSTR,
647 varValue: *mut VARIANT,
648 iFlags: c_long,
649 objWbemNamedValue: *mut *mut ISWbemNamedValue,
650 ) -> HRESULT,
651 fn Remove(
652 strName: BSTR,
653 iFlags: c_long,
654 ) -> HRESULT,
655 fn Clone(
656 objWbemNamedValueSet: *mut *mut ISWbemNamedValueSet,
657 ) -> HRESULT,
658 fn DeleteAll() -> HRESULT,
659 }}
660 // EXTERN_C const IID IID_ISWbemQualifier;
661 DEFINE_GUID!{IID_ISWbemQualifier,
662 0x79b05932, 0xd3b7, 0x11d1, 0x8b, 0x06, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
663 RIDL!{#[uuid(0x79b05932, 0xd3b7, 0x11d1, 0x8b, 0x06, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
664 interface ISWbemQualifier(ISWbemQualifierVtbl): IDispatch(IDispatchVtbl) {
665 fn get_Value(
666 varValue: *mut VARIANT,
667 ) -> HRESULT,
668 fn put_Value(
669 varValue: *mut VARIANT,
670 ) -> HRESULT,
671 fn get_Name(
672 strName: *mut BSTR,
673 ) -> HRESULT,
674 fn get_IsLocal(
675 bIsLocal: *mut VARIANT_BOOL,
676 ) -> HRESULT,
677 fn get_PropagatesToSubclass(
678 bPropagatesToSubclass: *mut VARIANT_BOOL,
679 ) -> HRESULT,
680 fn put_PropagatesToSubclass(
681 bPropagatesToSubclass: VARIANT_BOOL,
682 ) -> HRESULT,
683 fn get_PropagatesToInstance(
684 bPropagatesToInstance: *mut VARIANT_BOOL,
685 ) -> HRESULT,
686 fn put_PropagatesToInstance(
687 bPropagatesToInstance: VARIANT_BOOL,
688 ) -> HRESULT,
689 fn get_IsOverridable(
690 bIsOverridable: *mut VARIANT_BOOL,
691 ) -> HRESULT,
692 fn put_IsOverridable(
693 bIsOverridable: VARIANT_BOOL,
694 ) -> HRESULT,
695 fn get_IsAmended(
696 bIsAmended: *mut VARIANT_BOOL,
697 ) -> HRESULT,
698 }}
699 // EXTERN_C const IID IID_ISWbemQualifierSet;
700 DEFINE_GUID!{IID_ISWbemQualifierSet,
701 0x9b16ed16, 0xd3df, 0x11d1, 0x8b, 0x08, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
702 RIDL!{#[uuid(0x9b16ed16, 0xd3df, 0x11d1, 0x8b, 0x08, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
703 interface ISWbemQualifierSet(ISWbemQualifierSetVtbl): IDispatch(IDispatchVtbl) {
704 fn get__NewEnum(
705 pUnk: *mut *mut IUnknown,
706 ) -> HRESULT,
707 fn Item(
708 name: BSTR,
709 iFlags: c_long,
710 objWbemQualifier: *mut *mut ISWbemQualifier,
711 ) -> HRESULT,
712 fn get_Count(
713 iCount: *mut c_long,
714 ) -> HRESULT,
715 fn Add(
716 strName: BSTR,
717 varVal: *mut VARIANT,
718 bPropagatesToSubclass: VARIANT_BOOL,
719 bPropagatesToInstance: VARIANT_BOOL,
720 bIsOverridable: VARIANT_BOOL,
721 iFlags: c_long,
722 objWbemQualifier: *mut *mut ISWbemQualifier,
723 ) -> HRESULT,
724 fn Remove(
725 strName: BSTR,
726 iFlags: c_long,
727 ) -> HRESULT,
728 }}
729 // EXTERN_C const IID IID_ISWbemProperty;
730 DEFINE_GUID!{IID_ISWbemProperty,
731 0x1a388f98, 0xd4ba, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
732 RIDL!{#[uuid(0x1a388f98, 0xd4ba, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
733 interface ISWbemProperty(ISWbemPropertyVtbl): IDispatch(IDispatchVtbl) {
734 fn get_Value(
735 varValue: *mut VARIANT,
736 ) -> HRESULT,
737 fn put_Value(
738 varValue: *mut VARIANT,
739 ) -> HRESULT,
740 fn get_Name(
741 strName: *mut BSTR,
742 ) -> HRESULT,
743 fn get_IsLocal(
744 bIsLocal: *mut VARIANT_BOOL,
745 ) -> HRESULT,
746 fn get_Origin(
747 strOrigin: *mut BSTR,
748 ) -> HRESULT,
749 fn get_CIMType(
750 iCimType: *mut WbemCimtypeEnum,
751 ) -> HRESULT,
752 fn get_Qualifiers_(
753 objWbemQualifierSet: *mut *mut ISWbemQualifierSet,
754 ) -> HRESULT,
755 fn get_IsArray(
756 bIsArray: *mut VARIANT_BOOL,
757 ) -> HRESULT,
758 }}
759 // EXTERN_C const IID IID_ISWbemPropertySet;
760 DEFINE_GUID!{IID_ISWbemPropertySet,
761 0xdea0a7b2, 0xd4ba, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
762 RIDL!{#[uuid(0xdea0a7b2, 0xd4ba, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
763 interface ISWbemPropertySet(ISWbemPropertySetVtbl): IDispatch(IDispatchVtbl) {
764 fn get__NewEnum(
765 pUnk: *mut *mut IUnknown,
766 ) -> HRESULT,
767 fn Item(
768 strName: BSTR,
769 iFlags: c_long,
770 objWbemProperty: *mut *mut ISWbemProperty,
771 ) -> HRESULT,
772 fn get_Count(
773 iCount: *mut c_long,
774 ) -> HRESULT,
775 fn Add(
776 strName: BSTR,
777 iCIMType: WbemCimtypeEnum,
778 bIsArray: VARIANT_BOOL,
779 iFlags: c_long,
780 objWbemProperty: *mut *mut ISWbemProperty,
781 ) -> HRESULT,
782 fn Remove(
783 strName: BSTR,
784 iFlags: c_long,
785 ) -> HRESULT,
786 }}
787 // EXTERN_C const IID IID_ISWbemMethod;
788 DEFINE_GUID!{IID_ISWbemMethod,
789 0x422e8e90, 0xd955, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
790 RIDL!{#[uuid(0x422e8e90, 0xd955, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
791 interface ISWbemMethod(ISWbemMethodVtbl): IDispatch(IDispatchVtbl) {
792 fn get_Name(
793 strName: *mut BSTR,
794 ) -> HRESULT,
795 fn get_Origin(
796 strOrigin: *mut BSTR,
797 ) -> HRESULT,
798 fn get_InParameters(
799 objWbemInParameters: *mut *mut ISWbemObject,
800 ) -> HRESULT,
801 fn get_OutParameters(
802 objWbemOutParameters: *mut *mut ISWbemObject,
803 ) -> HRESULT,
804 fn get_Qualifiers_(
805 objWbemQualifierSet: *mut *mut ISWbemQualifierSet,
806 ) -> HRESULT,
807 }}
808 // EXTERN_C const IID IID_ISWbemMethodSet;
809 DEFINE_GUID!{IID_ISWbemMethodSet,
810 0xc93ba292, 0xd955, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
811 RIDL!{#[uuid(0xc93ba292, 0xd955, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
812 interface ISWbemMethodSet(ISWbemMethodSetVtbl): IDispatch(IDispatchVtbl) {
813 fn get__NewEnum(
814 pUnk: *mut *mut IUnknown,
815 ) -> HRESULT,
816 fn Item(
817 strName: BSTR,
818 iFlags: c_long,
819 objWbemMethod: *mut *mut ISWbemMethod,
820 ) -> HRESULT,
821 fn get_Count(
822 iCount: *mut c_long,
823 ) -> HRESULT,
824 }}
825 // EXTERN_C const IID IID_ISWbemEventSource;
826 DEFINE_GUID!{IID_ISWbemEventSource,
827 0x27d54d92, 0x0ebe, 0x11d2, 0x8b, 0x22, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
828 RIDL!{#[uuid(0x27d54d92, 0x0ebe, 0x11d2, 0x8b, 0x22, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
829 interface ISWbemEventSource(ISWbemEventSourceVtbl): IDispatch(IDispatchVtbl) {
830 fn NextEvent(
831 iTimeoutMs: c_long,
832 objWbemObject: *mut *mut ISWbemObject,
833 ) -> HRESULT,
834 fn get_Security_(
835 objWbemSecurity: *mut *mut ISWbemSecurity,
836 ) -> HRESULT,
837 }}
838 // EXTERN_C const IID IID_ISWbemObjectPath;
839 DEFINE_GUID!{IID_ISWbemObjectPath,
840 0x5791bc27, 0xce9c, 0x11d1, 0x97, 0xbf, 0x00, 0x00, 0xf8, 0x1e, 0x84, 0x9c}
841 RIDL!{#[uuid(0x5791bc27, 0xce9c, 0x11d1, 0x97, 0xbf, 0x00, 0x00, 0xf8, 0x1e, 0x84, 0x9c)]
842 interface ISWbemObjectPath(ISWbemObjectPathVtbl): IDispatch(IDispatchVtbl) {
843 fn get_Path(
844 strPath: *mut BSTR,
845 ) -> HRESULT,
846 fn put_Path(
847 strPath: BSTR,
848 ) -> HRESULT,
849 fn get_RelPath(
850 strRelPath: *mut BSTR,
851 ) -> HRESULT,
852 fn put_RelPath(
853 strRelPath: BSTR,
854 ) -> HRESULT,
855 fn get_Server(
856 strServer: *mut BSTR,
857 ) -> HRESULT,
858 fn put_Server(
859 strServer: BSTR,
860 ) -> HRESULT,
861 fn get_Namespace(
862 strNamespace: *mut BSTR,
863 ) -> HRESULT,
864 fn put_Namespace(
865 strNamespace: BSTR,
866 ) -> HRESULT,
867 fn get_ParentNamespace(
868 strParentNamespace: *mut BSTR,
869 ) -> HRESULT,
870 fn get_DisplayName(
871 strDisplayName: *mut BSTR,
872 ) -> HRESULT,
873 fn put_DisplayName(
874 strDisplayName: BSTR,
875 ) -> HRESULT,
876 fn get_Class(
877 strClass: *mut BSTR,
878 ) -> HRESULT,
879 fn put_Class(
880 strClass: BSTR,
881 ) -> HRESULT,
882 fn get_IsClass(
883 bIsClass: *mut VARIANT_BOOL,
884 ) -> HRESULT,
885 fn SetAsClass() -> HRESULT,
886 fn get_IsSingleton(
887 bIsSingleton: *mut VARIANT_BOOL,
888 ) -> HRESULT,
889 fn SetAsSingleton() -> HRESULT,
890 fn get_Keys(
891 objWbemNamedValueSet: *mut *mut ISWbemNamedValueSet,
892 ) -> HRESULT,
893 fn get_Security_(
894 objWbemSecurity: *mut *mut ISWbemSecurity,
895 ) -> HRESULT,
896 fn get_Locale(
897 strLocale: *mut BSTR,
898 ) -> HRESULT,
899 fn put_Locale(
900 strLocale: BSTR,
901 ) -> HRESULT,
902 fn get_Authority(
903 strAuthority: *mut BSTR,
904 ) -> HRESULT,
905 fn put_Authority(
906 strAuthority: BSTR,
907 ) -> HRESULT,
908 }}
909 // EXTERN_C const IID IID_ISWbemLastError;
910 DEFINE_GUID!{IID_ISWbemLastError,
911 0xd962db84, 0xd4bb, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
912 RIDL!{#[uuid(0xd962db84, 0xd4bb, 0x11d1, 0x8b, 0x09, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
913 interface ISWbemLastError(ISWbemLastErrorVtbl): ISWbemObject(ISWbemObjectVtbl) {}}
914 // EXTERN_C const IID DIID_ISWbemSinkEvents;
915 DEFINE_GUID!{IID_ISWbemSinkEvents,
916 0x75718ca0, 0xf029, 0x11d1, 0xa1, 0xac, 0x00, 0xc0, 0x4f, 0xb6, 0xc2, 0x23}
917 RIDL!{#[uuid(0x75718ca0, 0xf029, 0x11d1, 0xa1, 0xac, 0x00, 0xc0, 0x4f, 0xb6, 0xc2, 0x23)]
918 interface ISWbemSinkEvents(ISWbemSinkEventsVtbl): IDispatch(IDispatchVtbl) {}}
919 // EXTERN_C const IID IID_ISWbemSink;
920 DEFINE_GUID!{IID_ISWbemSink,
921 0x75718c9f, 0xf029, 0x11d1, 0xa1, 0xac, 0x00, 0xc0, 0x4f, 0xb6, 0xc2, 0x23}
922 RIDL!{#[uuid(0x75718c9f, 0xf029, 0x11d1, 0xa1, 0xac, 0x00, 0xc0, 0x4f, 0xb6, 0xc2, 0x23)]
923 interface ISWbemSink(ISWbemSinkVtbl): IDispatch(IDispatchVtbl) {
924 fn Cancel() -> HRESULT,
925 }}
926 // EXTERN_C const IID IID_ISWbemSecurity;
927 DEFINE_GUID!{IID_ISWbemSecurity,
928 0xb54d66e6, 0x2287, 0x11d2, 0x8b, 0x33, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
929 RIDL!{#[uuid(0xb54d66e6, 0x2287, 0x11d2, 0x8b, 0x33, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
930 interface ISWbemSecurity(ISWbemSecurityVtbl): IDispatch(IDispatchVtbl) {
931 fn get_ImpersonationLevel(
932 iImpersonationLevel: *mut WbemImpersonationLevelEnum,
933 ) -> HRESULT,
934 fn put_ImpersonationLevel(
935 iImpersonationLevel: WbemImpersonationLevelEnum,
936 ) -> HRESULT,
937 fn get_AuthenticationLevel(
938 iAuthenticationLevel: *mut WbemAuthenticationLevelEnum,
939 ) -> HRESULT,
940 fn put_AuthenticationLevel(
941 iAuthenticationLevel: WbemAuthenticationLevelEnum,
942 ) -> HRESULT,
943 fn get_Privileges(
944 objWbemPrivilegeSet: *mut *mut ISWbemPrivilegeSet,
945 ) -> HRESULT,
946 }}
947 // EXTERN_C const IID IID_ISWbemPrivilege;
948 DEFINE_GUID!{IID_ISWbemPrivilege,
949 0x26ee67bd, 0x5804, 0x11d2, 0x8b, 0x4a, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
950 RIDL!{#[uuid(0x26ee67bd, 0x5804, 0x11d2, 0x8b, 0x4a, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
951 interface ISWbemPrivilege(ISWbemPrivilegeVtbl): IDispatch(IDispatchVtbl) {
952 fn get_IsEnabled(
953 bIsEnabled: *mut VARIANT_BOOL,
954 ) -> HRESULT,
955 fn put_IsEnabled(
956 bIsEnabled: VARIANT_BOOL,
957 ) -> HRESULT,
958 fn get_Name(
959 strDisplayName: *mut BSTR,
960 ) -> HRESULT,
961 fn get_DisplayName(
962 strDisplayName: *mut BSTR,
963 ) -> HRESULT,
964 fn get_Identifier(
965 iPrivilege: *mut WbemPrivilegeEnum,
966 ) -> HRESULT,
967 }}
968 // EXTERN_C const IID IID_ISWbemPrivilegeSet;
969 DEFINE_GUID!{IID_ISWbemPrivilegeSet,
970 0x26ee67bf, 0x5804, 0x11d2, 0x8b, 0x4a, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6}
971 RIDL!{#[uuid(0x26ee67bf, 0x5804, 0x11d2, 0x8b, 0x4a, 0x00, 0x60, 0x08, 0x06, 0xd9, 0xb6)]
972 interface ISWbemPrivilegeSet(ISWbemPrivilegeSetVtbl): IDispatch(IDispatchVtbl) {
973 fn get__NewEnum(
974 pUnk: *mut *mut IUnknown,
975 ) -> HRESULT,
976 fn Item(
977 iPrivilege: WbemPrivilegeEnum,
978 objWbemPrivilege: *mut *mut ISWbemPrivilege,
979 ) -> HRESULT,
980 fn get_Count(
981 iCount: *mut c_long,
982 ) -> HRESULT,
983 fn Add(
984 iPrivilege: WbemPrivilegeEnum,
985 bIsEnabled: VARIANT_BOOL,
986 objWbemPrivilege: *mut *mut ISWbemPrivilege,
987 ) -> HRESULT,
988 fn Remove(
989 iPrivilege: WbemPrivilegeEnum,
990 ) -> HRESULT,
991 fn DeleteAll() -> HRESULT,
992 fn AddAsString(
993 strPrivilege: BSTR,
994 bIsEnabled: VARIANT_BOOL,
995 objWbemPrivilege: *mut *mut ISWbemPrivilege,
996 ) -> HRESULT,
997 }}
998 // EXTERN_C const IID IID_ISWbemServicesEx;
999 DEFINE_GUID!{IID_ISWbemServicesEx,
1000 0xd2f68443, 0x85dc, 0x427e, 0x91, 0xd8, 0x36, 0x65, 0x54, 0xcc, 0x75, 0x4c}
1001 RIDL!{#[uuid(0xd2f68443, 0x85dc, 0x427e, 0x91, 0xd8, 0x36, 0x65, 0x54, 0xcc, 0x75, 0x4c)]
1002 interface ISWbemServicesEx(ISWbemServicesExVtbl): ISWbemServices(ISWbemServicesVtbl) {
1003 fn Put(
1004 objWbemObject: *mut ISWbemObjectEx,
1005 iFlags: c_long,
1006 objWbemNamedValueSet: *mut IDispatch,
1007 objWbemObjectPath: *mut *mut ISWbemObjectPath,
1008 ) -> HRESULT,
1009 fn PutAsync(
1010 objWbemSink: *mut ISWbemSink,
1011 objWbemObject: *mut ISWbemObjectEx,
1012 iFlags: c_long,
1013 objWbemNamedValueSet: *mut IDispatch,
1014 objWbemAsyncContext: *mut IDispatch,
1015 ) -> HRESULT,
1016 }}
1017 // EXTERN_C const IID IID_ISWbemObjectEx;
1018 DEFINE_GUID!{IID_ISWbemObjectEx,
1019 0x269ad56a, 0x8a67, 0x4129, 0xbc, 0x8c, 0x05, 0x06, 0xdc, 0xfe, 0x98, 0x80}
1020 RIDL!{#[uuid(0x269ad56a, 0x8a67, 0x4129, 0xbc, 0x8c, 0x05, 0x06, 0xdc, 0xfe, 0x98, 0x80)]
1021 interface ISWbemObjectEx(ISWbemObjectExVtbl): ISWbemObject(ISWbemObjectVtbl) {
1022 fn Refresh_(
1023 iFlags: c_long,
1024 objWbemNamedValueSet: *mut IDispatch,
1025 ) -> HRESULT,
1026 fn get_SystemProperties_(
1027 objWbemPropertySet: *mut *mut ISWbemPropertySet,
1028 ) -> HRESULT,
1029 fn GetText_(
1030 iObjectTextFormat: WbemObjectTextFormatEnum,
1031 iFlags: c_long,
1032 objWbemNamedValueSet: *mut IDispatch,
1033 bsText: *mut BSTR,
1034 ) -> HRESULT,
1035 fn SetFromText_(
1036 bsText: BSTR,
1037 iObjectTextFormat: WbemObjectTextFormatEnum,
1038 iFlags: c_long,
1039 objWbemNamedValueSet: *mut IDispatch,
1040 ) -> HRESULT,
1041 }}
1042 // EXTERN_C const IID IID_ISWbemDateTime;
1043 DEFINE_GUID!{IID_ISWbemDateTime,
1044 0x5e97458a, 0xcf77, 0x11d3, 0xb3, 0x8f, 0x00, 0x10, 0x5a, 0x1f, 0x47, 0x3a}
1045 RIDL!{#[uuid(0x5e97458a, 0xcf77, 0x11d3, 0xb3, 0x8f, 0x00, 0x10, 0x5a, 0x1f, 0x47, 0x3a)]
1046 interface ISWbemDateTime(ISWbemDateTimeVtbl): IDispatch(IDispatchVtbl) {
1047 fn get_Value(
1048 strValue: *mut BSTR,
1049 ) -> HRESULT,
1050 fn put_Value(
1051 strValue: BSTR,
1052 ) -> HRESULT,
1053 fn get_Year(
1054 iYear: *mut c_long,
1055 ) -> HRESULT,
1056 fn put_Year(
1057 iYear: c_long,
1058 ) -> HRESULT,
1059 fn get_YearSpecified(
1060 bYearSpecified: *mut VARIANT_BOOL,
1061 ) -> HRESULT,
1062 fn put_YearSpecified(
1063 bYearSpecified: VARIANT_BOOL,
1064 ) -> HRESULT,
1065 fn get_Month(
1066 iMonth: *mut c_long,
1067 ) -> HRESULT,
1068 fn put_Month(
1069 iMonth: c_long,
1070 ) -> HRESULT,
1071 fn get_MonthSpecified(
1072 bMonthSpecified: *mut VARIANT_BOOL,
1073 ) -> HRESULT,
1074 fn put_MonthSpecified(
1075 bMonthSpecified: VARIANT_BOOL,
1076 ) -> HRESULT,
1077 fn get_Day(
1078 iDay: *mut c_long,
1079 ) -> HRESULT,
1080 fn put_Day(
1081 iDay: c_long,
1082 ) -> HRESULT,
1083 fn get_DaySpecified(
1084 bDaySpecified: *mut VARIANT_BOOL,
1085 ) -> HRESULT,
1086 fn put_DaySpecified(
1087 bDaySpecified: VARIANT_BOOL,
1088 ) -> HRESULT,
1089 fn get_Hours(
1090 iHours: *mut c_long,
1091 ) -> HRESULT,
1092 fn put_Hours(
1093 iHours: c_long,
1094 ) -> HRESULT,
1095 fn get_HoursSpecified(
1096 bHoursSpecified: *mut VARIANT_BOOL,
1097 ) -> HRESULT,
1098 fn put_HoursSpecified(
1099 bHoursSpecified: VARIANT_BOOL,
1100 ) -> HRESULT,
1101 fn get_Minutes(
1102 iMinutes: *mut c_long,
1103 ) -> HRESULT,
1104 fn put_Minutes(
1105 iMinutes: c_long,
1106 ) -> HRESULT,
1107 fn get_MinutesSpecified(
1108 bMinutesSpecified: *mut VARIANT_BOOL,
1109 ) -> HRESULT,
1110 fn put_MinutesSpecified(
1111 bMinutesSpecified: VARIANT_BOOL,
1112 ) -> HRESULT,
1113 fn get_Seconds(
1114 iSeconds: *mut c_long,
1115 ) -> HRESULT,
1116 fn put_Seconds(
1117 iSeconds: c_long,
1118 ) -> HRESULT,
1119 fn get_SecondsSpecified(
1120 bSecondsSpecified: *mut VARIANT_BOOL,
1121 ) -> HRESULT,
1122 fn put_SecondsSpecified(
1123 bSecondsSpecified: VARIANT_BOOL,
1124 ) -> HRESULT,
1125 fn get_Microseconds(
1126 iMicroseconds: *mut c_long,
1127 ) -> HRESULT,
1128 fn put_Microseconds(
1129 iMicroseconds: c_long,
1130 ) -> HRESULT,
1131 fn get_MicrosecondsSpecified(
1132 bMicrosecondsSpecified: *mut VARIANT_BOOL,
1133 ) -> HRESULT,
1134 fn put_MicrosecondsSpecified(
1135 bMicrosecondsSpecified: VARIANT_BOOL,
1136 ) -> HRESULT,
1137 fn get_UTC(
1138 iUTC: *mut c_long,
1139 ) -> HRESULT,
1140 fn put_UTC(
1141 iUTC: c_long,
1142 ) -> HRESULT,
1143 fn get_UTCSpecified(
1144 bUTCSpecified: *mut VARIANT_BOOL,
1145 ) -> HRESULT,
1146 fn put_UTCSpecified(
1147 bUTCSpecified: VARIANT_BOOL,
1148 ) -> HRESULT,
1149 fn get_IsInterval(
1150 bIsInterval: *mut VARIANT_BOOL,
1151 ) -> HRESULT,
1152 fn put_IsInterval(
1153 bIsInterval: VARIANT_BOOL,
1154 ) -> HRESULT,
1155 fn GetVarDate(
1156 bIsLocal: VARIANT_BOOL,
1157 dVarDate: *mut DATE,
1158 ) -> HRESULT,
1159 fn SetVarDate(
1160 dVarDate: DATE,
1161 bIsLocal: VARIANT_BOOL,
1162 ) -> HRESULT,
1163 fn GetFileTime(
1164 bIsLocal: VARIANT_BOOL,
1165 strFileTime: *mut BSTR,
1166 ) -> HRESULT,
1167 fn SetFileTime(
1168 strFileTime: BSTR,
1169 bIsLocal: VARIANT_BOOL,
1170 ) -> HRESULT,
1171 }}
1172 // EXTERN_C const IID IID_ISWbemRefresher;
1173 DEFINE_GUID!{IID_ISWbemRefresher,
1174 0x14d8250e, 0xd9c2, 0x11d3, 0xb3, 0x8f, 0x00, 0x10, 0x5a, 0x1f, 0x47, 0x3a}
1175 RIDL!{#[uuid(0x14d8250e, 0xd9c2, 0x11d3, 0xb3, 0x8f, 0x00, 0x10, 0x5a, 0x1f, 0x47, 0x3a)]
1176 interface ISWbemRefresher(ISWbemRefresherVtbl): IDispatch(IDispatchVtbl) {
1177 fn get__NewEnum(
1178 pUnk: *mut *mut IUnknown,
1179 ) -> HRESULT,
1180 fn Item(
1181 iIndex: c_long,
1182 objWbemRefreshableItem: *mut *mut ISWbemRefreshableItem,
1183 ) -> HRESULT,
1184 fn get_Count(
1185 iCount: *mut c_long,
1186 ) -> HRESULT,
1187 fn Add(
1188 objWbemServices: *mut ISWbemServicesEx,
1189 bsInstancePath: BSTR,
1190 iFlags: c_long,
1191 objWbemNamedValueSet: *mut IDispatch,
1192 objWbemRefreshableItem: *mut *mut ISWbemRefreshableItem,
1193 ) -> HRESULT,
1194 fn AddEnum(
1195 objWbemServices: *mut ISWbemServicesEx,
1196 bsClassName: BSTR,
1197 iFlags: c_long,
1198 objWbemNamedValueSet: *mut IDispatch,
1199 objWbemRefreshableItem: *mut *mut ISWbemRefreshableItem,
1200 ) -> HRESULT,
1201 fn Remove(
1202 iIndex: c_long,
1203 iFlags: c_long,
1204 ) -> HRESULT,
1205 fn Refresh(
1206 iFlags: c_long,
1207 ) -> HRESULT,
1208 fn get_AutoReconnect(
1209 bCount: *mut VARIANT_BOOL,
1210 ) -> HRESULT,
1211 fn put_AutoReconnect(
1212 bCount: VARIANT_BOOL,
1213 ) -> HRESULT,
1214 fn DeleteAll() -> HRESULT,
1215 }}
1216 // EXTERN_C const IID IID_ISWbemRefreshableItem;
1217 DEFINE_GUID!{IID_ISWbemRefreshableItem,
1218 0x5ad4bf92, 0xdaab, 0x11d3, 0xb3, 0x8f, 0x00, 0x10, 0x5a, 0x1f, 0x47, 0x3a}
1219 RIDL!{#[uuid(0x5ad4bf92, 0xdaab, 0x11d3, 0xb3, 0x8f, 0x00, 0x10, 0x5a, 0x1f, 0x47, 0x3a)]
1220 interface ISWbemRefreshableItem(ISWbemRefreshableItemVtbl): IDispatch(IDispatchVtbl) {
1221 fn get_Index(
1222 iIndex: *mut c_long,
1223 ) -> HRESULT,
1224 fn get_Refresher(
1225 objWbemRefresher: *mut *mut ISWbemRefresher,
1226 ) -> HRESULT,
1227 fn get_IsSet(
1228 bIsSet: *mut VARIANT_BOOL,
1229 ) -> HRESULT,
1230 fn get_Object(
1231 objWbemObject: *mut *mut ISWbemObjectEx,
1232 ) -> HRESULT,
1233 fn get_ObjectSet(
1234 objWbemObjectSet: *mut *mut ISWbemObjectSet,
1235 ) -> HRESULT,
1236 fn Remove(
1237 iFlags: c_long,
1238 ) -> HRESULT,
1239 }}
1240 DEFINE_GUID!{CLSID_SWbemLocator,
1241 0x76A64158, 0xCB41, 0x11d1, 0x8B, 0x02, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1242 // class DECLSPEC_UUID("76A64158-CB41-11d1-8B02-00600806D9B6")
1243 // SWbemLocator;
1244 DEFINE_GUID!{CLSID_SWbemNamedValueSet,
1245 0x9AED384E, 0xCE8B, 0x11d1, 0x8B, 0x05, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1246 // class DECLSPEC_UUID("9AED384E-CE8B-11d1-8B05-00600806D9B6")
1247 // SWbemNamedValueSet;
1248 DEFINE_GUID!{CLSID_SWbemObjectPath,
1249 0x5791BC26, 0xCE9C, 0x11d1, 0x97, 0xBF, 0x00, 0x00, 0xF8, 0x1E, 0x84, 0x9C}
1250 // class DECLSPEC_UUID("5791BC26-CE9C-11d1-97BF-0000F81E849C")
1251 // SWbemObjectPath;
1252 DEFINE_GUID!{CLSID_SWbemLastError,
1253 0xC2FEEEAC, 0xCFCD, 0x11d1, 0x8B, 0x05, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1254 // class DECLSPEC_UUID("C2FEEEAC-CFCD-11d1-8B05-00600806D9B6")
1255 // SWbemLastError;
1256 DEFINE_GUID!{CLSID_SWbemSink,
1257 0x75718C9A, 0xF029, 0x11d1, 0xA1, 0xAC, 0x00, 0xC0, 0x4F, 0xB6, 0xC2, 0x23}
1258 // class DECLSPEC_UUID("75718C9A-F029-11d1-A1AC-00C04FB6C223")
1259 // SWbemSink;
1260 DEFINE_GUID!{CLSID_SWbemDateTime,
1261 0x47DFBE54, 0xCF76, 0x11d3, 0xB3, 0x8F, 0x00, 0x10, 0x5A, 0x1F, 0x47, 0x3A}
1262 // class DECLSPEC_UUID("47DFBE54-CF76-11d3-B38F-00105A1F473A")
1263 // SWbemDateTime;
1264 DEFINE_GUID!{CLSID_SWbemRefresher,
1265 0xD269BF5C, 0xD9C1, 0x11d3, 0xB3, 0x8F, 0x00, 0x10, 0x5A, 0x1F, 0x47, 0x3A}
1266 // class DECLSPEC_UUID("D269BF5C-D9C1-11d3-B38F-00105A1F473A")
1267 // SWbemRefresher;
1268 DEFINE_GUID!{CLSID_SWbemServices,
1269 0x04B83D63, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1270 // class DECLSPEC_UUID("04B83D63-21AE-11d2-8B33-00600806D9B6")
1271 // SWbemServices;
1272 DEFINE_GUID!{CLSID_SWbemServicesEx,
1273 0x62E522DC, 0x8CF3, 0x40a8, 0x8B, 0x2E, 0x37, 0xD5, 0x95, 0x65, 0x1E, 0x40}
1274 // class DECLSPEC_UUID("62E522DC-8CF3-40a8-8B2E-37D595651E40")
1275 // SWbemServicesEx;
1276 DEFINE_GUID!{CLSID_SWbemObject,
1277 0x04B83D62, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1278 // class DECLSPEC_UUID("04B83D62-21AE-11d2-8B33-00600806D9B6")
1279 // SWbemObject;
1280 DEFINE_GUID!{CLSID_SWbemObjectEx,
1281 0xD6BDAFB2, 0x9435, 0x491f, 0xBB, 0x87, 0x6A, 0xA0, 0xF0, 0xBC, 0x31, 0xA2}
1282 // class DECLSPEC_UUID("D6BDAFB2-9435-491f-BB87-6AA0F0BC31A2")
1283 // SWbemObjectEx;
1284 DEFINE_GUID!{CLSID_SWbemObjectSet,
1285 0x04B83D61, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1286 // class DECLSPEC_UUID("04B83D61-21AE-11d2-8B33-00600806D9B6")
1287 // SWbemObjectSet;
1288 DEFINE_GUID!{CLSID_SWbemNamedValue,
1289 0x04B83D60, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1290 // class DECLSPEC_UUID("04B83D60-21AE-11d2-8B33-00600806D9B6")
1291 // SWbemNamedValue;
1292 DEFINE_GUID!{CLSID_SWbemQualifier,
1293 0x04B83D5F, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1294 // class DECLSPEC_UUID("04B83D5F-21AE-11d2-8B33-00600806D9B6")
1295 // SWbemQualifier;
1296 DEFINE_GUID!{CLSID_SWbemQualifierSet,
1297 0x04B83D5E, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1298 // class DECLSPEC_UUID("04B83D5E-21AE-11d2-8B33-00600806D9B6")
1299 // SWbemQualifierSet;
1300 DEFINE_GUID!{CLSID_SWbemProperty,
1301 0x04B83D5D, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1302 // class DECLSPEC_UUID("04B83D5D-21AE-11d2-8B33-00600806D9B6")
1303 // SWbemProperty;
1304 DEFINE_GUID!{CLSID_SWbemPropertySet,
1305 0x04B83D5C, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1306 // class DECLSPEC_UUID("04B83D5C-21AE-11d2-8B33-00600806D9B6")
1307 // SWbemPropertySet;
1308 DEFINE_GUID!{CLSID_SWbemMethod,
1309 0x04B83D5B, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1310 // class DECLSPEC_UUID("04B83D5B-21AE-11d2-8B33-00600806D9B6")
1311 // SWbemMethod;
1312 DEFINE_GUID!{CLSID_SWbemMethodSet,
1313 0x04B83D5A, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1314 // class DECLSPEC_UUID("04B83D5A-21AE-11d2-8B33-00600806D9B6")
1315 // SWbemMethodSet;
1316 DEFINE_GUID!{CLSID_SWbemEventSource,
1317 0x04B83D58, 0x21AE, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1318 // class DECLSPEC_UUID("04B83D58-21AE-11d2-8B33-00600806D9B6")
1319 // SWbemEventSource;
1320 DEFINE_GUID!{CLSID_SWbemSecurity,
1321 0xB54D66E9, 0x2287, 0x11d2, 0x8B, 0x33, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1322 // class DECLSPEC_UUID("B54D66E9-2287-11d2-8B33-00600806D9B6")
1323 // SWbemSecurity;
1324 DEFINE_GUID!{CLSID_SWbemPrivilege,
1325 0x26EE67BC, 0x5804, 0x11d2, 0x8B, 0x4A, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1326 // class DECLSPEC_UUID("26EE67BC-5804-11d2-8B4A-00600806D9B6")
1327 // SWbemPrivilege;
1328 DEFINE_GUID!{CLSID_SWbemPrivilegeSet,
1329 0x26EE67BE, 0x5804, 0x11d2, 0x8B, 0x4A, 0x00, 0x60, 0x08, 0x06, 0xD9, 0xB6}
1330 // class DECLSPEC_UUID("26EE67BE-5804-11d2-8B4A-00600806D9B6")
1331 // SWbemPrivilegeSet;
1332 DEFINE_GUID!{CLSID_SWbemRefreshableItem,
1333 0x8C6854BC, 0xDE4B, 0x11d3, 0xB3, 0x90, 0x00, 0x10, 0x5A, 0x1F, 0x47, 0x3A}
1334 // class DECLSPEC_UUID("8C6854BC-DE4B-11d3-B390-00105A1F473A")
1335 // SWbemRefreshableItem;
1336 pub const WBEMS_DISPID_OBJECT_READY: DISPID = 1;
1337 pub const WBEMS_DISPID_COMPLETED: DISPID = 2;
1338 pub const WBEMS_DISPID_PROGRESS: DISPID = 3;
1339 pub const WBEMS_DISPID_OBJECT_PUT: DISPID = 4;
1340 pub const WBEMS_DISPID_CONNECTION_READY: DISPID = 5;
1341 // extern RPC_IF_HANDLE __MIDL_itf_wbemdisp_0000_0018_v0_0_c_ifspec;
1342 // extern RPC_IF_HANDLE __MIDL_itf_wbemdisp_0000_0018_v0_0_s_ifspec;
1343 // extern RPC_IF_HANDLE __MIDL_itf_wbemdisp_0000_0026_v0_0_c_ifspec;
1344 // extern RPC_IF_HANDLE __MIDL_itf_wbemdisp_0000_0026_v0_0_s_ifspec;