1 /*** Autogenerated by WIDL 1.6 from include/wbemdisp.idl - Do not edit ***/
2 
3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
5 #endif
6 
7 #include <rpc.h>
8 #include <rpcndr.h>
9 
10 #ifndef COM_NO_WINDOWS_H
11 #include <windows.h>
12 #include <ole2.h>
13 #endif
14 
15 #ifndef __wbemdisp_h__
16 #define __wbemdisp_h__
17 
18 /* Forward declarations */
19 
20 #ifndef __SWbemLocator_FWD_DEFINED__
21 #define __SWbemLocator_FWD_DEFINED__
22 #ifdef __cplusplus
23 typedef class SWbemLocator SWbemLocator;
24 #else
25 typedef struct SWbemLocator SWbemLocator;
26 #endif /* defined __cplusplus */
27 #endif /* defined __SWbemLocator_FWD_DEFINED__ */
28 
29 #ifndef __SWbemNamedValueSet_FWD_DEFINED__
30 #define __SWbemNamedValueSet_FWD_DEFINED__
31 #ifdef __cplusplus
32 typedef class SWbemNamedValueSet SWbemNamedValueSet;
33 #else
34 typedef struct SWbemNamedValueSet SWbemNamedValueSet;
35 #endif /* defined __cplusplus */
36 #endif /* defined __SWbemNamedValueSet_FWD_DEFINED__ */
37 
38 #ifndef __SWbemObjectPath_FWD_DEFINED__
39 #define __SWbemObjectPath_FWD_DEFINED__
40 #ifdef __cplusplus
41 typedef class SWbemObjectPath SWbemObjectPath;
42 #else
43 typedef struct SWbemObjectPath SWbemObjectPath;
44 #endif /* defined __cplusplus */
45 #endif /* defined __SWbemObjectPath_FWD_DEFINED__ */
46 
47 #ifndef __SWbemLastError_FWD_DEFINED__
48 #define __SWbemLastError_FWD_DEFINED__
49 #ifdef __cplusplus
50 typedef class SWbemLastError SWbemLastError;
51 #else
52 typedef struct SWbemLastError SWbemLastError;
53 #endif /* defined __cplusplus */
54 #endif /* defined __SWbemLastError_FWD_DEFINED__ */
55 
56 #ifndef __SWbemSink_FWD_DEFINED__
57 #define __SWbemSink_FWD_DEFINED__
58 #ifdef __cplusplus
59 typedef class SWbemSink SWbemSink;
60 #else
61 typedef struct SWbemSink SWbemSink;
62 #endif /* defined __cplusplus */
63 #endif /* defined __SWbemSink_FWD_DEFINED__ */
64 
65 #ifndef __SWbemDateTime_FWD_DEFINED__
66 #define __SWbemDateTime_FWD_DEFINED__
67 #ifdef __cplusplus
68 typedef class SWbemDateTime SWbemDateTime;
69 #else
70 typedef struct SWbemDateTime SWbemDateTime;
71 #endif /* defined __cplusplus */
72 #endif /* defined __SWbemDateTime_FWD_DEFINED__ */
73 
74 #ifndef __SWbemRefresher_FWD_DEFINED__
75 #define __SWbemRefresher_FWD_DEFINED__
76 #ifdef __cplusplus
77 typedef class SWbemRefresher SWbemRefresher;
78 #else
79 typedef struct SWbemRefresher SWbemRefresher;
80 #endif /* defined __cplusplus */
81 #endif /* defined __SWbemRefresher_FWD_DEFINED__ */
82 
83 #ifndef __SWbemServices_FWD_DEFINED__
84 #define __SWbemServices_FWD_DEFINED__
85 #ifdef __cplusplus
86 typedef class SWbemServices SWbemServices;
87 #else
88 typedef struct SWbemServices SWbemServices;
89 #endif /* defined __cplusplus */
90 #endif /* defined __SWbemServices_FWD_DEFINED__ */
91 
92 #ifndef __SWbemServicesEx_FWD_DEFINED__
93 #define __SWbemServicesEx_FWD_DEFINED__
94 #ifdef __cplusplus
95 typedef class SWbemServicesEx SWbemServicesEx;
96 #else
97 typedef struct SWbemServicesEx SWbemServicesEx;
98 #endif /* defined __cplusplus */
99 #endif /* defined __SWbemServicesEx_FWD_DEFINED__ */
100 
101 #ifndef __SWbemObject_FWD_DEFINED__
102 #define __SWbemObject_FWD_DEFINED__
103 #ifdef __cplusplus
104 typedef class SWbemObject SWbemObject;
105 #else
106 typedef struct SWbemObject SWbemObject;
107 #endif /* defined __cplusplus */
108 #endif /* defined __SWbemObject_FWD_DEFINED__ */
109 
110 #ifndef __SWbemObjectEx_FWD_DEFINED__
111 #define __SWbemObjectEx_FWD_DEFINED__
112 #ifdef __cplusplus
113 typedef class SWbemObjectEx SWbemObjectEx;
114 #else
115 typedef struct SWbemObjectEx SWbemObjectEx;
116 #endif /* defined __cplusplus */
117 #endif /* defined __SWbemObjectEx_FWD_DEFINED__ */
118 
119 #ifndef __SWbemObjectSet_FWD_DEFINED__
120 #define __SWbemObjectSet_FWD_DEFINED__
121 #ifdef __cplusplus
122 typedef class SWbemObjectSet SWbemObjectSet;
123 #else
124 typedef struct SWbemObjectSet SWbemObjectSet;
125 #endif /* defined __cplusplus */
126 #endif /* defined __SWbemObjectSet_FWD_DEFINED__ */
127 
128 #ifndef __SWbemNamedValue_FWD_DEFINED__
129 #define __SWbemNamedValue_FWD_DEFINED__
130 #ifdef __cplusplus
131 typedef class SWbemNamedValue SWbemNamedValue;
132 #else
133 typedef struct SWbemNamedValue SWbemNamedValue;
134 #endif /* defined __cplusplus */
135 #endif /* defined __SWbemNamedValue_FWD_DEFINED__ */
136 
137 #ifndef __SWbemQualifier_FWD_DEFINED__
138 #define __SWbemQualifier_FWD_DEFINED__
139 #ifdef __cplusplus
140 typedef class SWbemQualifier SWbemQualifier;
141 #else
142 typedef struct SWbemQualifier SWbemQualifier;
143 #endif /* defined __cplusplus */
144 #endif /* defined __SWbemQualifier_FWD_DEFINED__ */
145 
146 #ifndef __SWbemQualifierSet_FWD_DEFINED__
147 #define __SWbemQualifierSet_FWD_DEFINED__
148 #ifdef __cplusplus
149 typedef class SWbemQualifierSet SWbemQualifierSet;
150 #else
151 typedef struct SWbemQualifierSet SWbemQualifierSet;
152 #endif /* defined __cplusplus */
153 #endif /* defined __SWbemQualifierSet_FWD_DEFINED__ */
154 
155 #ifndef __SWbemProperty_FWD_DEFINED__
156 #define __SWbemProperty_FWD_DEFINED__
157 #ifdef __cplusplus
158 typedef class SWbemProperty SWbemProperty;
159 #else
160 typedef struct SWbemProperty SWbemProperty;
161 #endif /* defined __cplusplus */
162 #endif /* defined __SWbemProperty_FWD_DEFINED__ */
163 
164 #ifndef __SWbemPropertySet_FWD_DEFINED__
165 #define __SWbemPropertySet_FWD_DEFINED__
166 #ifdef __cplusplus
167 typedef class SWbemPropertySet SWbemPropertySet;
168 #else
169 typedef struct SWbemPropertySet SWbemPropertySet;
170 #endif /* defined __cplusplus */
171 #endif /* defined __SWbemPropertySet_FWD_DEFINED__ */
172 
173 #ifndef __SWbemMethod_FWD_DEFINED__
174 #define __SWbemMethod_FWD_DEFINED__
175 #ifdef __cplusplus
176 typedef class SWbemMethod SWbemMethod;
177 #else
178 typedef struct SWbemMethod SWbemMethod;
179 #endif /* defined __cplusplus */
180 #endif /* defined __SWbemMethod_FWD_DEFINED__ */
181 
182 #ifndef __SWbemMethodSet_FWD_DEFINED__
183 #define __SWbemMethodSet_FWD_DEFINED__
184 #ifdef __cplusplus
185 typedef class SWbemMethodSet SWbemMethodSet;
186 #else
187 typedef struct SWbemMethodSet SWbemMethodSet;
188 #endif /* defined __cplusplus */
189 #endif /* defined __SWbemMethodSet_FWD_DEFINED__ */
190 
191 #ifndef __SWbemEventSource_FWD_DEFINED__
192 #define __SWbemEventSource_FWD_DEFINED__
193 #ifdef __cplusplus
194 typedef class SWbemEventSource SWbemEventSource;
195 #else
196 typedef struct SWbemEventSource SWbemEventSource;
197 #endif /* defined __cplusplus */
198 #endif /* defined __SWbemEventSource_FWD_DEFINED__ */
199 
200 #ifndef __SWbemSecurity_FWD_DEFINED__
201 #define __SWbemSecurity_FWD_DEFINED__
202 #ifdef __cplusplus
203 typedef class SWbemSecurity SWbemSecurity;
204 #else
205 typedef struct SWbemSecurity SWbemSecurity;
206 #endif /* defined __cplusplus */
207 #endif /* defined __SWbemSecurity_FWD_DEFINED__ */
208 
209 #ifndef __SWbemPrivilege_FWD_DEFINED__
210 #define __SWbemPrivilege_FWD_DEFINED__
211 #ifdef __cplusplus
212 typedef class SWbemPrivilege SWbemPrivilege;
213 #else
214 typedef struct SWbemPrivilege SWbemPrivilege;
215 #endif /* defined __cplusplus */
216 #endif /* defined __SWbemPrivilege_FWD_DEFINED__ */
217 
218 #ifndef __SWbemPrivilegeSet_FWD_DEFINED__
219 #define __SWbemPrivilegeSet_FWD_DEFINED__
220 #ifdef __cplusplus
221 typedef class SWbemPrivilegeSet SWbemPrivilegeSet;
222 #else
223 typedef struct SWbemPrivilegeSet SWbemPrivilegeSet;
224 #endif /* defined __cplusplus */
225 #endif /* defined __SWbemPrivilegeSet_FWD_DEFINED__ */
226 
227 #ifndef __SWbemRefreshableItem_FWD_DEFINED__
228 #define __SWbemRefreshableItem_FWD_DEFINED__
229 #ifdef __cplusplus
230 typedef class SWbemRefreshableItem SWbemRefreshableItem;
231 #else
232 typedef struct SWbemRefreshableItem SWbemRefreshableItem;
233 #endif /* defined __cplusplus */
234 #endif /* defined __SWbemRefreshableItem_FWD_DEFINED__ */
235 
236 #ifndef __ISWbemLocator_FWD_DEFINED__
237 #define __ISWbemLocator_FWD_DEFINED__
238 typedef interface ISWbemLocator ISWbemLocator;
239 #endif
240 
241 #ifndef __ISWbemServices_FWD_DEFINED__
242 #define __ISWbemServices_FWD_DEFINED__
243 typedef interface ISWbemServices ISWbemServices;
244 #endif
245 
246 #ifndef __ISWbemServicesEx_FWD_DEFINED__
247 #define __ISWbemServicesEx_FWD_DEFINED__
248 typedef interface ISWbemServicesEx ISWbemServicesEx;
249 #endif
250 
251 #ifndef __ISWbemObject_FWD_DEFINED__
252 #define __ISWbemObject_FWD_DEFINED__
253 typedef interface ISWbemObject ISWbemObject;
254 #endif
255 
256 #ifndef __ISWbemObjectEx_FWD_DEFINED__
257 #define __ISWbemObjectEx_FWD_DEFINED__
258 typedef interface ISWbemObjectEx ISWbemObjectEx;
259 #endif
260 
261 #ifndef __ISWbemLastError_FWD_DEFINED__
262 #define __ISWbemLastError_FWD_DEFINED__
263 typedef interface ISWbemLastError ISWbemLastError;
264 #endif
265 
266 #ifndef __ISWbemObjectSet_FWD_DEFINED__
267 #define __ISWbemObjectSet_FWD_DEFINED__
268 typedef interface ISWbemObjectSet ISWbemObjectSet;
269 #endif
270 
271 #ifndef __ISWbemNamedValueSet_FWD_DEFINED__
272 #define __ISWbemNamedValueSet_FWD_DEFINED__
273 typedef interface ISWbemNamedValueSet ISWbemNamedValueSet;
274 #endif
275 
276 #ifndef __ISWbemNamedValue_FWD_DEFINED__
277 #define __ISWbemNamedValue_FWD_DEFINED__
278 typedef interface ISWbemNamedValue ISWbemNamedValue;
279 #endif
280 
281 #ifndef __ISWbemObjectPath_FWD_DEFINED__
282 #define __ISWbemObjectPath_FWD_DEFINED__
283 typedef interface ISWbemObjectPath ISWbemObjectPath;
284 #endif
285 
286 #ifndef __ISWbemProperty_FWD_DEFINED__
287 #define __ISWbemProperty_FWD_DEFINED__
288 typedef interface ISWbemProperty ISWbemProperty;
289 #endif
290 
291 #ifndef __ISWbemPropertySet_FWD_DEFINED__
292 #define __ISWbemPropertySet_FWD_DEFINED__
293 typedef interface ISWbemPropertySet ISWbemPropertySet;
294 #endif
295 
296 #ifndef __ISWbemQualifier_FWD_DEFINED__
297 #define __ISWbemQualifier_FWD_DEFINED__
298 typedef interface ISWbemQualifier ISWbemQualifier;
299 #endif
300 
301 #ifndef __ISWbemQualifierSet_FWD_DEFINED__
302 #define __ISWbemQualifierSet_FWD_DEFINED__
303 typedef interface ISWbemQualifierSet ISWbemQualifierSet;
304 #endif
305 
306 #ifndef __ISWbemMethod_FWD_DEFINED__
307 #define __ISWbemMethod_FWD_DEFINED__
308 typedef interface ISWbemMethod ISWbemMethod;
309 #endif
310 
311 #ifndef __ISWbemMethodSet_FWD_DEFINED__
312 #define __ISWbemMethodSet_FWD_DEFINED__
313 typedef interface ISWbemMethodSet ISWbemMethodSet;
314 #endif
315 
316 #ifndef __ISWbemSink_FWD_DEFINED__
317 #define __ISWbemSink_FWD_DEFINED__
318 typedef interface ISWbemSink ISWbemSink;
319 #endif
320 
321 #ifndef __ISWbemSinkEvents_FWD_DEFINED__
322 #define __ISWbemSinkEvents_FWD_DEFINED__
323 typedef interface ISWbemSinkEvents ISWbemSinkEvents;
324 #endif
325 
326 #ifndef __ISWbemEventSource_FWD_DEFINED__
327 #define __ISWbemEventSource_FWD_DEFINED__
328 typedef interface ISWbemEventSource ISWbemEventSource;
329 #endif
330 
331 #ifndef __ISWbemSecurity_FWD_DEFINED__
332 #define __ISWbemSecurity_FWD_DEFINED__
333 typedef interface ISWbemSecurity ISWbemSecurity;
334 #endif
335 
336 #ifndef __ISWbemPrivilege_FWD_DEFINED__
337 #define __ISWbemPrivilege_FWD_DEFINED__
338 typedef interface ISWbemPrivilege ISWbemPrivilege;
339 #endif
340 
341 #ifndef __ISWbemPrivilegeSet_FWD_DEFINED__
342 #define __ISWbemPrivilegeSet_FWD_DEFINED__
343 typedef interface ISWbemPrivilegeSet ISWbemPrivilegeSet;
344 #endif
345 
346 #ifndef __ISWbemDateTime_FWD_DEFINED__
347 #define __ISWbemDateTime_FWD_DEFINED__
348 typedef interface ISWbemDateTime ISWbemDateTime;
349 #endif
350 
351 #ifndef __ISWbemRefreshableItem_FWD_DEFINED__
352 #define __ISWbemRefreshableItem_FWD_DEFINED__
353 typedef interface ISWbemRefreshableItem ISWbemRefreshableItem;
354 #endif
355 
356 #ifndef __ISWbemRefresher_FWD_DEFINED__
357 #define __ISWbemRefresher_FWD_DEFINED__
358 typedef interface ISWbemRefresher ISWbemRefresher;
359 #endif
360 
361 /* Headers for imported files */
362 
363 #include <dispex.h>
364 
365 #ifdef __cplusplus
366 extern "C" {
367 #endif
368 
369 /**
370  * This file is part of the mingw-w64 runtime package.
371  * No warranty is given; refer to the file DISCLAIMER within this package.
372  */
373 
374 #include <winapifamily.h>
375 
376 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
377 
378 DEFINE_GUID(LIBID_WbemScripting, 0x565783c6, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6);
379 
380 #ifndef __ISWbemDateTime_FWD_DEFINED__
381 #define __ISWbemDateTime_FWD_DEFINED__
382 typedef interface ISWbemDateTime ISWbemDateTime;
383 #endif
384 
385 #ifndef __ISWbemEventSource_FWD_DEFINED__
386 #define __ISWbemEventSource_FWD_DEFINED__
387 typedef interface ISWbemEventSource ISWbemEventSource;
388 #endif
389 
390 #ifndef __ISWbemLastError_FWD_DEFINED__
391 #define __ISWbemLastError_FWD_DEFINED__
392 typedef interface ISWbemLastError ISWbemLastError;
393 #endif
394 
395 #ifndef __ISWbemLocator_FWD_DEFINED__
396 #define __ISWbemLocator_FWD_DEFINED__
397 typedef interface ISWbemLocator ISWbemLocator;
398 #endif
399 
400 #ifndef __ISWbemMethod_FWD_DEFINED__
401 #define __ISWbemMethod_FWD_DEFINED__
402 typedef interface ISWbemMethod ISWbemMethod;
403 #endif
404 
405 #ifndef __ISWbemMethodSet_FWD_DEFINED__
406 #define __ISWbemMethodSet_FWD_DEFINED__
407 typedef interface ISWbemMethodSet ISWbemMethodSet;
408 #endif
409 
410 #ifndef __ISWbemNamedValue_FWD_DEFINED__
411 #define __ISWbemNamedValue_FWD_DEFINED__
412 typedef interface ISWbemNamedValue ISWbemNamedValue;
413 #endif
414 
415 #ifndef __ISWbemNamedValueSet_FWD_DEFINED__
416 #define __ISWbemNamedValueSet_FWD_DEFINED__
417 typedef interface ISWbemNamedValueSet ISWbemNamedValueSet;
418 #endif
419 
420 #ifndef __ISWbemObject_FWD_DEFINED__
421 #define __ISWbemObject_FWD_DEFINED__
422 typedef interface ISWbemObject ISWbemObject;
423 #endif
424 
425 #ifndef __ISWbemObjectEx_FWD_DEFINED__
426 #define __ISWbemObjectEx_FWD_DEFINED__
427 typedef interface ISWbemObjectEx ISWbemObjectEx;
428 #endif
429 
430 #ifndef __ISWbemObjectPath_FWD_DEFINED__
431 #define __ISWbemObjectPath_FWD_DEFINED__
432 typedef interface ISWbemObjectPath ISWbemObjectPath;
433 #endif
434 
435 #ifndef __ISWbemObjectSet_FWD_DEFINED__
436 #define __ISWbemObjectSet_FWD_DEFINED__
437 typedef interface ISWbemObjectSet ISWbemObjectSet;
438 #endif
439 
440 #ifndef __ISWbemQualifier_FWD_DEFINED__
441 #define __ISWbemQualifier_FWD_DEFINED__
442 typedef interface ISWbemQualifier ISWbemQualifier;
443 #endif
444 
445 #ifndef __ISWbemQualifierSet_FWD_DEFINED__
446 #define __ISWbemQualifierSet_FWD_DEFINED__
447 typedef interface ISWbemQualifierSet ISWbemQualifierSet;
448 #endif
449 
450 #ifndef __ISWbemPrivilege_FWD_DEFINED__
451 #define __ISWbemPrivilege_FWD_DEFINED__
452 typedef interface ISWbemPrivilege ISWbemPrivilege;
453 #endif
454 
455 #ifndef __ISWbemPrivilegeSet_FWD_DEFINED__
456 #define __ISWbemPrivilegeSet_FWD_DEFINED__
457 typedef interface ISWbemPrivilegeSet ISWbemPrivilegeSet;
458 #endif
459 
460 #ifndef __ISWbemProperty_FWD_DEFINED__
461 #define __ISWbemProperty_FWD_DEFINED__
462 typedef interface ISWbemProperty ISWbemProperty;
463 #endif
464 
465 #ifndef __ISWbemPropertySet_FWD_DEFINED__
466 #define __ISWbemPropertySet_FWD_DEFINED__
467 typedef interface ISWbemPropertySet ISWbemPropertySet;
468 #endif
469 
470 #ifndef __ISWbemRefresher_FWD_DEFINED__
471 #define __ISWbemRefresher_FWD_DEFINED__
472 typedef interface ISWbemRefresher ISWbemRefresher;
473 #endif
474 
475 #ifndef __ISWbemRefreshableItem_FWD_DEFINED__
476 #define __ISWbemRefreshableItem_FWD_DEFINED__
477 typedef interface ISWbemRefreshableItem ISWbemRefreshableItem;
478 #endif
479 
480 #ifndef __ISWbemSecurity_FWD_DEFINED__
481 #define __ISWbemSecurity_FWD_DEFINED__
482 typedef interface ISWbemSecurity ISWbemSecurity;
483 #endif
484 
485 #ifndef __ISWbemServices_FWD_DEFINED__
486 #define __ISWbemServices_FWD_DEFINED__
487 typedef interface ISWbemServices ISWbemServices;
488 #endif
489 
490 #ifndef __ISWbemServicesEx_FWD_DEFINED__
491 #define __ISWbemServicesEx_FWD_DEFINED__
492 typedef interface ISWbemServicesEx ISWbemServicesEx;
493 #endif
494 
495 #ifndef __ISWbemSink_FWD_DEFINED__
496 #define __ISWbemSink_FWD_DEFINED__
497 typedef interface ISWbemSink ISWbemSink;
498 #endif
499 
500 #ifndef __ISWbemSinkEvents_FWD_DEFINED__
501 #define __ISWbemSinkEvents_FWD_DEFINED__
502 typedef interface ISWbemSinkEvents ISWbemSinkEvents;
503 #endif
504 
505 typedef enum WbemChangeFlagEnum {
506     wbemChangeFlagCreateOrUpdate = 0x0,
507     wbemChangeFlagUpdateOnly = 0x1,
508     wbemChangeFlagCreateOnly = 0x2,
509     wbemChangeFlagUpdateCompatible = 0x0,
510     wbemChangeFlagUpdateSafeMode = 0x20,
511     wbemChangeFlagUpdateForceMode = 0x40,
512     wbemChangeFlagStrongValidation = 0x80,
513     wbemChangeFlagAdvisory = 0x10000
514 } WbemChangeFlagEnum;
515 typedef enum WbemFlagEnum {
516     wbemFlagReturnImmediately = 0x10,
517     wbemFlagReturnWhenComplete = 0,
518     wbemFlagBidirectional = 0,
519     wbemFlagForwardOnly = 0x20,
520     wbemFlagNoErrorObject = 0x40,
521     wbemFlagReturnErrorObject = 0,
522     wbemFlagSendStatus = 0x80,
523     wbemFlagDontSendStatus = 0,
524     wbemFlagEnsureLocatable = 0x100,
525     wbemFlagDirectRead = 0x200,
526     wbemFlagSendOnlySelected = 0,
527     wbemFlagUseAmendedQualifiers = 0x20000,
528     wbemFlagGetDefault = 0x0,
529     wbemFlagSpawnInstance = 0x1,
530     wbemFlagUseCurrentTime = 0x1
531 } WbemFlagEnum;
532 typedef enum WbemQueryFlagEnum {
533     wbemQueryFlagDeep = 0,
534     wbemQueryFlagShallow = 1,
535     wbemQueryFlagPrototype = 2
536 } WbemQueryFlagEnum;
537 typedef enum WbemTextFlagEnum {
538     wbemTextFlagNoFlavors = 0x1
539 } WbemTextFlagEnum;
540 typedef enum WbemTimeout {
541     wbemTimeoutInfinite = 0xffffffff
542 } WbemTimeout;
543 typedef enum WbemComparisonFlagEnum {
544     wbemComparisonFlagIncludeAll = 0,
545     wbemComparisonFlagIgnoreQualifiers = 0x1,
546     wbemComparisonFlagIgnoreObjectSource = 0x2,
547     wbemComparisonFlagIgnoreDefaultValues = 0x4,
548     wbemComparisonFlagIgnoreClass = 0x8,
549     wbemComparisonFlagIgnoreCase = 0x10,
550     wbemComparisonFlagIgnoreFlavor = 0x20
551 } WbemComparisonFlagEnum;
552 typedef enum WbemCimtypeEnum {
553     wbemCimtypeSint16 = 2,
554     wbemCimtypeSint32 = 3,
555     wbemCimtypeReal32 = 4,
556     wbemCimtypeReal64 = 5,
557     wbemCimtypeString = 8,
558     wbemCimtypeBoolean = 11,
559     wbemCimtypeObject = 13,
560     wbemCimtypeSint8 = 16,
561     wbemCimtypeUint8 = 17,
562     wbemCimtypeUint16 = 18,
563     wbemCimtypeUint32 = 19,
564     wbemCimtypeSint64 = 20,
565     wbemCimtypeUint64 = 21,
566     wbemCimtypeDatetime = 101,
567     wbemCimtypeReference = 102,
568     wbemCimtypeChar16 = 103
569 } WbemCimtypeEnum;
570 typedef enum WbemErrorEnum {
571     wbemNoErr = 0,
572     wbemErrFailed = 0x80041001,
573     wbemErrNotFound = 0x80041002,
574     wbemErrAccessDenied = 0x80041003,
575     wbemErrProviderFailure = 0x80041004,
576     wbemErrTypeMismatch = 0x80041005,
577     wbemErrOutOfMemory = 0x80041006,
578     wbemErrInvalidContext = 0x80041007,
579     wbemErrInvalidParameter = 0x80041008,
580     wbemErrNotAvailable = 0x80041009,
581     wbemErrCriticalError = 0x8004100a,
582     wbemErrInvalidStream = 0x8004100b,
583     wbemErrNotSupported = 0x8004100c,
584     wbemErrInvalidSuperclass = 0x8004100d,
585     wbemErrInvalidNamespace = 0x8004100e,
586     wbemErrInvalidObject = 0x8004100f,
587     wbemErrInvalidClass = 0x80041010,
588     wbemErrProviderNotFound = 0x80041011,
589     wbemErrInvalidProviderRegistration = 0x80041012,
590     wbemErrProviderLoadFailure = 0x80041013,
591     wbemErrInitializationFailure = 0x80041014,
592     wbemErrTransportFailure = 0x80041015,
593     wbemErrInvalidOperation = 0x80041016,
594     wbemErrInvalidQuery = 0x80041017,
595     wbemErrInvalidQueryType = 0x80041018,
596     wbemErrAlreadyExists = 0x80041019,
597     wbemErrOverrideNotAllowed = 0x8004101a,
598     wbemErrPropagatedQualifier = 0x8004101b,
599     wbemErrPropagatedProperty = 0x8004101c,
600     wbemErrUnexpected = 0x8004101d,
601     wbemErrIllegalOperation = 0x8004101e,
602     wbemErrCannotBeKey = 0x8004101f,
603     wbemErrIncompleteClass = 0x80041020,
604     wbemErrInvalidSyntax = 0x80041021,
605     wbemErrNondecoratedObject = 0x80041022,
606     wbemErrReadOnly = 0x80041023,
607     wbemErrProviderNotCapable = 0x80041024,
608     wbemErrClassHasChildren = 0x80041025,
609     wbemErrClassHasInstances = 0x80041026,
610     wbemErrQueryNotImplemented = 0x80041027,
611     wbemErrIllegalNull = 0x80041028,
612     wbemErrInvalidQualifierType = 0x80041029,
613     wbemErrInvalidPropertyType = 0x8004102a,
614     wbemErrValueOutOfRange = 0x8004102b,
615     wbemErrCannotBeSingleton = 0x8004102c,
616     wbemErrInvalidCimType = 0x8004102d,
617     wbemErrInvalidMethod = 0x8004102e,
618     wbemErrInvalidMethodParameters = 0x8004102f,
619     wbemErrSystemProperty = 0x80041030,
620     wbemErrInvalidProperty = 0x80041031,
621     wbemErrCallCancelled = 0x80041032,
622     wbemErrShuttingDown = 0x80041033,
623     wbemErrPropagatedMethod = 0x80041034,
624     wbemErrUnsupportedParameter = 0x80041035,
625     wbemErrMissingParameter = 0x80041036,
626     wbemErrInvalidParameterId = 0x80041037,
627     wbemErrNonConsecutiveParameterIds = 0x80041038,
628     wbemErrParameterIdOnRetval = 0x80041039,
629     wbemErrInvalidObjectPath = 0x8004103a,
630     wbemErrOutOfDiskSpace = 0x8004103b,
631     wbemErrBufferTooSmall = 0x8004103c,
632     wbemErrUnsupportedPutExtension = 0x8004103d,
633     wbemErrUnknownObjectType = 0x8004103e,
634     wbemErrUnknownPacketType = 0x8004103f,
635     wbemErrMarshalVersionMismatch = 0x80041040,
636     wbemErrMarshalInvalidSignature = 0x80041041,
637     wbemErrInvalidQualifier = 0x80041042,
638     wbemErrInvalidDuplicateParameter = 0x80041043,
639     wbemErrTooMuchData = 0x80041044,
640     wbemErrServerTooBusy = 0x80041045,
641     wbemErrInvalidFlavor = 0x80041046,
642     wbemErrCircularReference = 0x80041047,
643     wbemErrUnsupportedClassUpdate = 0x80041048,
644     wbemErrCannotChangeKeyInheritance = 0x80041049,
645     wbemErrCannotChangeIndexInheritance = 0x80041050,
646     wbemErrTooManyProperties = 0x80041051,
647     wbemErrUpdateTypeMismatch = 0x80041052,
648     wbemErrUpdateOverrideNotAllowed = 0x80041053,
649     wbemErrUpdatePropagatedMethod = 0x80041054,
650     wbemErrMethodNotImplemented = 0x80041055,
651     wbemErrMethodDisabled = 0x80041056,
652     wbemErrRefresherBusy = 0x80041057,
653     wbemErrUnparsableQuery = 0x80041058,
654     wbemErrNotEventClass = 0x80041059,
655     wbemErrMissingGroupWithin = 0x8004105a,
656     wbemErrMissingAggregationList = 0x8004105b,
657     wbemErrPropertyNotAnObject = 0x8004105c,
658     wbemErrAggregatingByObject = 0x8004105d,
659     wbemErrUninterpretableProviderQuery = 0x8004105f,
660     wbemErrBackupRestoreWinmgmtRunning = 0x80041060,
661     wbemErrQueueOverflow = 0x80041061,
662     wbemErrPrivilegeNotHeld = 0x80041062,
663     wbemErrInvalidOperator = 0x80041063,
664     wbemErrLocalCredentials = 0x80041064,
665     wbemErrCannotBeAbstract = 0x80041065,
666     wbemErrAmendedObject = 0x80041066,
667     wbemErrClientTooSlow = 0x80041067,
668     wbemErrNullSecurityDescriptor = 0x80041068,
669     wbemErrTimeout = 0x80041069,
670     wbemErrInvalidAssociation = 0x8004106a,
671     wbemErrAmbiguousOperation = 0x8004106b,
672     wbemErrQuotaViolation = 0x8004106c,
673     wbemErrTransactionConflict = 0x8004106d,
674     wbemErrForcedRollback = 0x8004106e,
675     wbemErrUnsupportedLocale = 0x8004106f,
676     wbemErrHandleOutOfDate = 0x80041070,
677     wbemErrConnectionFailed = 0x80041071,
678     wbemErrInvalidHandleRequest = 0x80041072,
679     wbemErrPropertyNameTooWide = 0x80041073,
680     wbemErrClassNameTooWide = 0x80041074,
681     wbemErrMethodNameTooWide = 0x80041075,
682     wbemErrQualifierNameTooWide = 0x80041076,
683     wbemErrRerunCommand = 0x80041077,
684     wbemErrDatabaseVerMismatch = 0x80041078,
685     wbemErrVetoPut = 0x80041079,
686     wbemErrVetoDelete = 0x8004107a,
687     wbemErrInvalidLocale = 0x80041080,
688     wbemErrProviderSuspended = 0x80041081,
689     wbemErrSynchronizationRequired = 0x80041082,
690     wbemErrNoSchema = 0x80041083,
691     wbemErrProviderAlreadyRegistered = 0x80041084,
692     wbemErrProviderNotRegistered = 0x80041085,
693     wbemErrFatalTransportError = 0x80041086,
694     wbemErrEncryptedConnectionRequired = 0x80041087,
695     wbemErrRegistrationTooBroad = 0x80042001,
696     wbemErrRegistrationTooPrecise = 0x80042002,
697     wbemErrTimedout = 0x80043001,
698     wbemErrResetToDefault = 0x80043002
699 } WbemErrorEnum;
700 typedef enum WbemAuthenticationLevelEnum {
701     wbemAuthenticationLevelDefault = 0,
702     wbemAuthenticationLevelNone = 1,
703     wbemAuthenticationLevelConnect = 2,
704     wbemAuthenticationLevelCall = 3,
705     wbemAuthenticationLevelPkt = 4,
706     wbemAuthenticationLevelPktIntegrity = 5,
707     wbemAuthenticationLevelPktPrivacy = 6
708 } WbemAuthenticationLevelEnum;
709 typedef enum WbemImpersonationLevelEnum {
710     wbemImpersonationLevelAnonymous = 1,
711     wbemImpersonationLevelIdentify = 2,
712     wbemImpersonationLevelImpersonate = 3,
713     wbemImpersonationLevelDelegate = 4
714 } WbemImpersonationLevelEnum;
715 typedef enum WbemPrivilegeEnum {
716     wbemPrivilegeCreateToken = 1,
717     wbemPrivilegePrimaryToken = 2,
718     wbemPrivilegeLockMemory = 3,
719     wbemPrivilegeIncreaseQuota = 4,
720     wbemPrivilegeMachineAccount = 5,
721     wbemPrivilegeTcb = 6,
722     wbemPrivilegeSecurity = 7,
723     wbemPrivilegeTakeOwnership = 8,
724     wbemPrivilegeLoadDriver = 9,
725     wbemPrivilegeSystemProfile = 10,
726     wbemPrivilegeSystemtime = 11,
727     wbemPrivilegeProfileSingleProcess = 12,
728     wbemPrivilegeIncreaseBasePriority = 13,
729     wbemPrivilegeCreatePagefile = 14,
730     wbemPrivilegeCreatePermanent = 15,
731     wbemPrivilegeBackup = 16,
732     wbemPrivilegeRestore = 17,
733     wbemPrivilegeShutdown = 18,
734     wbemPrivilegeDebug = 19,
735     wbemPrivilegeAudit = 20,
736     wbemPrivilegeSystemEnvironment = 21,
737     wbemPrivilegeChangeNotify = 22,
738     wbemPrivilegeRemoteShutdown = 23,
739     wbemPrivilegeUndock = 24,
740     wbemPrivilegeSyncAgent = 25,
741     wbemPrivilegeEnableDelegation = 26,
742     wbemPrivilegeManageVolume = 27
743 } WbemPrivilegeEnum;
744 typedef enum WbemObjectTextFormatEnum {
745     wbemObjectTextFormatCIMDTD20 = 1,
746     wbemObjectTextFormatWMIDTD20 = 2
747 } WbemObjectTextFormatEnum;
748 typedef enum WbemConnectOptionsEnum {
749     wbemConnectFlagUseMaxWait = 0x80
750 } WbemConnectOptionsEnum;
751 #define WBEMS_DISPID_OBJECT_READY (1)
752 
753 #define WBEMS_DISPID_COMPLETED (2)
754 
755 #define WBEMS_DISPID_PROGRESS (3)
756 
757 #define WBEMS_DISPID_OBJECT_PUT (4)
758 
759 #define WBEMS_DISPID_CONNECTION_READY (5)
760 
761 #define WBEMS_DISPID_DERIVATION (23)
762 
763 /*****************************************************************************
764  * SWbemLocator coclass
765  */
766 
767 DEFINE_GUID(CLSID_SWbemLocator, 0x76a64158, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6);
768 
769 #ifdef __cplusplus
770 class DECLSPEC_UUID("76a64158-cb41-11d1-8b02-00600806d9b6") SWbemLocator;
771 #ifdef __CRT_UUID_DECL
772 __CRT_UUID_DECL(SWbemLocator, 0x76a64158, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6)
773 #endif
774 #endif
775 
776 /*****************************************************************************
777  * SWbemNamedValueSet coclass
778  */
779 
780 DEFINE_GUID(CLSID_SWbemNamedValueSet, 0x9aed384e, 0xce8b, 0x11d1, 0x8b,0x05, 0x00,0x60,0x08,0x06,0xd9,0xb6);
781 
782 #ifdef __cplusplus
783 class DECLSPEC_UUID("9aed384e-ce8b-11d1-8b05-00600806d9b6") SWbemNamedValueSet;
784 #ifdef __CRT_UUID_DECL
785 __CRT_UUID_DECL(SWbemNamedValueSet, 0x9aed384e, 0xce8b, 0x11d1, 0x8b,0x05, 0x00,0x60,0x08,0x06,0xd9,0xb6)
786 #endif
787 #endif
788 
789 /*****************************************************************************
790  * SWbemObjectPath coclass
791  */
792 
793 DEFINE_GUID(CLSID_SWbemObjectPath, 0x5791bc26, 0xce9c, 0x11d1, 0x97,0xbf, 0x00,0x00,0xf8,0x1e,0x84,0x9c);
794 
795 #ifdef __cplusplus
796 class DECLSPEC_UUID("5791bc26-ce9c-11d1-97bf-0000f81e849c") SWbemObjectPath;
797 #ifdef __CRT_UUID_DECL
798 __CRT_UUID_DECL(SWbemObjectPath, 0x5791bc26, 0xce9c, 0x11d1, 0x97,0xbf, 0x00,0x00,0xf8,0x1e,0x84,0x9c)
799 #endif
800 #endif
801 
802 /*****************************************************************************
803  * SWbemLastError coclass
804  */
805 
806 DEFINE_GUID(CLSID_SWbemLastError, 0xc2feeeac, 0xcfcd, 0x11d1, 0x8b,0x05, 0x00,0x60,0x08,0x06,0xd9,0xb6);
807 
808 #ifdef __cplusplus
809 class DECLSPEC_UUID("c2feeeac-cfcd-11d1-8b05-00600806d9b6") SWbemLastError;
810 #ifdef __CRT_UUID_DECL
811 __CRT_UUID_DECL(SWbemLastError, 0xc2feeeac, 0xcfcd, 0x11d1, 0x8b,0x05, 0x00,0x60,0x08,0x06,0xd9,0xb6)
812 #endif
813 #endif
814 
815 /*****************************************************************************
816  * SWbemSink coclass
817  */
818 
819 DEFINE_GUID(CLSID_SWbemSink, 0x75718c9a, 0xf029, 0x11d1, 0xa1,0xac, 0x00,0xc0,0x4f,0xb6,0xc2,0x23);
820 
821 #ifdef __cplusplus
822 class DECLSPEC_UUID("75718c9a-f029-11d1-a1ac-00c04fb6c223") SWbemSink;
823 #ifdef __CRT_UUID_DECL
824 __CRT_UUID_DECL(SWbemSink, 0x75718c9a, 0xf029, 0x11d1, 0xa1,0xac, 0x00,0xc0,0x4f,0xb6,0xc2,0x23)
825 #endif
826 #endif
827 
828 /*****************************************************************************
829  * SWbemDateTime coclass
830  */
831 
832 DEFINE_GUID(CLSID_SWbemDateTime, 0x47dfbe54, 0xcf76, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a);
833 
834 #ifdef __cplusplus
835 class DECLSPEC_UUID("47dfbe54-cf76-11d3-b38f-00105a1f473a") SWbemDateTime;
836 #ifdef __CRT_UUID_DECL
837 __CRT_UUID_DECL(SWbemDateTime, 0x47dfbe54, 0xcf76, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a)
838 #endif
839 #endif
840 
841 /*****************************************************************************
842  * SWbemRefresher coclass
843  */
844 
845 DEFINE_GUID(CLSID_SWbemRefresher, 0xd269bf5c, 0xd9c1, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a);
846 
847 #ifdef __cplusplus
848 class DECLSPEC_UUID("d269bf5c-d9c1-11d3-b38f-00105a1f473a") SWbemRefresher;
849 #ifdef __CRT_UUID_DECL
850 __CRT_UUID_DECL(SWbemRefresher, 0xd269bf5c, 0xd9c1, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a)
851 #endif
852 #endif
853 
854 /*****************************************************************************
855  * SWbemServices coclass
856  */
857 
858 DEFINE_GUID(CLSID_SWbemServices, 0x04b83d63, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
859 
860 #ifdef __cplusplus
861 class DECLSPEC_UUID("04b83d63-21ae-11d2-8b33-00600806d9b6") SWbemServices;
862 #ifdef __CRT_UUID_DECL
863 __CRT_UUID_DECL(SWbemServices, 0x04b83d63, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
864 #endif
865 #endif
866 
867 /*****************************************************************************
868  * SWbemServicesEx coclass
869  */
870 
871 DEFINE_GUID(CLSID_SWbemServicesEx, 0x62e522dc, 0x8cf3, 0x40a8, 0x8b,0x2e, 0x37,0xd5,0x95,0x65,0x1e,0x40);
872 
873 #ifdef __cplusplus
874 class DECLSPEC_UUID("62e522dc-8cf3-40a8-8b2e-37d595651e40") SWbemServicesEx;
875 #ifdef __CRT_UUID_DECL
876 __CRT_UUID_DECL(SWbemServicesEx, 0x62e522dc, 0x8cf3, 0x40a8, 0x8b,0x2e, 0x37,0xd5,0x95,0x65,0x1e,0x40)
877 #endif
878 #endif
879 
880 /*****************************************************************************
881  * SWbemObject coclass
882  */
883 
884 DEFINE_GUID(CLSID_SWbemObject, 0x04b83d62, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
885 
886 #ifdef __cplusplus
887 class DECLSPEC_UUID("04b83d62-21ae-11d2-8b33-00600806d9b6") SWbemObject;
888 #ifdef __CRT_UUID_DECL
889 __CRT_UUID_DECL(SWbemObject, 0x04b83d62, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
890 #endif
891 #endif
892 
893 /*****************************************************************************
894  * SWbemObjectEx coclass
895  */
896 
897 DEFINE_GUID(CLSID_SWbemObjectEx, 0xd6bdafb2, 0x9435, 0x491f, 0xbb,0x87, 0x6a,0xa0,0xf0,0xbc,0x31,0xa2);
898 
899 #ifdef __cplusplus
900 class DECLSPEC_UUID("d6bdafb2-9435-491f-bb87-6aa0f0bc31a2") SWbemObjectEx;
901 #ifdef __CRT_UUID_DECL
902 __CRT_UUID_DECL(SWbemObjectEx, 0xd6bdafb2, 0x9435, 0x491f, 0xbb,0x87, 0x6a,0xa0,0xf0,0xbc,0x31,0xa2)
903 #endif
904 #endif
905 
906 /*****************************************************************************
907  * SWbemObjectSet coclass
908  */
909 
910 DEFINE_GUID(CLSID_SWbemObjectSet, 0x04b83d61, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
911 
912 #ifdef __cplusplus
913 class DECLSPEC_UUID("04b83d61-21ae-11d2-8b33-00600806d9b6") SWbemObjectSet;
914 #ifdef __CRT_UUID_DECL
915 __CRT_UUID_DECL(SWbemObjectSet, 0x04b83d61, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
916 #endif
917 #endif
918 
919 /*****************************************************************************
920  * SWbemNamedValue coclass
921  */
922 
923 DEFINE_GUID(CLSID_SWbemNamedValue, 0x04b83d60, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
924 
925 #ifdef __cplusplus
926 class DECLSPEC_UUID("04b83d60-21ae-11d2-8b33-00600806d9b6") SWbemNamedValue;
927 #ifdef __CRT_UUID_DECL
928 __CRT_UUID_DECL(SWbemNamedValue, 0x04b83d60, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
929 #endif
930 #endif
931 
932 /*****************************************************************************
933  * SWbemQualifier coclass
934  */
935 
936 DEFINE_GUID(CLSID_SWbemQualifier, 0x04b83d5f, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
937 
938 #ifdef __cplusplus
939 class DECLSPEC_UUID("04b83d5f-21ae-11d2-8b33-00600806d9b6") SWbemQualifier;
940 #ifdef __CRT_UUID_DECL
941 __CRT_UUID_DECL(SWbemQualifier, 0x04b83d5f, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
942 #endif
943 #endif
944 
945 /*****************************************************************************
946  * SWbemQualifierSet coclass
947  */
948 
949 DEFINE_GUID(CLSID_SWbemQualifierSet, 0x04b83d5e, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
950 
951 #ifdef __cplusplus
952 class DECLSPEC_UUID("04b83d5e-21ae-11d2-8b33-00600806d9b6") SWbemQualifierSet;
953 #ifdef __CRT_UUID_DECL
954 __CRT_UUID_DECL(SWbemQualifierSet, 0x04b83d5e, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
955 #endif
956 #endif
957 
958 /*****************************************************************************
959  * SWbemProperty coclass
960  */
961 
962 DEFINE_GUID(CLSID_SWbemProperty, 0x04b83d5d, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
963 
964 #ifdef __cplusplus
965 class DECLSPEC_UUID("04b83d5d-21ae-11d2-8b33-00600806d9b6") SWbemProperty;
966 #ifdef __CRT_UUID_DECL
967 __CRT_UUID_DECL(SWbemProperty, 0x04b83d5d, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
968 #endif
969 #endif
970 
971 /*****************************************************************************
972  * SWbemPropertySet coclass
973  */
974 
975 DEFINE_GUID(CLSID_SWbemPropertySet, 0x04b83d5c, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
976 
977 #ifdef __cplusplus
978 class DECLSPEC_UUID("04b83d5c-21ae-11d2-8b33-00600806d9b6") SWbemPropertySet;
979 #ifdef __CRT_UUID_DECL
980 __CRT_UUID_DECL(SWbemPropertySet, 0x04b83d5c, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
981 #endif
982 #endif
983 
984 /*****************************************************************************
985  * SWbemMethod coclass
986  */
987 
988 DEFINE_GUID(CLSID_SWbemMethod, 0x04b83d5b, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
989 
990 #ifdef __cplusplus
991 class DECLSPEC_UUID("04b83d5b-21ae-11d2-8b33-00600806d9b6") SWbemMethod;
992 #ifdef __CRT_UUID_DECL
993 __CRT_UUID_DECL(SWbemMethod, 0x04b83d5b, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
994 #endif
995 #endif
996 
997 /*****************************************************************************
998  * SWbemMethodSet coclass
999  */
1000 
1001 DEFINE_GUID(CLSID_SWbemMethodSet, 0x04b83d5a, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
1002 
1003 #ifdef __cplusplus
1004 class DECLSPEC_UUID("04b83d5a-21ae-11d2-8b33-00600806d9b6") SWbemMethodSet;
1005 #ifdef __CRT_UUID_DECL
1006 __CRT_UUID_DECL(SWbemMethodSet, 0x04b83d5a, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
1007 #endif
1008 #endif
1009 
1010 /*****************************************************************************
1011  * SWbemEventSource coclass
1012  */
1013 
1014 DEFINE_GUID(CLSID_SWbemEventSource, 0x04b83d58, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
1015 
1016 #ifdef __cplusplus
1017 class DECLSPEC_UUID("04b83d58-21ae-11d2-8b33-00600806d9b6") SWbemEventSource;
1018 #ifdef __CRT_UUID_DECL
1019 __CRT_UUID_DECL(SWbemEventSource, 0x04b83d58, 0x21ae, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
1020 #endif
1021 #endif
1022 
1023 /*****************************************************************************
1024  * SWbemSecurity coclass
1025  */
1026 
1027 DEFINE_GUID(CLSID_SWbemSecurity, 0xb54d66e9, 0x2287, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
1028 
1029 #ifdef __cplusplus
1030 class DECLSPEC_UUID("b54d66e9-2287-11d2-8b33-00600806d9b6") SWbemSecurity;
1031 #ifdef __CRT_UUID_DECL
1032 __CRT_UUID_DECL(SWbemSecurity, 0xb54d66e9, 0x2287, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
1033 #endif
1034 #endif
1035 
1036 /*****************************************************************************
1037  * SWbemPrivilege coclass
1038  */
1039 
1040 DEFINE_GUID(CLSID_SWbemPrivilege, 0x26ee67bc, 0x5804, 0x11d2, 0x8b,0x4a, 0x00,0x60,0x08,0x06,0xd9,0xb6);
1041 
1042 #ifdef __cplusplus
1043 class DECLSPEC_UUID("26ee67bc-5804-11d2-8b4a-00600806d9b6") SWbemPrivilege;
1044 #ifdef __CRT_UUID_DECL
1045 __CRT_UUID_DECL(SWbemPrivilege, 0x26ee67bc, 0x5804, 0x11d2, 0x8b,0x4a, 0x00,0x60,0x08,0x06,0xd9,0xb6)
1046 #endif
1047 #endif
1048 
1049 /*****************************************************************************
1050  * SWbemPrivilegeSet coclass
1051  */
1052 
1053 DEFINE_GUID(CLSID_SWbemPrivilegeSet, 0x26ee67be, 0x5804, 0x11d2, 0x8b,0x4a, 0x00,0x60,0x08,0x06,0xd9,0xb6);
1054 
1055 #ifdef __cplusplus
1056 class DECLSPEC_UUID("26ee67be-5804-11d2-8b4a-00600806d9b6") SWbemPrivilegeSet;
1057 #ifdef __CRT_UUID_DECL
1058 __CRT_UUID_DECL(SWbemPrivilegeSet, 0x26ee67be, 0x5804, 0x11d2, 0x8b,0x4a, 0x00,0x60,0x08,0x06,0xd9,0xb6)
1059 #endif
1060 #endif
1061 
1062 /*****************************************************************************
1063  * SWbemRefreshableItem coclass
1064  */
1065 
1066 DEFINE_GUID(CLSID_SWbemRefreshableItem, 0x8c6854bc, 0xde4b, 0x11d3, 0xb3,0x90, 0x00,0x10,0x5a,0x1f,0x47,0x3a);
1067 
1068 #ifdef __cplusplus
1069 class DECLSPEC_UUID("8c6854bc-de4b-11d3-b390-00105a1f473a") SWbemRefreshableItem;
1070 #ifdef __CRT_UUID_DECL
1071 __CRT_UUID_DECL(SWbemRefreshableItem, 0x8c6854bc, 0xde4b, 0x11d3, 0xb3,0x90, 0x00,0x10,0x5a,0x1f,0x47,0x3a)
1072 #endif
1073 #endif
1074 
1075 /*****************************************************************************
1076  * ISWbemLocator interface
1077  */
1078 #ifndef __ISWbemLocator_INTERFACE_DEFINED__
1079 #define __ISWbemLocator_INTERFACE_DEFINED__
1080 
1081 DEFINE_GUID(IID_ISWbemLocator, 0x76a6415b, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6);
1082 #if defined(__cplusplus) && !defined(CINTERFACE)
1083 MIDL_INTERFACE("76a6415b-cb41-11d1-8b02-00600806d9b6")
1084 ISWbemLocator : public IDispatch
1085 {
1086     virtual HRESULT STDMETHODCALLTYPE ConnectServer(
1087         BSTR strServer = L".",
1088         BSTR strNamespace = L"",
1089         BSTR strUser = L"",
1090         BSTR strPassword = L"",
1091         BSTR strLocale = L"",
1092         BSTR strAuthority = L"",
1093         LONG iSecurityFlags = 0,
1094         IDispatch *objWbemNamedValueSet = 0,
1095         ISWbemServices **objWbemServices = 0) = 0;
1096 
1097     virtual HRESULT STDMETHODCALLTYPE get_Security_(
1098         ISWbemSecurity **objWbemSecurity) = 0;
1099 
1100 };
1101 #ifdef __CRT_UUID_DECL
1102 __CRT_UUID_DECL(ISWbemLocator, 0x76a6415b, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6)
1103 #endif
1104 #else
1105 typedef struct ISWbemLocatorVtbl {
1106     BEGIN_INTERFACE
1107 
1108     /*** IUnknown methods ***/
1109     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1110         ISWbemLocator* This,
1111         REFIID riid,
1112         void **ppvObject);
1113 
1114     ULONG (STDMETHODCALLTYPE *AddRef)(
1115         ISWbemLocator* This);
1116 
1117     ULONG (STDMETHODCALLTYPE *Release)(
1118         ISWbemLocator* This);
1119 
1120     /*** IDispatch methods ***/
1121     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1122         ISWbemLocator* This,
1123         UINT *pctinfo);
1124 
1125     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1126         ISWbemLocator* This,
1127         UINT iTInfo,
1128         LCID lcid,
1129         ITypeInfo **ppTInfo);
1130 
1131     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1132         ISWbemLocator* This,
1133         REFIID riid,
1134         LPOLESTR *rgszNames,
1135         UINT cNames,
1136         LCID lcid,
1137         DISPID *rgDispId);
1138 
1139     HRESULT (STDMETHODCALLTYPE *Invoke)(
1140         ISWbemLocator* This,
1141         DISPID dispIdMember,
1142         REFIID riid,
1143         LCID lcid,
1144         WORD wFlags,
1145         DISPPARAMS *pDispParams,
1146         VARIANT *pVarResult,
1147         EXCEPINFO *pExcepInfo,
1148         UINT *puArgErr);
1149 
1150     /*** ISWbemLocator methods ***/
1151     HRESULT (STDMETHODCALLTYPE *ConnectServer)(
1152         ISWbemLocator* This,
1153         BSTR strServer,
1154         BSTR strNamespace,
1155         BSTR strUser,
1156         BSTR strPassword,
1157         BSTR strLocale,
1158         BSTR strAuthority,
1159         LONG iSecurityFlags,
1160         IDispatch *objWbemNamedValueSet,
1161         ISWbemServices **objWbemServices);
1162 
1163     HRESULT (STDMETHODCALLTYPE *get_Security_)(
1164         ISWbemLocator* This,
1165         ISWbemSecurity **objWbemSecurity);
1166 
1167     END_INTERFACE
1168 } ISWbemLocatorVtbl;
1169 interface ISWbemLocator {
1170     CONST_VTBL ISWbemLocatorVtbl* lpVtbl;
1171 };
1172 
1173 #ifdef COBJMACROS
1174 #ifndef WIDL_C_INLINE_WRAPPERS
1175 /*** IUnknown methods ***/
1176 #define ISWbemLocator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1177 #define ISWbemLocator_AddRef(This) (This)->lpVtbl->AddRef(This)
1178 #define ISWbemLocator_Release(This) (This)->lpVtbl->Release(This)
1179 /*** IDispatch methods ***/
1180 #define ISWbemLocator_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1181 #define ISWbemLocator_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1182 #define ISWbemLocator_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1183 #define ISWbemLocator_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1184 /*** ISWbemLocator methods ***/
1185 #define ISWbemLocator_ConnectServer(This,strServer,strNamespace,strUser,strPassword,strLocale,strAuthority,iSecurityFlags,objWbemNamedValueSet,objWbemServices) (This)->lpVtbl->ConnectServer(This,strServer,strNamespace,strUser,strPassword,strLocale,strAuthority,iSecurityFlags,objWbemNamedValueSet,objWbemServices)
1186 #define ISWbemLocator_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
1187 #else
1188 /*** IUnknown methods ***/
1189 static FORCEINLINE HRESULT ISWbemLocator_QueryInterface(ISWbemLocator* This,REFIID riid,void **ppvObject) {
1190     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1191 }
1192 static FORCEINLINE ULONG ISWbemLocator_AddRef(ISWbemLocator* This) {
1193     return This->lpVtbl->AddRef(This);
1194 }
1195 static FORCEINLINE ULONG ISWbemLocator_Release(ISWbemLocator* This) {
1196     return This->lpVtbl->Release(This);
1197 }
1198 /*** IDispatch methods ***/
1199 static FORCEINLINE HRESULT ISWbemLocator_GetTypeInfoCount(ISWbemLocator* This,UINT *pctinfo) {
1200     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1201 }
1202 static FORCEINLINE HRESULT ISWbemLocator_GetTypeInfo(ISWbemLocator* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1203     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1204 }
1205 static FORCEINLINE HRESULT ISWbemLocator_GetIDsOfNames(ISWbemLocator* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1206     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1207 }
1208 static FORCEINLINE HRESULT ISWbemLocator_Invoke(ISWbemLocator* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1209     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1210 }
1211 /*** ISWbemLocator methods ***/
1212 static FORCEINLINE HRESULT ISWbemLocator_ConnectServer(ISWbemLocator* This,BSTR strServer,BSTR strNamespace,BSTR strUser,BSTR strPassword,BSTR strLocale,BSTR strAuthority,LONG iSecurityFlags,IDispatch *objWbemNamedValueSet,ISWbemServices **objWbemServices) {
1213     return This->lpVtbl->ConnectServer(This,strServer,strNamespace,strUser,strPassword,strLocale,strAuthority,iSecurityFlags,objWbemNamedValueSet,objWbemServices);
1214 }
1215 static FORCEINLINE HRESULT ISWbemLocator_get_Security_(ISWbemLocator* This,ISWbemSecurity **objWbemSecurity) {
1216     return This->lpVtbl->get_Security_(This,objWbemSecurity);
1217 }
1218 #endif
1219 #endif
1220 
1221 #endif
1222 
1223 HRESULT STDMETHODCALLTYPE ISWbemLocator_ConnectServer_Proxy(
1224     ISWbemLocator* This,
1225     BSTR strServer,
1226     BSTR strNamespace,
1227     BSTR strUser,
1228     BSTR strPassword,
1229     BSTR strLocale,
1230     BSTR strAuthority,
1231     LONG iSecurityFlags,
1232     IDispatch *objWbemNamedValueSet,
1233     ISWbemServices **objWbemServices);
1234 void __RPC_STUB ISWbemLocator_ConnectServer_Stub(
1235     IRpcStubBuffer* This,
1236     IRpcChannelBuffer* pRpcChannelBuffer,
1237     PRPC_MESSAGE pRpcMessage,
1238     DWORD* pdwStubPhase);
1239 HRESULT STDMETHODCALLTYPE ISWbemLocator_get_Security__Proxy(
1240     ISWbemLocator* This,
1241     ISWbemSecurity **objWbemSecurity);
1242 void __RPC_STUB ISWbemLocator_get_Security__Stub(
1243     IRpcStubBuffer* This,
1244     IRpcChannelBuffer* pRpcChannelBuffer,
1245     PRPC_MESSAGE pRpcMessage,
1246     DWORD* pdwStubPhase);
1247 
1248 #endif  /* __ISWbemLocator_INTERFACE_DEFINED__ */
1249 
1250 /*****************************************************************************
1251  * ISWbemServices interface
1252  */
1253 #ifndef __ISWbemServices_INTERFACE_DEFINED__
1254 #define __ISWbemServices_INTERFACE_DEFINED__
1255 
1256 DEFINE_GUID(IID_ISWbemServices, 0x76a6415c, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6);
1257 #if defined(__cplusplus) && !defined(CINTERFACE)
1258 MIDL_INTERFACE("76a6415c-cb41-11d1-8b02-00600806d9b6")
1259 ISWbemServices : public IDispatch
1260 {
1261     virtual HRESULT STDMETHODCALLTYPE Get(
1262         BSTR strObjectPath = L"",
1263         LONG iFlags = 0,
1264         IDispatch *objWbemNamedValueSet = 0,
1265         ISWbemObject **objWbemObject = 0) = 0;
1266 
1267     virtual HRESULT STDMETHODCALLTYPE GetAsync(
1268         IDispatch *objWbemSink,
1269         BSTR strObjectPath = L"",
1270         LONG iFlags = 0,
1271         IDispatch *objWbemNamedValueSet = 0,
1272         IDispatch *objWbemAsyncContext = 0) = 0;
1273 
1274     virtual HRESULT STDMETHODCALLTYPE Delete(
1275         BSTR strObjectPath,
1276         LONG iFlags = 0,
1277         IDispatch *objWbemNamedValueSet = 0) = 0;
1278 
1279     virtual HRESULT STDMETHODCALLTYPE DeleteAsync(
1280         IDispatch *objWbemSink,
1281         BSTR strObjectPath,
1282         LONG iFlags = 0,
1283         IDispatch *objWbemNamedValueSet = 0,
1284         IDispatch *objWbemAsyncContext = 0) = 0;
1285 
1286     virtual HRESULT STDMETHODCALLTYPE InstancesOf(
1287         BSTR strClass,
1288         LONG iFlags = wbemFlagReturnImmediately,
1289         IDispatch *objWbemNamedValueSet = 0,
1290         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
1291 
1292     virtual HRESULT STDMETHODCALLTYPE InstancesOfAsync(
1293         IDispatch *objWbemSink,
1294         BSTR strClass,
1295         LONG iFlags = 0,
1296         IDispatch *objWbemNamedValueSet = 0,
1297         IDispatch *objWbemAsyncContext = 0) = 0;
1298 
1299     virtual HRESULT STDMETHODCALLTYPE SubclassesOf(
1300         BSTR strSuperclass = L"",
1301         LONG iFlags = wbemFlagReturnImmediately | wbemQueryFlagDeep,
1302         IDispatch *objWbemNamedValueSet = 0,
1303         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
1304 
1305     virtual HRESULT STDMETHODCALLTYPE SubclassesOfAsync(
1306         IDispatch *objWbemSink,
1307         BSTR strSuperclass = L"",
1308         LONG iFlags = wbemQueryFlagDeep,
1309         IDispatch *objWbemNamedValueSet = 0,
1310         IDispatch *objWbemAsyncContext = 0) = 0;
1311 
1312     virtual HRESULT STDMETHODCALLTYPE ExecQuery(
1313         BSTR strQuery,
1314         BSTR strQueryLanguage = L"WQL",
1315         LONG iFlags = wbemFlagReturnImmediately,
1316         IDispatch *objWbemNamedValueSet = 0,
1317         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
1318 
1319     virtual HRESULT STDMETHODCALLTYPE ExecQueryAsync(
1320         IDispatch *objWbemSink,
1321         BSTR strQuery,
1322         BSTR strQueryLanguage = L"WQL",
1323         LONG lFlags = 0,
1324         IDispatch *objWbemNamedValueSet = 0,
1325         IDispatch *objWbemAsyncContext = 0) = 0;
1326 
1327     virtual HRESULT STDMETHODCALLTYPE AssociatorsOf(
1328         BSTR strObjectPath,
1329         BSTR strAssocClass = L"",
1330         BSTR strResultClass = L"",
1331         BSTR strResultRole = L"",
1332         BSTR strRole = L"",
1333         VARIANT_BOOL bClassesOnly = FALSE,
1334         VARIANT_BOOL bSchemaOnly = FALSE,
1335         BSTR strRequiredAssocQualifier = L"",
1336         BSTR strRequiredQualifier = L"",
1337         LONG iFlags = wbemFlagReturnImmediately,
1338         IDispatch *objWbemNamedValueSet = 0,
1339         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
1340 
1341     virtual HRESULT STDMETHODCALLTYPE AssociatorsOfAsync(
1342         IDispatch *objWbemSink,
1343         BSTR strObjectPath,
1344         BSTR strAssocClass = L"",
1345         BSTR strResultClass = L"",
1346         BSTR strResultRole = L"",
1347         BSTR strRole = L"",
1348         VARIANT_BOOL bClassesOnly = FALSE,
1349         VARIANT_BOOL bSchemaOnly = FALSE,
1350         BSTR strRequiredAssocQualifier = L"",
1351         BSTR strRequiredQualifier = L"",
1352         LONG iFlags = 0,
1353         IDispatch *objWbemNamedValueSet = 0,
1354         IDispatch *objWbemAsyncContext = 0) = 0;
1355 
1356     virtual HRESULT STDMETHODCALLTYPE ReferencesTo(
1357         BSTR strObjectPath,
1358         BSTR strResultClass = L"",
1359         BSTR strRole = L"",
1360         VARIANT_BOOL bClassesOnly = FALSE,
1361         VARIANT_BOOL bSchemaOnly = FALSE,
1362         BSTR strRequiredQualifier = L"",
1363         LONG iFlags = wbemFlagReturnImmediately,
1364         IDispatch *objWbemNamedValueSet = 0,
1365         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
1366 
1367     virtual HRESULT STDMETHODCALLTYPE ReferencesToAsync(
1368         IDispatch *objWbemSink,
1369         BSTR strObjectPath,
1370         BSTR strResultClass = L"",
1371         BSTR strRole = L"",
1372         VARIANT_BOOL bClassesOnly = FALSE,
1373         VARIANT_BOOL bSchemaOnly = FALSE,
1374         BSTR strRequiredQualifier = L"",
1375         LONG iFlags = 0,
1376         IDispatch *objWbemNamedValueSet = 0,
1377         IDispatch *objWbemAsyncContext = 0) = 0;
1378 
1379     virtual HRESULT STDMETHODCALLTYPE ExecNotificationQuery(
1380         BSTR strQuery,
1381         BSTR strQueryLanguage = L"WQL",
1382         LONG iFlags = wbemFlagReturnImmediately | wbemFlagForwardOnly,
1383         IDispatch *objWbemNamedValueSet = 0,
1384         ISWbemEventSource **objWbemEventSource = 0) = 0;
1385 
1386     virtual HRESULT STDMETHODCALLTYPE ExecNotificationQueryAsync(
1387         IDispatch *objWbemSink,
1388         BSTR strQuery,
1389         BSTR strQueryLanguage = L"WQL",
1390         LONG iFlags = 0,
1391         IDispatch *objWbemNamedValueSet = 0,
1392         IDispatch *objWbemAsyncContext = 0) = 0;
1393 
1394     virtual HRESULT STDMETHODCALLTYPE ExecMethod(
1395         BSTR strObjectPath,
1396         BSTR strMethodName,
1397         IDispatch *objWbemInParameters = 0,
1398         LONG iFlags = 0,
1399         IDispatch *objWbemNamedValueSet = 0,
1400         ISWbemObject **objWbemOutParameters = 0) = 0;
1401 
1402     virtual HRESULT STDMETHODCALLTYPE ExecMethodAsync(
1403         IDispatch *objWbemSink,
1404         BSTR strObjectPath,
1405         BSTR strMethodName,
1406         IDispatch *objWbemInParameters = 0,
1407         LONG iFlags = 0,
1408         IDispatch *objWbemNamedValueSet = 0,
1409         IDispatch *objWbemAsyncContext = 0) = 0;
1410 
1411     virtual HRESULT STDMETHODCALLTYPE get_Security_(
1412         ISWbemSecurity **objWbemSecurity) = 0;
1413 
1414 };
1415 #ifdef __CRT_UUID_DECL
1416 __CRT_UUID_DECL(ISWbemServices, 0x76a6415c, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6)
1417 #endif
1418 #else
1419 typedef struct ISWbemServicesVtbl {
1420     BEGIN_INTERFACE
1421 
1422     /*** IUnknown methods ***/
1423     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1424         ISWbemServices* This,
1425         REFIID riid,
1426         void **ppvObject);
1427 
1428     ULONG (STDMETHODCALLTYPE *AddRef)(
1429         ISWbemServices* This);
1430 
1431     ULONG (STDMETHODCALLTYPE *Release)(
1432         ISWbemServices* This);
1433 
1434     /*** IDispatch methods ***/
1435     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1436         ISWbemServices* This,
1437         UINT *pctinfo);
1438 
1439     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1440         ISWbemServices* This,
1441         UINT iTInfo,
1442         LCID lcid,
1443         ITypeInfo **ppTInfo);
1444 
1445     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1446         ISWbemServices* This,
1447         REFIID riid,
1448         LPOLESTR *rgszNames,
1449         UINT cNames,
1450         LCID lcid,
1451         DISPID *rgDispId);
1452 
1453     HRESULT (STDMETHODCALLTYPE *Invoke)(
1454         ISWbemServices* This,
1455         DISPID dispIdMember,
1456         REFIID riid,
1457         LCID lcid,
1458         WORD wFlags,
1459         DISPPARAMS *pDispParams,
1460         VARIANT *pVarResult,
1461         EXCEPINFO *pExcepInfo,
1462         UINT *puArgErr);
1463 
1464     /*** ISWbemServices methods ***/
1465     HRESULT (STDMETHODCALLTYPE *Get)(
1466         ISWbemServices* This,
1467         BSTR strObjectPath,
1468         LONG iFlags,
1469         IDispatch *objWbemNamedValueSet,
1470         ISWbemObject **objWbemObject);
1471 
1472     HRESULT (STDMETHODCALLTYPE *GetAsync)(
1473         ISWbemServices* This,
1474         IDispatch *objWbemSink,
1475         BSTR strObjectPath,
1476         LONG iFlags,
1477         IDispatch *objWbemNamedValueSet,
1478         IDispatch *objWbemAsyncContext);
1479 
1480     HRESULT (STDMETHODCALLTYPE *Delete)(
1481         ISWbemServices* This,
1482         BSTR strObjectPath,
1483         LONG iFlags,
1484         IDispatch *objWbemNamedValueSet);
1485 
1486     HRESULT (STDMETHODCALLTYPE *DeleteAsync)(
1487         ISWbemServices* This,
1488         IDispatch *objWbemSink,
1489         BSTR strObjectPath,
1490         LONG iFlags,
1491         IDispatch *objWbemNamedValueSet,
1492         IDispatch *objWbemAsyncContext);
1493 
1494     HRESULT (STDMETHODCALLTYPE *InstancesOf)(
1495         ISWbemServices* This,
1496         BSTR strClass,
1497         LONG iFlags,
1498         IDispatch *objWbemNamedValueSet,
1499         ISWbemObjectSet **objWbemObjectSet);
1500 
1501     HRESULT (STDMETHODCALLTYPE *InstancesOfAsync)(
1502         ISWbemServices* This,
1503         IDispatch *objWbemSink,
1504         BSTR strClass,
1505         LONG iFlags,
1506         IDispatch *objWbemNamedValueSet,
1507         IDispatch *objWbemAsyncContext);
1508 
1509     HRESULT (STDMETHODCALLTYPE *SubclassesOf)(
1510         ISWbemServices* This,
1511         BSTR strSuperclass,
1512         LONG iFlags,
1513         IDispatch *objWbemNamedValueSet,
1514         ISWbemObjectSet **objWbemObjectSet);
1515 
1516     HRESULT (STDMETHODCALLTYPE *SubclassesOfAsync)(
1517         ISWbemServices* This,
1518         IDispatch *objWbemSink,
1519         BSTR strSuperclass,
1520         LONG iFlags,
1521         IDispatch *objWbemNamedValueSet,
1522         IDispatch *objWbemAsyncContext);
1523 
1524     HRESULT (STDMETHODCALLTYPE *ExecQuery)(
1525         ISWbemServices* This,
1526         BSTR strQuery,
1527         BSTR strQueryLanguage,
1528         LONG iFlags,
1529         IDispatch *objWbemNamedValueSet,
1530         ISWbemObjectSet **objWbemObjectSet);
1531 
1532     HRESULT (STDMETHODCALLTYPE *ExecQueryAsync)(
1533         ISWbemServices* This,
1534         IDispatch *objWbemSink,
1535         BSTR strQuery,
1536         BSTR strQueryLanguage,
1537         LONG lFlags,
1538         IDispatch *objWbemNamedValueSet,
1539         IDispatch *objWbemAsyncContext);
1540 
1541     HRESULT (STDMETHODCALLTYPE *AssociatorsOf)(
1542         ISWbemServices* This,
1543         BSTR strObjectPath,
1544         BSTR strAssocClass,
1545         BSTR strResultClass,
1546         BSTR strResultRole,
1547         BSTR strRole,
1548         VARIANT_BOOL bClassesOnly,
1549         VARIANT_BOOL bSchemaOnly,
1550         BSTR strRequiredAssocQualifier,
1551         BSTR strRequiredQualifier,
1552         LONG iFlags,
1553         IDispatch *objWbemNamedValueSet,
1554         ISWbemObjectSet **objWbemObjectSet);
1555 
1556     HRESULT (STDMETHODCALLTYPE *AssociatorsOfAsync)(
1557         ISWbemServices* This,
1558         IDispatch *objWbemSink,
1559         BSTR strObjectPath,
1560         BSTR strAssocClass,
1561         BSTR strResultClass,
1562         BSTR strResultRole,
1563         BSTR strRole,
1564         VARIANT_BOOL bClassesOnly,
1565         VARIANT_BOOL bSchemaOnly,
1566         BSTR strRequiredAssocQualifier,
1567         BSTR strRequiredQualifier,
1568         LONG iFlags,
1569         IDispatch *objWbemNamedValueSet,
1570         IDispatch *objWbemAsyncContext);
1571 
1572     HRESULT (STDMETHODCALLTYPE *ReferencesTo)(
1573         ISWbemServices* This,
1574         BSTR strObjectPath,
1575         BSTR strResultClass,
1576         BSTR strRole,
1577         VARIANT_BOOL bClassesOnly,
1578         VARIANT_BOOL bSchemaOnly,
1579         BSTR strRequiredQualifier,
1580         LONG iFlags,
1581         IDispatch *objWbemNamedValueSet,
1582         ISWbemObjectSet **objWbemObjectSet);
1583 
1584     HRESULT (STDMETHODCALLTYPE *ReferencesToAsync)(
1585         ISWbemServices* This,
1586         IDispatch *objWbemSink,
1587         BSTR strObjectPath,
1588         BSTR strResultClass,
1589         BSTR strRole,
1590         VARIANT_BOOL bClassesOnly,
1591         VARIANT_BOOL bSchemaOnly,
1592         BSTR strRequiredQualifier,
1593         LONG iFlags,
1594         IDispatch *objWbemNamedValueSet,
1595         IDispatch *objWbemAsyncContext);
1596 
1597     HRESULT (STDMETHODCALLTYPE *ExecNotificationQuery)(
1598         ISWbemServices* This,
1599         BSTR strQuery,
1600         BSTR strQueryLanguage,
1601         LONG iFlags,
1602         IDispatch *objWbemNamedValueSet,
1603         ISWbemEventSource **objWbemEventSource);
1604 
1605     HRESULT (STDMETHODCALLTYPE *ExecNotificationQueryAsync)(
1606         ISWbemServices* This,
1607         IDispatch *objWbemSink,
1608         BSTR strQuery,
1609         BSTR strQueryLanguage,
1610         LONG iFlags,
1611         IDispatch *objWbemNamedValueSet,
1612         IDispatch *objWbemAsyncContext);
1613 
1614     HRESULT (STDMETHODCALLTYPE *ExecMethod)(
1615         ISWbemServices* This,
1616         BSTR strObjectPath,
1617         BSTR strMethodName,
1618         IDispatch *objWbemInParameters,
1619         LONG iFlags,
1620         IDispatch *objWbemNamedValueSet,
1621         ISWbemObject **objWbemOutParameters);
1622 
1623     HRESULT (STDMETHODCALLTYPE *ExecMethodAsync)(
1624         ISWbemServices* This,
1625         IDispatch *objWbemSink,
1626         BSTR strObjectPath,
1627         BSTR strMethodName,
1628         IDispatch *objWbemInParameters,
1629         LONG iFlags,
1630         IDispatch *objWbemNamedValueSet,
1631         IDispatch *objWbemAsyncContext);
1632 
1633     HRESULT (STDMETHODCALLTYPE *get_Security_)(
1634         ISWbemServices* This,
1635         ISWbemSecurity **objWbemSecurity);
1636 
1637     END_INTERFACE
1638 } ISWbemServicesVtbl;
1639 interface ISWbemServices {
1640     CONST_VTBL ISWbemServicesVtbl* lpVtbl;
1641 };
1642 
1643 #ifdef COBJMACROS
1644 #ifndef WIDL_C_INLINE_WRAPPERS
1645 /*** IUnknown methods ***/
1646 #define ISWbemServices_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1647 #define ISWbemServices_AddRef(This) (This)->lpVtbl->AddRef(This)
1648 #define ISWbemServices_Release(This) (This)->lpVtbl->Release(This)
1649 /*** IDispatch methods ***/
1650 #define ISWbemServices_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1651 #define ISWbemServices_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1652 #define ISWbemServices_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1653 #define ISWbemServices_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1654 /*** ISWbemServices methods ***/
1655 #define ISWbemServices_Get(This,strObjectPath,iFlags,objWbemNamedValueSet,objWbemObject) (This)->lpVtbl->Get(This,strObjectPath,iFlags,objWbemNamedValueSet,objWbemObject)
1656 #define ISWbemServices_GetAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->GetAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
1657 #define ISWbemServices_Delete(This,strObjectPath,iFlags,objWbemNamedValueSet) (This)->lpVtbl->Delete(This,strObjectPath,iFlags,objWbemNamedValueSet)
1658 #define ISWbemServices_DeleteAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->DeleteAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
1659 #define ISWbemServices_InstancesOf(This,strClass,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->InstancesOf(This,strClass,iFlags,objWbemNamedValueSet,objWbemObjectSet)
1660 #define ISWbemServices_InstancesOfAsync(This,objWbemSink,strClass,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->InstancesOfAsync(This,objWbemSink,strClass,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
1661 #define ISWbemServices_SubclassesOf(This,strSuperclass,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->SubclassesOf(This,strSuperclass,iFlags,objWbemNamedValueSet,objWbemObjectSet)
1662 #define ISWbemServices_SubclassesOfAsync(This,objWbemSink,strSuperclass,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->SubclassesOfAsync(This,objWbemSink,strSuperclass,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
1663 #define ISWbemServices_ExecQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->ExecQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemObjectSet)
1664 #define ISWbemServices_ExecQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,lFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,lFlags,objWbemNamedValueSet,objWbemAsyncContext)
1665 #define ISWbemServices_AssociatorsOf(This,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->AssociatorsOf(This,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
1666 #define ISWbemServices_AssociatorsOfAsync(This,objWbemSink,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->AssociatorsOfAsync(This,objWbemSink,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
1667 #define ISWbemServices_ReferencesTo(This,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->ReferencesTo(This,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
1668 #define ISWbemServices_ReferencesToAsync(This,objWbemSink,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ReferencesToAsync(This,objWbemSink,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
1669 #define ISWbemServices_ExecNotificationQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemEventSource) (This)->lpVtbl->ExecNotificationQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemEventSource)
1670 #define ISWbemServices_ExecNotificationQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecNotificationQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
1671 #define ISWbemServices_ExecMethod(This,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters) (This)->lpVtbl->ExecMethod(This,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters)
1672 #define ISWbemServices_ExecMethodAsync(This,objWbemSink,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecMethodAsync(This,objWbemSink,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
1673 #define ISWbemServices_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
1674 #else
1675 /*** IUnknown methods ***/
1676 static FORCEINLINE HRESULT ISWbemServices_QueryInterface(ISWbemServices* This,REFIID riid,void **ppvObject) {
1677     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1678 }
1679 static FORCEINLINE ULONG ISWbemServices_AddRef(ISWbemServices* This) {
1680     return This->lpVtbl->AddRef(This);
1681 }
1682 static FORCEINLINE ULONG ISWbemServices_Release(ISWbemServices* This) {
1683     return This->lpVtbl->Release(This);
1684 }
1685 /*** IDispatch methods ***/
1686 static FORCEINLINE HRESULT ISWbemServices_GetTypeInfoCount(ISWbemServices* This,UINT *pctinfo) {
1687     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1688 }
1689 static FORCEINLINE HRESULT ISWbemServices_GetTypeInfo(ISWbemServices* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1690     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1691 }
1692 static FORCEINLINE HRESULT ISWbemServices_GetIDsOfNames(ISWbemServices* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1693     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1694 }
1695 static FORCEINLINE HRESULT ISWbemServices_Invoke(ISWbemServices* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1696     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1697 }
1698 /*** ISWbemServices methods ***/
1699 static FORCEINLINE HRESULT ISWbemServices_Get(ISWbemServices* This,BSTR strObjectPath,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObject **objWbemObject) {
1700     return This->lpVtbl->Get(This,strObjectPath,iFlags,objWbemNamedValueSet,objWbemObject);
1701 }
1702 static FORCEINLINE HRESULT ISWbemServices_GetAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strObjectPath,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1703     return This->lpVtbl->GetAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
1704 }
1705 static FORCEINLINE HRESULT ISWbemServices_Delete(ISWbemServices* This,BSTR strObjectPath,LONG iFlags,IDispatch *objWbemNamedValueSet) {
1706     return This->lpVtbl->Delete(This,strObjectPath,iFlags,objWbemNamedValueSet);
1707 }
1708 static FORCEINLINE HRESULT ISWbemServices_DeleteAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strObjectPath,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1709     return This->lpVtbl->DeleteAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
1710 }
1711 static FORCEINLINE HRESULT ISWbemServices_InstancesOf(ISWbemServices* This,BSTR strClass,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
1712     return This->lpVtbl->InstancesOf(This,strClass,iFlags,objWbemNamedValueSet,objWbemObjectSet);
1713 }
1714 static FORCEINLINE HRESULT ISWbemServices_InstancesOfAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strClass,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1715     return This->lpVtbl->InstancesOfAsync(This,objWbemSink,strClass,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
1716 }
1717 static FORCEINLINE HRESULT ISWbemServices_SubclassesOf(ISWbemServices* This,BSTR strSuperclass,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
1718     return This->lpVtbl->SubclassesOf(This,strSuperclass,iFlags,objWbemNamedValueSet,objWbemObjectSet);
1719 }
1720 static FORCEINLINE HRESULT ISWbemServices_SubclassesOfAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strSuperclass,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1721     return This->lpVtbl->SubclassesOfAsync(This,objWbemSink,strSuperclass,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
1722 }
1723 static FORCEINLINE HRESULT ISWbemServices_ExecQuery(ISWbemServices* This,BSTR strQuery,BSTR strQueryLanguage,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
1724     return This->lpVtbl->ExecQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemObjectSet);
1725 }
1726 static FORCEINLINE HRESULT ISWbemServices_ExecQueryAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strQuery,BSTR strQueryLanguage,LONG lFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1727     return This->lpVtbl->ExecQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,lFlags,objWbemNamedValueSet,objWbemAsyncContext);
1728 }
1729 static FORCEINLINE HRESULT ISWbemServices_AssociatorsOf(ISWbemServices* This,BSTR strObjectPath,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
1730     return This->lpVtbl->AssociatorsOf(This,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
1731 }
1732 static FORCEINLINE HRESULT ISWbemServices_AssociatorsOfAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strObjectPath,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1733     return This->lpVtbl->AssociatorsOfAsync(This,objWbemSink,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
1734 }
1735 static FORCEINLINE HRESULT ISWbemServices_ReferencesTo(ISWbemServices* This,BSTR strObjectPath,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
1736     return This->lpVtbl->ReferencesTo(This,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
1737 }
1738 static FORCEINLINE HRESULT ISWbemServices_ReferencesToAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strObjectPath,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1739     return This->lpVtbl->ReferencesToAsync(This,objWbemSink,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
1740 }
1741 static FORCEINLINE HRESULT ISWbemServices_ExecNotificationQuery(ISWbemServices* This,BSTR strQuery,BSTR strQueryLanguage,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemEventSource **objWbemEventSource) {
1742     return This->lpVtbl->ExecNotificationQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemEventSource);
1743 }
1744 static FORCEINLINE HRESULT ISWbemServices_ExecNotificationQueryAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strQuery,BSTR strQueryLanguage,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1745     return This->lpVtbl->ExecNotificationQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
1746 }
1747 static FORCEINLINE HRESULT ISWbemServices_ExecMethod(ISWbemServices* This,BSTR strObjectPath,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObject **objWbemOutParameters) {
1748     return This->lpVtbl->ExecMethod(This,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters);
1749 }
1750 static FORCEINLINE HRESULT ISWbemServices_ExecMethodAsync(ISWbemServices* This,IDispatch *objWbemSink,BSTR strObjectPath,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
1751     return This->lpVtbl->ExecMethodAsync(This,objWbemSink,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
1752 }
1753 static FORCEINLINE HRESULT ISWbemServices_get_Security_(ISWbemServices* This,ISWbemSecurity **objWbemSecurity) {
1754     return This->lpVtbl->get_Security_(This,objWbemSecurity);
1755 }
1756 #endif
1757 #endif
1758 
1759 #endif
1760 
1761 HRESULT STDMETHODCALLTYPE ISWbemServices_Get_Proxy(
1762     ISWbemServices* This,
1763     BSTR strObjectPath,
1764     LONG iFlags,
1765     IDispatch *objWbemNamedValueSet,
1766     ISWbemObject **objWbemObject);
1767 void __RPC_STUB ISWbemServices_Get_Stub(
1768     IRpcStubBuffer* This,
1769     IRpcChannelBuffer* pRpcChannelBuffer,
1770     PRPC_MESSAGE pRpcMessage,
1771     DWORD* pdwStubPhase);
1772 HRESULT STDMETHODCALLTYPE ISWbemServices_GetAsync_Proxy(
1773     ISWbemServices* This,
1774     IDispatch *objWbemSink,
1775     BSTR strObjectPath,
1776     LONG iFlags,
1777     IDispatch *objWbemNamedValueSet,
1778     IDispatch *objWbemAsyncContext);
1779 void __RPC_STUB ISWbemServices_GetAsync_Stub(
1780     IRpcStubBuffer* This,
1781     IRpcChannelBuffer* pRpcChannelBuffer,
1782     PRPC_MESSAGE pRpcMessage,
1783     DWORD* pdwStubPhase);
1784 HRESULT STDMETHODCALLTYPE ISWbemServices_Delete_Proxy(
1785     ISWbemServices* This,
1786     BSTR strObjectPath,
1787     LONG iFlags,
1788     IDispatch *objWbemNamedValueSet);
1789 void __RPC_STUB ISWbemServices_Delete_Stub(
1790     IRpcStubBuffer* This,
1791     IRpcChannelBuffer* pRpcChannelBuffer,
1792     PRPC_MESSAGE pRpcMessage,
1793     DWORD* pdwStubPhase);
1794 HRESULT STDMETHODCALLTYPE ISWbemServices_DeleteAsync_Proxy(
1795     ISWbemServices* This,
1796     IDispatch *objWbemSink,
1797     BSTR strObjectPath,
1798     LONG iFlags,
1799     IDispatch *objWbemNamedValueSet,
1800     IDispatch *objWbemAsyncContext);
1801 void __RPC_STUB ISWbemServices_DeleteAsync_Stub(
1802     IRpcStubBuffer* This,
1803     IRpcChannelBuffer* pRpcChannelBuffer,
1804     PRPC_MESSAGE pRpcMessage,
1805     DWORD* pdwStubPhase);
1806 HRESULT STDMETHODCALLTYPE ISWbemServices_InstancesOf_Proxy(
1807     ISWbemServices* This,
1808     BSTR strClass,
1809     LONG iFlags,
1810     IDispatch *objWbemNamedValueSet,
1811     ISWbemObjectSet **objWbemObjectSet);
1812 void __RPC_STUB ISWbemServices_InstancesOf_Stub(
1813     IRpcStubBuffer* This,
1814     IRpcChannelBuffer* pRpcChannelBuffer,
1815     PRPC_MESSAGE pRpcMessage,
1816     DWORD* pdwStubPhase);
1817 HRESULT STDMETHODCALLTYPE ISWbemServices_InstancesOfAsync_Proxy(
1818     ISWbemServices* This,
1819     IDispatch *objWbemSink,
1820     BSTR strClass,
1821     LONG iFlags,
1822     IDispatch *objWbemNamedValueSet,
1823     IDispatch *objWbemAsyncContext);
1824 void __RPC_STUB ISWbemServices_InstancesOfAsync_Stub(
1825     IRpcStubBuffer* This,
1826     IRpcChannelBuffer* pRpcChannelBuffer,
1827     PRPC_MESSAGE pRpcMessage,
1828     DWORD* pdwStubPhase);
1829 HRESULT STDMETHODCALLTYPE ISWbemServices_SubclassesOf_Proxy(
1830     ISWbemServices* This,
1831     BSTR strSuperclass,
1832     LONG iFlags,
1833     IDispatch *objWbemNamedValueSet,
1834     ISWbemObjectSet **objWbemObjectSet);
1835 void __RPC_STUB ISWbemServices_SubclassesOf_Stub(
1836     IRpcStubBuffer* This,
1837     IRpcChannelBuffer* pRpcChannelBuffer,
1838     PRPC_MESSAGE pRpcMessage,
1839     DWORD* pdwStubPhase);
1840 HRESULT STDMETHODCALLTYPE ISWbemServices_SubclassesOfAsync_Proxy(
1841     ISWbemServices* This,
1842     IDispatch *objWbemSink,
1843     BSTR strSuperclass,
1844     LONG iFlags,
1845     IDispatch *objWbemNamedValueSet,
1846     IDispatch *objWbemAsyncContext);
1847 void __RPC_STUB ISWbemServices_SubclassesOfAsync_Stub(
1848     IRpcStubBuffer* This,
1849     IRpcChannelBuffer* pRpcChannelBuffer,
1850     PRPC_MESSAGE pRpcMessage,
1851     DWORD* pdwStubPhase);
1852 HRESULT STDMETHODCALLTYPE ISWbemServices_ExecQuery_Proxy(
1853     ISWbemServices* This,
1854     BSTR strQuery,
1855     BSTR strQueryLanguage,
1856     LONG iFlags,
1857     IDispatch *objWbemNamedValueSet,
1858     ISWbemObjectSet **objWbemObjectSet);
1859 void __RPC_STUB ISWbemServices_ExecQuery_Stub(
1860     IRpcStubBuffer* This,
1861     IRpcChannelBuffer* pRpcChannelBuffer,
1862     PRPC_MESSAGE pRpcMessage,
1863     DWORD* pdwStubPhase);
1864 HRESULT STDMETHODCALLTYPE ISWbemServices_ExecQueryAsync_Proxy(
1865     ISWbemServices* This,
1866     IDispatch *objWbemSink,
1867     BSTR strQuery,
1868     BSTR strQueryLanguage,
1869     LONG lFlags,
1870     IDispatch *objWbemNamedValueSet,
1871     IDispatch *objWbemAsyncContext);
1872 void __RPC_STUB ISWbemServices_ExecQueryAsync_Stub(
1873     IRpcStubBuffer* This,
1874     IRpcChannelBuffer* pRpcChannelBuffer,
1875     PRPC_MESSAGE pRpcMessage,
1876     DWORD* pdwStubPhase);
1877 HRESULT STDMETHODCALLTYPE ISWbemServices_AssociatorsOf_Proxy(
1878     ISWbemServices* This,
1879     BSTR strObjectPath,
1880     BSTR strAssocClass,
1881     BSTR strResultClass,
1882     BSTR strResultRole,
1883     BSTR strRole,
1884     VARIANT_BOOL bClassesOnly,
1885     VARIANT_BOOL bSchemaOnly,
1886     BSTR strRequiredAssocQualifier,
1887     BSTR strRequiredQualifier,
1888     LONG iFlags,
1889     IDispatch *objWbemNamedValueSet,
1890     ISWbemObjectSet **objWbemObjectSet);
1891 void __RPC_STUB ISWbemServices_AssociatorsOf_Stub(
1892     IRpcStubBuffer* This,
1893     IRpcChannelBuffer* pRpcChannelBuffer,
1894     PRPC_MESSAGE pRpcMessage,
1895     DWORD* pdwStubPhase);
1896 HRESULT STDMETHODCALLTYPE ISWbemServices_AssociatorsOfAsync_Proxy(
1897     ISWbemServices* This,
1898     IDispatch *objWbemSink,
1899     BSTR strObjectPath,
1900     BSTR strAssocClass,
1901     BSTR strResultClass,
1902     BSTR strResultRole,
1903     BSTR strRole,
1904     VARIANT_BOOL bClassesOnly,
1905     VARIANT_BOOL bSchemaOnly,
1906     BSTR strRequiredAssocQualifier,
1907     BSTR strRequiredQualifier,
1908     LONG iFlags,
1909     IDispatch *objWbemNamedValueSet,
1910     IDispatch *objWbemAsyncContext);
1911 void __RPC_STUB ISWbemServices_AssociatorsOfAsync_Stub(
1912     IRpcStubBuffer* This,
1913     IRpcChannelBuffer* pRpcChannelBuffer,
1914     PRPC_MESSAGE pRpcMessage,
1915     DWORD* pdwStubPhase);
1916 HRESULT STDMETHODCALLTYPE ISWbemServices_ReferencesTo_Proxy(
1917     ISWbemServices* This,
1918     BSTR strObjectPath,
1919     BSTR strResultClass,
1920     BSTR strRole,
1921     VARIANT_BOOL bClassesOnly,
1922     VARIANT_BOOL bSchemaOnly,
1923     BSTR strRequiredQualifier,
1924     LONG iFlags,
1925     IDispatch *objWbemNamedValueSet,
1926     ISWbemObjectSet **objWbemObjectSet);
1927 void __RPC_STUB ISWbemServices_ReferencesTo_Stub(
1928     IRpcStubBuffer* This,
1929     IRpcChannelBuffer* pRpcChannelBuffer,
1930     PRPC_MESSAGE pRpcMessage,
1931     DWORD* pdwStubPhase);
1932 HRESULT STDMETHODCALLTYPE ISWbemServices_ReferencesToAsync_Proxy(
1933     ISWbemServices* This,
1934     IDispatch *objWbemSink,
1935     BSTR strObjectPath,
1936     BSTR strResultClass,
1937     BSTR strRole,
1938     VARIANT_BOOL bClassesOnly,
1939     VARIANT_BOOL bSchemaOnly,
1940     BSTR strRequiredQualifier,
1941     LONG iFlags,
1942     IDispatch *objWbemNamedValueSet,
1943     IDispatch *objWbemAsyncContext);
1944 void __RPC_STUB ISWbemServices_ReferencesToAsync_Stub(
1945     IRpcStubBuffer* This,
1946     IRpcChannelBuffer* pRpcChannelBuffer,
1947     PRPC_MESSAGE pRpcMessage,
1948     DWORD* pdwStubPhase);
1949 HRESULT STDMETHODCALLTYPE ISWbemServices_ExecNotificationQuery_Proxy(
1950     ISWbemServices* This,
1951     BSTR strQuery,
1952     BSTR strQueryLanguage,
1953     LONG iFlags,
1954     IDispatch *objWbemNamedValueSet,
1955     ISWbemEventSource **objWbemEventSource);
1956 void __RPC_STUB ISWbemServices_ExecNotificationQuery_Stub(
1957     IRpcStubBuffer* This,
1958     IRpcChannelBuffer* pRpcChannelBuffer,
1959     PRPC_MESSAGE pRpcMessage,
1960     DWORD* pdwStubPhase);
1961 HRESULT STDMETHODCALLTYPE ISWbemServices_ExecNotificationQueryAsync_Proxy(
1962     ISWbemServices* This,
1963     IDispatch *objWbemSink,
1964     BSTR strQuery,
1965     BSTR strQueryLanguage,
1966     LONG iFlags,
1967     IDispatch *objWbemNamedValueSet,
1968     IDispatch *objWbemAsyncContext);
1969 void __RPC_STUB ISWbemServices_ExecNotificationQueryAsync_Stub(
1970     IRpcStubBuffer* This,
1971     IRpcChannelBuffer* pRpcChannelBuffer,
1972     PRPC_MESSAGE pRpcMessage,
1973     DWORD* pdwStubPhase);
1974 HRESULT STDMETHODCALLTYPE ISWbemServices_ExecMethod_Proxy(
1975     ISWbemServices* This,
1976     BSTR strObjectPath,
1977     BSTR strMethodName,
1978     IDispatch *objWbemInParameters,
1979     LONG iFlags,
1980     IDispatch *objWbemNamedValueSet,
1981     ISWbemObject **objWbemOutParameters);
1982 void __RPC_STUB ISWbemServices_ExecMethod_Stub(
1983     IRpcStubBuffer* This,
1984     IRpcChannelBuffer* pRpcChannelBuffer,
1985     PRPC_MESSAGE pRpcMessage,
1986     DWORD* pdwStubPhase);
1987 HRESULT STDMETHODCALLTYPE ISWbemServices_ExecMethodAsync_Proxy(
1988     ISWbemServices* This,
1989     IDispatch *objWbemSink,
1990     BSTR strObjectPath,
1991     BSTR strMethodName,
1992     IDispatch *objWbemInParameters,
1993     LONG iFlags,
1994     IDispatch *objWbemNamedValueSet,
1995     IDispatch *objWbemAsyncContext);
1996 void __RPC_STUB ISWbemServices_ExecMethodAsync_Stub(
1997     IRpcStubBuffer* This,
1998     IRpcChannelBuffer* pRpcChannelBuffer,
1999     PRPC_MESSAGE pRpcMessage,
2000     DWORD* pdwStubPhase);
2001 HRESULT STDMETHODCALLTYPE ISWbemServices_get_Security__Proxy(
2002     ISWbemServices* This,
2003     ISWbemSecurity **objWbemSecurity);
2004 void __RPC_STUB ISWbemServices_get_Security__Stub(
2005     IRpcStubBuffer* This,
2006     IRpcChannelBuffer* pRpcChannelBuffer,
2007     PRPC_MESSAGE pRpcMessage,
2008     DWORD* pdwStubPhase);
2009 
2010 #endif  /* __ISWbemServices_INTERFACE_DEFINED__ */
2011 
2012 /*****************************************************************************
2013  * ISWbemServicesEx interface
2014  */
2015 #ifndef __ISWbemServicesEx_INTERFACE_DEFINED__
2016 #define __ISWbemServicesEx_INTERFACE_DEFINED__
2017 
2018 DEFINE_GUID(IID_ISWbemServicesEx, 0xd2f68443, 0x85dc, 0x427e, 0x91,0xd8, 0x36,0x65,0x54,0xcc,0x75,0x4c);
2019 #if defined(__cplusplus) && !defined(CINTERFACE)
2020 MIDL_INTERFACE("d2f68443-85dc-427e-91d8-366554cc754c")
2021 ISWbemServicesEx : public ISWbemServices
2022 {
2023     virtual HRESULT STDMETHODCALLTYPE Put(
2024         ISWbemObjectEx *objWbemObject,
2025         LONG iFlags = wbemChangeFlagCreateOrUpdate,
2026         IDispatch *objWbemNamedValueSet = 0,
2027         ISWbemObjectPath **objWbemObjectPath = 0) = 0;
2028 
2029     virtual HRESULT STDMETHODCALLTYPE PutAsync(
2030         ISWbemSink *objWbemSink,
2031         ISWbemObjectEx *objWbemObject,
2032         LONG iFlags = wbemChangeFlagCreateOrUpdate,
2033         IDispatch *objWbemNamedValueSet = 0,
2034         IDispatch *objWbemAsyncContext = 0) = 0;
2035 
2036 };
2037 #ifdef __CRT_UUID_DECL
2038 __CRT_UUID_DECL(ISWbemServicesEx, 0xd2f68443, 0x85dc, 0x427e, 0x91,0xd8, 0x36,0x65,0x54,0xcc,0x75,0x4c)
2039 #endif
2040 #else
2041 typedef struct ISWbemServicesExVtbl {
2042     BEGIN_INTERFACE
2043 
2044     /*** IUnknown methods ***/
2045     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2046         ISWbemServicesEx* This,
2047         REFIID riid,
2048         void **ppvObject);
2049 
2050     ULONG (STDMETHODCALLTYPE *AddRef)(
2051         ISWbemServicesEx* This);
2052 
2053     ULONG (STDMETHODCALLTYPE *Release)(
2054         ISWbemServicesEx* This);
2055 
2056     /*** IDispatch methods ***/
2057     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2058         ISWbemServicesEx* This,
2059         UINT *pctinfo);
2060 
2061     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2062         ISWbemServicesEx* This,
2063         UINT iTInfo,
2064         LCID lcid,
2065         ITypeInfo **ppTInfo);
2066 
2067     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2068         ISWbemServicesEx* This,
2069         REFIID riid,
2070         LPOLESTR *rgszNames,
2071         UINT cNames,
2072         LCID lcid,
2073         DISPID *rgDispId);
2074 
2075     HRESULT (STDMETHODCALLTYPE *Invoke)(
2076         ISWbemServicesEx* This,
2077         DISPID dispIdMember,
2078         REFIID riid,
2079         LCID lcid,
2080         WORD wFlags,
2081         DISPPARAMS *pDispParams,
2082         VARIANT *pVarResult,
2083         EXCEPINFO *pExcepInfo,
2084         UINT *puArgErr);
2085 
2086     /*** ISWbemServices methods ***/
2087     HRESULT (STDMETHODCALLTYPE *Get)(
2088         ISWbemServicesEx* This,
2089         BSTR strObjectPath,
2090         LONG iFlags,
2091         IDispatch *objWbemNamedValueSet,
2092         ISWbemObject **objWbemObject);
2093 
2094     HRESULT (STDMETHODCALLTYPE *GetAsync)(
2095         ISWbemServicesEx* This,
2096         IDispatch *objWbemSink,
2097         BSTR strObjectPath,
2098         LONG iFlags,
2099         IDispatch *objWbemNamedValueSet,
2100         IDispatch *objWbemAsyncContext);
2101 
2102     HRESULT (STDMETHODCALLTYPE *Delete)(
2103         ISWbemServicesEx* This,
2104         BSTR strObjectPath,
2105         LONG iFlags,
2106         IDispatch *objWbemNamedValueSet);
2107 
2108     HRESULT (STDMETHODCALLTYPE *DeleteAsync)(
2109         ISWbemServicesEx* This,
2110         IDispatch *objWbemSink,
2111         BSTR strObjectPath,
2112         LONG iFlags,
2113         IDispatch *objWbemNamedValueSet,
2114         IDispatch *objWbemAsyncContext);
2115 
2116     HRESULT (STDMETHODCALLTYPE *InstancesOf)(
2117         ISWbemServicesEx* This,
2118         BSTR strClass,
2119         LONG iFlags,
2120         IDispatch *objWbemNamedValueSet,
2121         ISWbemObjectSet **objWbemObjectSet);
2122 
2123     HRESULT (STDMETHODCALLTYPE *InstancesOfAsync)(
2124         ISWbemServicesEx* This,
2125         IDispatch *objWbemSink,
2126         BSTR strClass,
2127         LONG iFlags,
2128         IDispatch *objWbemNamedValueSet,
2129         IDispatch *objWbemAsyncContext);
2130 
2131     HRESULT (STDMETHODCALLTYPE *SubclassesOf)(
2132         ISWbemServicesEx* This,
2133         BSTR strSuperclass,
2134         LONG iFlags,
2135         IDispatch *objWbemNamedValueSet,
2136         ISWbemObjectSet **objWbemObjectSet);
2137 
2138     HRESULT (STDMETHODCALLTYPE *SubclassesOfAsync)(
2139         ISWbemServicesEx* This,
2140         IDispatch *objWbemSink,
2141         BSTR strSuperclass,
2142         LONG iFlags,
2143         IDispatch *objWbemNamedValueSet,
2144         IDispatch *objWbemAsyncContext);
2145 
2146     HRESULT (STDMETHODCALLTYPE *ExecQuery)(
2147         ISWbemServicesEx* This,
2148         BSTR strQuery,
2149         BSTR strQueryLanguage,
2150         LONG iFlags,
2151         IDispatch *objWbemNamedValueSet,
2152         ISWbemObjectSet **objWbemObjectSet);
2153 
2154     HRESULT (STDMETHODCALLTYPE *ExecQueryAsync)(
2155         ISWbemServicesEx* This,
2156         IDispatch *objWbemSink,
2157         BSTR strQuery,
2158         BSTR strQueryLanguage,
2159         LONG lFlags,
2160         IDispatch *objWbemNamedValueSet,
2161         IDispatch *objWbemAsyncContext);
2162 
2163     HRESULT (STDMETHODCALLTYPE *AssociatorsOf)(
2164         ISWbemServicesEx* This,
2165         BSTR strObjectPath,
2166         BSTR strAssocClass,
2167         BSTR strResultClass,
2168         BSTR strResultRole,
2169         BSTR strRole,
2170         VARIANT_BOOL bClassesOnly,
2171         VARIANT_BOOL bSchemaOnly,
2172         BSTR strRequiredAssocQualifier,
2173         BSTR strRequiredQualifier,
2174         LONG iFlags,
2175         IDispatch *objWbemNamedValueSet,
2176         ISWbemObjectSet **objWbemObjectSet);
2177 
2178     HRESULT (STDMETHODCALLTYPE *AssociatorsOfAsync)(
2179         ISWbemServicesEx* This,
2180         IDispatch *objWbemSink,
2181         BSTR strObjectPath,
2182         BSTR strAssocClass,
2183         BSTR strResultClass,
2184         BSTR strResultRole,
2185         BSTR strRole,
2186         VARIANT_BOOL bClassesOnly,
2187         VARIANT_BOOL bSchemaOnly,
2188         BSTR strRequiredAssocQualifier,
2189         BSTR strRequiredQualifier,
2190         LONG iFlags,
2191         IDispatch *objWbemNamedValueSet,
2192         IDispatch *objWbemAsyncContext);
2193 
2194     HRESULT (STDMETHODCALLTYPE *ReferencesTo)(
2195         ISWbemServicesEx* This,
2196         BSTR strObjectPath,
2197         BSTR strResultClass,
2198         BSTR strRole,
2199         VARIANT_BOOL bClassesOnly,
2200         VARIANT_BOOL bSchemaOnly,
2201         BSTR strRequiredQualifier,
2202         LONG iFlags,
2203         IDispatch *objWbemNamedValueSet,
2204         ISWbemObjectSet **objWbemObjectSet);
2205 
2206     HRESULT (STDMETHODCALLTYPE *ReferencesToAsync)(
2207         ISWbemServicesEx* This,
2208         IDispatch *objWbemSink,
2209         BSTR strObjectPath,
2210         BSTR strResultClass,
2211         BSTR strRole,
2212         VARIANT_BOOL bClassesOnly,
2213         VARIANT_BOOL bSchemaOnly,
2214         BSTR strRequiredQualifier,
2215         LONG iFlags,
2216         IDispatch *objWbemNamedValueSet,
2217         IDispatch *objWbemAsyncContext);
2218 
2219     HRESULT (STDMETHODCALLTYPE *ExecNotificationQuery)(
2220         ISWbemServicesEx* This,
2221         BSTR strQuery,
2222         BSTR strQueryLanguage,
2223         LONG iFlags,
2224         IDispatch *objWbemNamedValueSet,
2225         ISWbemEventSource **objWbemEventSource);
2226 
2227     HRESULT (STDMETHODCALLTYPE *ExecNotificationQueryAsync)(
2228         ISWbemServicesEx* This,
2229         IDispatch *objWbemSink,
2230         BSTR strQuery,
2231         BSTR strQueryLanguage,
2232         LONG iFlags,
2233         IDispatch *objWbemNamedValueSet,
2234         IDispatch *objWbemAsyncContext);
2235 
2236     HRESULT (STDMETHODCALLTYPE *ExecMethod)(
2237         ISWbemServicesEx* This,
2238         BSTR strObjectPath,
2239         BSTR strMethodName,
2240         IDispatch *objWbemInParameters,
2241         LONG iFlags,
2242         IDispatch *objWbemNamedValueSet,
2243         ISWbemObject **objWbemOutParameters);
2244 
2245     HRESULT (STDMETHODCALLTYPE *ExecMethodAsync)(
2246         ISWbemServicesEx* This,
2247         IDispatch *objWbemSink,
2248         BSTR strObjectPath,
2249         BSTR strMethodName,
2250         IDispatch *objWbemInParameters,
2251         LONG iFlags,
2252         IDispatch *objWbemNamedValueSet,
2253         IDispatch *objWbemAsyncContext);
2254 
2255     HRESULT (STDMETHODCALLTYPE *get_Security_)(
2256         ISWbemServicesEx* This,
2257         ISWbemSecurity **objWbemSecurity);
2258 
2259     /*** ISWbemServicesEx methods ***/
2260     HRESULT (STDMETHODCALLTYPE *Put)(
2261         ISWbemServicesEx* This,
2262         ISWbemObjectEx *objWbemObject,
2263         LONG iFlags,
2264         IDispatch *objWbemNamedValueSet,
2265         ISWbemObjectPath **objWbemObjectPath);
2266 
2267     HRESULT (STDMETHODCALLTYPE *PutAsync)(
2268         ISWbemServicesEx* This,
2269         ISWbemSink *objWbemSink,
2270         ISWbemObjectEx *objWbemObject,
2271         LONG iFlags,
2272         IDispatch *objWbemNamedValueSet,
2273         IDispatch *objWbemAsyncContext);
2274 
2275     END_INTERFACE
2276 } ISWbemServicesExVtbl;
2277 interface ISWbemServicesEx {
2278     CONST_VTBL ISWbemServicesExVtbl* lpVtbl;
2279 };
2280 
2281 #ifdef COBJMACROS
2282 #ifndef WIDL_C_INLINE_WRAPPERS
2283 /*** IUnknown methods ***/
2284 #define ISWbemServicesEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2285 #define ISWbemServicesEx_AddRef(This) (This)->lpVtbl->AddRef(This)
2286 #define ISWbemServicesEx_Release(This) (This)->lpVtbl->Release(This)
2287 /*** IDispatch methods ***/
2288 #define ISWbemServicesEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2289 #define ISWbemServicesEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2290 #define ISWbemServicesEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2291 #define ISWbemServicesEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2292 /*** ISWbemServices methods ***/
2293 #define ISWbemServicesEx_Get(This,strObjectPath,iFlags,objWbemNamedValueSet,objWbemObject) (This)->lpVtbl->Get(This,strObjectPath,iFlags,objWbemNamedValueSet,objWbemObject)
2294 #define ISWbemServicesEx_GetAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->GetAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2295 #define ISWbemServicesEx_Delete(This,strObjectPath,iFlags,objWbemNamedValueSet) (This)->lpVtbl->Delete(This,strObjectPath,iFlags,objWbemNamedValueSet)
2296 #define ISWbemServicesEx_DeleteAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->DeleteAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2297 #define ISWbemServicesEx_InstancesOf(This,strClass,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->InstancesOf(This,strClass,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2298 #define ISWbemServicesEx_InstancesOfAsync(This,objWbemSink,strClass,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->InstancesOfAsync(This,objWbemSink,strClass,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2299 #define ISWbemServicesEx_SubclassesOf(This,strSuperclass,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->SubclassesOf(This,strSuperclass,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2300 #define ISWbemServicesEx_SubclassesOfAsync(This,objWbemSink,strSuperclass,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->SubclassesOfAsync(This,objWbemSink,strSuperclass,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2301 #define ISWbemServicesEx_ExecQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->ExecQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2302 #define ISWbemServicesEx_ExecQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,lFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,lFlags,objWbemNamedValueSet,objWbemAsyncContext)
2303 #define ISWbemServicesEx_AssociatorsOf(This,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->AssociatorsOf(This,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2304 #define ISWbemServicesEx_AssociatorsOfAsync(This,objWbemSink,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->AssociatorsOfAsync(This,objWbemSink,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2305 #define ISWbemServicesEx_ReferencesTo(This,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->ReferencesTo(This,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2306 #define ISWbemServicesEx_ReferencesToAsync(This,objWbemSink,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ReferencesToAsync(This,objWbemSink,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2307 #define ISWbemServicesEx_ExecNotificationQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemEventSource) (This)->lpVtbl->ExecNotificationQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemEventSource)
2308 #define ISWbemServicesEx_ExecNotificationQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecNotificationQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2309 #define ISWbemServicesEx_ExecMethod(This,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters) (This)->lpVtbl->ExecMethod(This,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters)
2310 #define ISWbemServicesEx_ExecMethodAsync(This,objWbemSink,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecMethodAsync(This,objWbemSink,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2311 #define ISWbemServicesEx_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
2312 /*** ISWbemServicesEx methods ***/
2313 #define ISWbemServicesEx_Put(This,objWbemObject,iFlags,objWbemNamedValueSet,objWbemObjectPath) (This)->lpVtbl->Put(This,objWbemObject,iFlags,objWbemNamedValueSet,objWbemObjectPath)
2314 #define ISWbemServicesEx_PutAsync(This,objWbemSink,objWbemObject,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->PutAsync(This,objWbemSink,objWbemObject,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2315 #else
2316 /*** IUnknown methods ***/
2317 static FORCEINLINE HRESULT ISWbemServicesEx_QueryInterface(ISWbemServicesEx* This,REFIID riid,void **ppvObject) {
2318     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2319 }
2320 static FORCEINLINE ULONG ISWbemServicesEx_AddRef(ISWbemServicesEx* This) {
2321     return This->lpVtbl->AddRef(This);
2322 }
2323 static FORCEINLINE ULONG ISWbemServicesEx_Release(ISWbemServicesEx* This) {
2324     return This->lpVtbl->Release(This);
2325 }
2326 /*** IDispatch methods ***/
2327 static FORCEINLINE HRESULT ISWbemServicesEx_GetTypeInfoCount(ISWbemServicesEx* This,UINT *pctinfo) {
2328     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2329 }
2330 static FORCEINLINE HRESULT ISWbemServicesEx_GetTypeInfo(ISWbemServicesEx* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2331     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2332 }
2333 static FORCEINLINE HRESULT ISWbemServicesEx_GetIDsOfNames(ISWbemServicesEx* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2334     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2335 }
2336 static FORCEINLINE HRESULT ISWbemServicesEx_Invoke(ISWbemServicesEx* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2337     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2338 }
2339 /*** ISWbemServices methods ***/
2340 static FORCEINLINE HRESULT ISWbemServicesEx_Get(ISWbemServicesEx* This,BSTR strObjectPath,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObject **objWbemObject) {
2341     return This->lpVtbl->Get(This,strObjectPath,iFlags,objWbemNamedValueSet,objWbemObject);
2342 }
2343 static FORCEINLINE HRESULT ISWbemServicesEx_GetAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strObjectPath,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2344     return This->lpVtbl->GetAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2345 }
2346 static FORCEINLINE HRESULT ISWbemServicesEx_Delete(ISWbemServicesEx* This,BSTR strObjectPath,LONG iFlags,IDispatch *objWbemNamedValueSet) {
2347     return This->lpVtbl->Delete(This,strObjectPath,iFlags,objWbemNamedValueSet);
2348 }
2349 static FORCEINLINE HRESULT ISWbemServicesEx_DeleteAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strObjectPath,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2350     return This->lpVtbl->DeleteAsync(This,objWbemSink,strObjectPath,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2351 }
2352 static FORCEINLINE HRESULT ISWbemServicesEx_InstancesOf(ISWbemServicesEx* This,BSTR strClass,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2353     return This->lpVtbl->InstancesOf(This,strClass,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2354 }
2355 static FORCEINLINE HRESULT ISWbemServicesEx_InstancesOfAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strClass,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2356     return This->lpVtbl->InstancesOfAsync(This,objWbemSink,strClass,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2357 }
2358 static FORCEINLINE HRESULT ISWbemServicesEx_SubclassesOf(ISWbemServicesEx* This,BSTR strSuperclass,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2359     return This->lpVtbl->SubclassesOf(This,strSuperclass,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2360 }
2361 static FORCEINLINE HRESULT ISWbemServicesEx_SubclassesOfAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strSuperclass,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2362     return This->lpVtbl->SubclassesOfAsync(This,objWbemSink,strSuperclass,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2363 }
2364 static FORCEINLINE HRESULT ISWbemServicesEx_ExecQuery(ISWbemServicesEx* This,BSTR strQuery,BSTR strQueryLanguage,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2365     return This->lpVtbl->ExecQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2366 }
2367 static FORCEINLINE HRESULT ISWbemServicesEx_ExecQueryAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strQuery,BSTR strQueryLanguage,LONG lFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2368     return This->lpVtbl->ExecQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,lFlags,objWbemNamedValueSet,objWbemAsyncContext);
2369 }
2370 static FORCEINLINE HRESULT ISWbemServicesEx_AssociatorsOf(ISWbemServicesEx* This,BSTR strObjectPath,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2371     return This->lpVtbl->AssociatorsOf(This,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2372 }
2373 static FORCEINLINE HRESULT ISWbemServicesEx_AssociatorsOfAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strObjectPath,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2374     return This->lpVtbl->AssociatorsOfAsync(This,objWbemSink,strObjectPath,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2375 }
2376 static FORCEINLINE HRESULT ISWbemServicesEx_ReferencesTo(ISWbemServicesEx* This,BSTR strObjectPath,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2377     return This->lpVtbl->ReferencesTo(This,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2378 }
2379 static FORCEINLINE HRESULT ISWbemServicesEx_ReferencesToAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strObjectPath,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2380     return This->lpVtbl->ReferencesToAsync(This,objWbemSink,strObjectPath,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2381 }
2382 static FORCEINLINE HRESULT ISWbemServicesEx_ExecNotificationQuery(ISWbemServicesEx* This,BSTR strQuery,BSTR strQueryLanguage,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemEventSource **objWbemEventSource) {
2383     return This->lpVtbl->ExecNotificationQuery(This,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemEventSource);
2384 }
2385 static FORCEINLINE HRESULT ISWbemServicesEx_ExecNotificationQueryAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strQuery,BSTR strQueryLanguage,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2386     return This->lpVtbl->ExecNotificationQueryAsync(This,objWbemSink,strQuery,strQueryLanguage,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2387 }
2388 static FORCEINLINE HRESULT ISWbemServicesEx_ExecMethod(ISWbemServicesEx* This,BSTR strObjectPath,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObject **objWbemOutParameters) {
2389     return This->lpVtbl->ExecMethod(This,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters);
2390 }
2391 static FORCEINLINE HRESULT ISWbemServicesEx_ExecMethodAsync(ISWbemServicesEx* This,IDispatch *objWbemSink,BSTR strObjectPath,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2392     return This->lpVtbl->ExecMethodAsync(This,objWbemSink,strObjectPath,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2393 }
2394 static FORCEINLINE HRESULT ISWbemServicesEx_get_Security_(ISWbemServicesEx* This,ISWbemSecurity **objWbemSecurity) {
2395     return This->lpVtbl->get_Security_(This,objWbemSecurity);
2396 }
2397 /*** ISWbemServicesEx methods ***/
2398 static FORCEINLINE HRESULT ISWbemServicesEx_Put(ISWbemServicesEx* This,ISWbemObjectEx *objWbemObject,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectPath **objWbemObjectPath) {
2399     return This->lpVtbl->Put(This,objWbemObject,iFlags,objWbemNamedValueSet,objWbemObjectPath);
2400 }
2401 static FORCEINLINE HRESULT ISWbemServicesEx_PutAsync(ISWbemServicesEx* This,ISWbemSink *objWbemSink,ISWbemObjectEx *objWbemObject,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2402     return This->lpVtbl->PutAsync(This,objWbemSink,objWbemObject,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2403 }
2404 #endif
2405 #endif
2406 
2407 #endif
2408 
2409 HRESULT STDMETHODCALLTYPE ISWbemServicesEx_Put_Proxy(
2410     ISWbemServicesEx* This,
2411     ISWbemObjectEx *objWbemObject,
2412     LONG iFlags,
2413     IDispatch *objWbemNamedValueSet,
2414     ISWbemObjectPath **objWbemObjectPath);
2415 void __RPC_STUB ISWbemServicesEx_Put_Stub(
2416     IRpcStubBuffer* This,
2417     IRpcChannelBuffer* pRpcChannelBuffer,
2418     PRPC_MESSAGE pRpcMessage,
2419     DWORD* pdwStubPhase);
2420 HRESULT STDMETHODCALLTYPE ISWbemServicesEx_PutAsync_Proxy(
2421     ISWbemServicesEx* This,
2422     ISWbemSink *objWbemSink,
2423     ISWbemObjectEx *objWbemObject,
2424     LONG iFlags,
2425     IDispatch *objWbemNamedValueSet,
2426     IDispatch *objWbemAsyncContext);
2427 void __RPC_STUB ISWbemServicesEx_PutAsync_Stub(
2428     IRpcStubBuffer* This,
2429     IRpcChannelBuffer* pRpcChannelBuffer,
2430     PRPC_MESSAGE pRpcMessage,
2431     DWORD* pdwStubPhase);
2432 
2433 #endif  /* __ISWbemServicesEx_INTERFACE_DEFINED__ */
2434 
2435 /*****************************************************************************
2436  * ISWbemObject interface
2437  */
2438 #ifndef __ISWbemObject_INTERFACE_DEFINED__
2439 #define __ISWbemObject_INTERFACE_DEFINED__
2440 
2441 DEFINE_GUID(IID_ISWbemObject, 0x76a6415a, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6);
2442 #if defined(__cplusplus) && !defined(CINTERFACE)
2443 MIDL_INTERFACE("76a6415a-cb41-11d1-8b02-00600806d9b6")
2444 ISWbemObject : public IDispatch
2445 {
2446     virtual HRESULT STDMETHODCALLTYPE Put_(
2447         LONG iFlags = wbemChangeFlagCreateOrUpdate,
2448         IDispatch *objWbemNamedValueSet = 0,
2449         ISWbemObjectPath **objWbemObjectPath = 0) = 0;
2450 
2451     virtual HRESULT STDMETHODCALLTYPE PutAsync_(
2452         IDispatch *objWbemSink,
2453         LONG iFlags = wbemChangeFlagCreateOrUpdate,
2454         IDispatch *objWbemNamedValueSet = 0,
2455         IDispatch *objWbemAsyncContext = 0) = 0;
2456 
2457     virtual HRESULT STDMETHODCALLTYPE Delete_(
2458         LONG iFlags = 0,
2459         IDispatch *objWbemNamedValueSet = 0) = 0;
2460 
2461     virtual HRESULT STDMETHODCALLTYPE DeleteAsync_(
2462         IDispatch *objWbemSink,
2463         LONG iFlags = 0,
2464         IDispatch *objWbemNamedValueSet = 0,
2465         IDispatch *objWbemAsyncContext = 0) = 0;
2466 
2467     virtual HRESULT STDMETHODCALLTYPE Instances_(
2468         LONG iFlags = wbemFlagReturnImmediately,
2469         IDispatch *objWbemNamedValueSet = 0,
2470         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
2471 
2472     virtual HRESULT STDMETHODCALLTYPE InstancesAsync_(
2473         IDispatch *objWbemSink,
2474         LONG iFlags = 0,
2475         IDispatch *objWbemNamedValueSet = 0,
2476         IDispatch *objWbemAsyncContext = 0) = 0;
2477 
2478     virtual HRESULT STDMETHODCALLTYPE Subclasses_(
2479         LONG iFlags = wbemFlagReturnImmediately | wbemQueryFlagDeep,
2480         IDispatch *objWbemNamedValueSet = 0,
2481         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
2482 
2483     virtual HRESULT STDMETHODCALLTYPE SubclassesAsync_(
2484         IDispatch *objWbemSink,
2485         LONG iFlags = wbemQueryFlagDeep,
2486         IDispatch *objWbemNamedValueSet = 0,
2487         IDispatch *objWbemAsyncContext = 0) = 0;
2488 
2489     virtual HRESULT STDMETHODCALLTYPE Associators_(
2490         BSTR strAssocClass = L"",
2491         BSTR strResultClass = L"",
2492         BSTR strResultRole = L"",
2493         BSTR strRole = L"",
2494         VARIANT_BOOL bClassesOnly = FALSE,
2495         VARIANT_BOOL bSchemaOnly = FALSE,
2496         BSTR strRequiredAssocQualifier = L"",
2497         BSTR strRequiredQualifier = L"",
2498         LONG iFlags = wbemFlagReturnImmediately,
2499         IDispatch *objWbemNamedValueSet = 0,
2500         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
2501 
2502     virtual HRESULT STDMETHODCALLTYPE AssociatorsAsync_(
2503         IDispatch *objWbemSink,
2504         BSTR strAssocClass = L"",
2505         BSTR strResultClass = L"",
2506         BSTR strResultRole = L"",
2507         BSTR strRole = L"",
2508         VARIANT_BOOL bClassesOnly = FALSE,
2509         VARIANT_BOOL bSchemaOnly = FALSE,
2510         BSTR strRequiredAssocQualifier = L"",
2511         BSTR strRequiredQualifier = L"",
2512         LONG iFlags = 0,
2513         IDispatch *objWbemNamedValueSet = 0,
2514         IDispatch *objWbemAsyncContext = 0) = 0;
2515 
2516     virtual HRESULT STDMETHODCALLTYPE References_(
2517         BSTR strResultClass = L"",
2518         BSTR strRole = L"",
2519         VARIANT_BOOL bClassesOnly = FALSE,
2520         VARIANT_BOOL bSchemaOnly = FALSE,
2521         BSTR strRequiredQualifier = L"",
2522         LONG iFlags = wbemFlagReturnImmediately,
2523         IDispatch *objWbemNamedValueSet = 0,
2524         ISWbemObjectSet **objWbemObjectSet = 0) = 0;
2525 
2526     virtual HRESULT STDMETHODCALLTYPE ReferencesAsync_(
2527         IDispatch *objWbemSink,
2528         BSTR strResultClass = L"",
2529         BSTR strRole = L"",
2530         VARIANT_BOOL bClassesOnly = FALSE,
2531         VARIANT_BOOL bSchemaOnly = FALSE,
2532         BSTR strRequiredQualifier = L"",
2533         LONG iFlags = 0,
2534         IDispatch *objWbemNamedValueSet = 0,
2535         IDispatch *objWbemAsyncContext = 0) = 0;
2536 
2537     virtual HRESULT STDMETHODCALLTYPE ExecMethod_(
2538         BSTR strMethodName,
2539         IDispatch *objWbemInParameters = 0,
2540         LONG iFlags = 0,
2541         IDispatch *objWbemNamedValueSet = 0,
2542         ISWbemObject **objWbemOutParameters = 0) = 0;
2543 
2544     virtual HRESULT STDMETHODCALLTYPE ExecMethodAsync_(
2545         IDispatch *objWbemSink,
2546         BSTR strMethodName,
2547         IDispatch *objWbemInParameters = 0,
2548         LONG iFlags = 0,
2549         IDispatch *objWbemNamedValueSet = 0,
2550         IDispatch *objWbemAsyncContext = 0) = 0;
2551 
2552     virtual HRESULT STDMETHODCALLTYPE Clone_(
2553         ISWbemObject **objWbemObject) = 0;
2554 
2555     virtual HRESULT STDMETHODCALLTYPE GetObjectText_(
2556         LONG iFlags = 0,
2557         BSTR *strObjectText = 0) = 0;
2558 
2559     virtual HRESULT STDMETHODCALLTYPE SpawnDerivedClass_(
2560         LONG iFlags = 0,
2561         ISWbemObject **objWbemObject = 0) = 0;
2562 
2563     virtual HRESULT STDMETHODCALLTYPE SpawnInstance_(
2564         LONG iFlags = 0,
2565         ISWbemObject **objWbemObject = 0) = 0;
2566 
2567     virtual HRESULT STDMETHODCALLTYPE CompareTo_(
2568         IDispatch *objWbemObject,
2569         LONG iFlags = wbemComparisonFlagIncludeAll,
2570         VARIANT_BOOL *bResult = 0) = 0;
2571 
2572     virtual HRESULT STDMETHODCALLTYPE get_Qualifiers_(
2573         ISWbemQualifierSet **objWbemQualifierSet) = 0;
2574 
2575     virtual HRESULT STDMETHODCALLTYPE get_Properties_(
2576         ISWbemPropertySet **objWbemPropertySet) = 0;
2577 
2578     virtual HRESULT STDMETHODCALLTYPE get_Methods_(
2579         ISWbemMethodSet **objWbemMethodSet) = 0;
2580 
2581     virtual HRESULT STDMETHODCALLTYPE get_Derivation_(
2582         VARIANT *strClassNameArray) = 0;
2583 
2584     virtual HRESULT STDMETHODCALLTYPE get_Path_(
2585         ISWbemObjectPath **objWbemObjectPath) = 0;
2586 
2587     virtual HRESULT STDMETHODCALLTYPE get_Security_(
2588         ISWbemSecurity **objWbemSecurity) = 0;
2589 
2590 };
2591 #ifdef __CRT_UUID_DECL
2592 __CRT_UUID_DECL(ISWbemObject, 0x76a6415a, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6)
2593 #endif
2594 #else
2595 typedef struct ISWbemObjectVtbl {
2596     BEGIN_INTERFACE
2597 
2598     /*** IUnknown methods ***/
2599     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2600         ISWbemObject* This,
2601         REFIID riid,
2602         void **ppvObject);
2603 
2604     ULONG (STDMETHODCALLTYPE *AddRef)(
2605         ISWbemObject* This);
2606 
2607     ULONG (STDMETHODCALLTYPE *Release)(
2608         ISWbemObject* This);
2609 
2610     /*** IDispatch methods ***/
2611     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2612         ISWbemObject* This,
2613         UINT *pctinfo);
2614 
2615     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2616         ISWbemObject* This,
2617         UINT iTInfo,
2618         LCID lcid,
2619         ITypeInfo **ppTInfo);
2620 
2621     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2622         ISWbemObject* This,
2623         REFIID riid,
2624         LPOLESTR *rgszNames,
2625         UINT cNames,
2626         LCID lcid,
2627         DISPID *rgDispId);
2628 
2629     HRESULT (STDMETHODCALLTYPE *Invoke)(
2630         ISWbemObject* This,
2631         DISPID dispIdMember,
2632         REFIID riid,
2633         LCID lcid,
2634         WORD wFlags,
2635         DISPPARAMS *pDispParams,
2636         VARIANT *pVarResult,
2637         EXCEPINFO *pExcepInfo,
2638         UINT *puArgErr);
2639 
2640     /*** ISWbemObject methods ***/
2641     HRESULT (STDMETHODCALLTYPE *Put_)(
2642         ISWbemObject* This,
2643         LONG iFlags,
2644         IDispatch *objWbemNamedValueSet,
2645         ISWbemObjectPath **objWbemObjectPath);
2646 
2647     HRESULT (STDMETHODCALLTYPE *PutAsync_)(
2648         ISWbemObject* This,
2649         IDispatch *objWbemSink,
2650         LONG iFlags,
2651         IDispatch *objWbemNamedValueSet,
2652         IDispatch *objWbemAsyncContext);
2653 
2654     HRESULT (STDMETHODCALLTYPE *Delete_)(
2655         ISWbemObject* This,
2656         LONG iFlags,
2657         IDispatch *objWbemNamedValueSet);
2658 
2659     HRESULT (STDMETHODCALLTYPE *DeleteAsync_)(
2660         ISWbemObject* This,
2661         IDispatch *objWbemSink,
2662         LONG iFlags,
2663         IDispatch *objWbemNamedValueSet,
2664         IDispatch *objWbemAsyncContext);
2665 
2666     HRESULT (STDMETHODCALLTYPE *Instances_)(
2667         ISWbemObject* This,
2668         LONG iFlags,
2669         IDispatch *objWbemNamedValueSet,
2670         ISWbemObjectSet **objWbemObjectSet);
2671 
2672     HRESULT (STDMETHODCALLTYPE *InstancesAsync_)(
2673         ISWbemObject* This,
2674         IDispatch *objWbemSink,
2675         LONG iFlags,
2676         IDispatch *objWbemNamedValueSet,
2677         IDispatch *objWbemAsyncContext);
2678 
2679     HRESULT (STDMETHODCALLTYPE *Subclasses_)(
2680         ISWbemObject* This,
2681         LONG iFlags,
2682         IDispatch *objWbemNamedValueSet,
2683         ISWbemObjectSet **objWbemObjectSet);
2684 
2685     HRESULT (STDMETHODCALLTYPE *SubclassesAsync_)(
2686         ISWbemObject* This,
2687         IDispatch *objWbemSink,
2688         LONG iFlags,
2689         IDispatch *objWbemNamedValueSet,
2690         IDispatch *objWbemAsyncContext);
2691 
2692     HRESULT (STDMETHODCALLTYPE *Associators_)(
2693         ISWbemObject* This,
2694         BSTR strAssocClass,
2695         BSTR strResultClass,
2696         BSTR strResultRole,
2697         BSTR strRole,
2698         VARIANT_BOOL bClassesOnly,
2699         VARIANT_BOOL bSchemaOnly,
2700         BSTR strRequiredAssocQualifier,
2701         BSTR strRequiredQualifier,
2702         LONG iFlags,
2703         IDispatch *objWbemNamedValueSet,
2704         ISWbemObjectSet **objWbemObjectSet);
2705 
2706     HRESULT (STDMETHODCALLTYPE *AssociatorsAsync_)(
2707         ISWbemObject* This,
2708         IDispatch *objWbemSink,
2709         BSTR strAssocClass,
2710         BSTR strResultClass,
2711         BSTR strResultRole,
2712         BSTR strRole,
2713         VARIANT_BOOL bClassesOnly,
2714         VARIANT_BOOL bSchemaOnly,
2715         BSTR strRequiredAssocQualifier,
2716         BSTR strRequiredQualifier,
2717         LONG iFlags,
2718         IDispatch *objWbemNamedValueSet,
2719         IDispatch *objWbemAsyncContext);
2720 
2721     HRESULT (STDMETHODCALLTYPE *References_)(
2722         ISWbemObject* This,
2723         BSTR strResultClass,
2724         BSTR strRole,
2725         VARIANT_BOOL bClassesOnly,
2726         VARIANT_BOOL bSchemaOnly,
2727         BSTR strRequiredQualifier,
2728         LONG iFlags,
2729         IDispatch *objWbemNamedValueSet,
2730         ISWbemObjectSet **objWbemObjectSet);
2731 
2732     HRESULT (STDMETHODCALLTYPE *ReferencesAsync_)(
2733         ISWbemObject* This,
2734         IDispatch *objWbemSink,
2735         BSTR strResultClass,
2736         BSTR strRole,
2737         VARIANT_BOOL bClassesOnly,
2738         VARIANT_BOOL bSchemaOnly,
2739         BSTR strRequiredQualifier,
2740         LONG iFlags,
2741         IDispatch *objWbemNamedValueSet,
2742         IDispatch *objWbemAsyncContext);
2743 
2744     HRESULT (STDMETHODCALLTYPE *ExecMethod_)(
2745         ISWbemObject* This,
2746         BSTR strMethodName,
2747         IDispatch *objWbemInParameters,
2748         LONG iFlags,
2749         IDispatch *objWbemNamedValueSet,
2750         ISWbemObject **objWbemOutParameters);
2751 
2752     HRESULT (STDMETHODCALLTYPE *ExecMethodAsync_)(
2753         ISWbemObject* This,
2754         IDispatch *objWbemSink,
2755         BSTR strMethodName,
2756         IDispatch *objWbemInParameters,
2757         LONG iFlags,
2758         IDispatch *objWbemNamedValueSet,
2759         IDispatch *objWbemAsyncContext);
2760 
2761     HRESULT (STDMETHODCALLTYPE *Clone_)(
2762         ISWbemObject* This,
2763         ISWbemObject **objWbemObject);
2764 
2765     HRESULT (STDMETHODCALLTYPE *GetObjectText_)(
2766         ISWbemObject* This,
2767         LONG iFlags,
2768         BSTR *strObjectText);
2769 
2770     HRESULT (STDMETHODCALLTYPE *SpawnDerivedClass_)(
2771         ISWbemObject* This,
2772         LONG iFlags,
2773         ISWbemObject **objWbemObject);
2774 
2775     HRESULT (STDMETHODCALLTYPE *SpawnInstance_)(
2776         ISWbemObject* This,
2777         LONG iFlags,
2778         ISWbemObject **objWbemObject);
2779 
2780     HRESULT (STDMETHODCALLTYPE *CompareTo_)(
2781         ISWbemObject* This,
2782         IDispatch *objWbemObject,
2783         LONG iFlags,
2784         VARIANT_BOOL *bResult);
2785 
2786     HRESULT (STDMETHODCALLTYPE *get_Qualifiers_)(
2787         ISWbemObject* This,
2788         ISWbemQualifierSet **objWbemQualifierSet);
2789 
2790     HRESULT (STDMETHODCALLTYPE *get_Properties_)(
2791         ISWbemObject* This,
2792         ISWbemPropertySet **objWbemPropertySet);
2793 
2794     HRESULT (STDMETHODCALLTYPE *get_Methods_)(
2795         ISWbemObject* This,
2796         ISWbemMethodSet **objWbemMethodSet);
2797 
2798     HRESULT (STDMETHODCALLTYPE *get_Derivation_)(
2799         ISWbemObject* This,
2800         VARIANT *strClassNameArray);
2801 
2802     HRESULT (STDMETHODCALLTYPE *get_Path_)(
2803         ISWbemObject* This,
2804         ISWbemObjectPath **objWbemObjectPath);
2805 
2806     HRESULT (STDMETHODCALLTYPE *get_Security_)(
2807         ISWbemObject* This,
2808         ISWbemSecurity **objWbemSecurity);
2809 
2810     END_INTERFACE
2811 } ISWbemObjectVtbl;
2812 interface ISWbemObject {
2813     CONST_VTBL ISWbemObjectVtbl* lpVtbl;
2814 };
2815 
2816 #ifdef COBJMACROS
2817 #ifndef WIDL_C_INLINE_WRAPPERS
2818 /*** IUnknown methods ***/
2819 #define ISWbemObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2820 #define ISWbemObject_AddRef(This) (This)->lpVtbl->AddRef(This)
2821 #define ISWbemObject_Release(This) (This)->lpVtbl->Release(This)
2822 /*** IDispatch methods ***/
2823 #define ISWbemObject_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2824 #define ISWbemObject_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2825 #define ISWbemObject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2826 #define ISWbemObject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2827 /*** ISWbemObject methods ***/
2828 #define ISWbemObject_Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath) (This)->lpVtbl->Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath)
2829 #define ISWbemObject_PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2830 #define ISWbemObject_Delete_(This,iFlags,objWbemNamedValueSet) (This)->lpVtbl->Delete_(This,iFlags,objWbemNamedValueSet)
2831 #define ISWbemObject_DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2832 #define ISWbemObject_Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2833 #define ISWbemObject_InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2834 #define ISWbemObject_Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2835 #define ISWbemObject_SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2836 #define ISWbemObject_Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2837 #define ISWbemObject_AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2838 #define ISWbemObject_References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
2839 #define ISWbemObject_ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2840 #define ISWbemObject_ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters) (This)->lpVtbl->ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters)
2841 #define ISWbemObject_ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
2842 #define ISWbemObject_Clone_(This,objWbemObject) (This)->lpVtbl->Clone_(This,objWbemObject)
2843 #define ISWbemObject_GetObjectText_(This,iFlags,strObjectText) (This)->lpVtbl->GetObjectText_(This,iFlags,strObjectText)
2844 #define ISWbemObject_SpawnDerivedClass_(This,iFlags,objWbemObject) (This)->lpVtbl->SpawnDerivedClass_(This,iFlags,objWbemObject)
2845 #define ISWbemObject_SpawnInstance_(This,iFlags,objWbemObject) (This)->lpVtbl->SpawnInstance_(This,iFlags,objWbemObject)
2846 #define ISWbemObject_CompareTo_(This,objWbemObject,iFlags,bResult) (This)->lpVtbl->CompareTo_(This,objWbemObject,iFlags,bResult)
2847 #define ISWbemObject_get_Qualifiers_(This,objWbemQualifierSet) (This)->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet)
2848 #define ISWbemObject_get_Properties_(This,objWbemPropertySet) (This)->lpVtbl->get_Properties_(This,objWbemPropertySet)
2849 #define ISWbemObject_get_Methods_(This,objWbemMethodSet) (This)->lpVtbl->get_Methods_(This,objWbemMethodSet)
2850 #define ISWbemObject_get_Derivation_(This,strClassNameArray) (This)->lpVtbl->get_Derivation_(This,strClassNameArray)
2851 #define ISWbemObject_get_Path_(This,objWbemObjectPath) (This)->lpVtbl->get_Path_(This,objWbemObjectPath)
2852 #define ISWbemObject_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
2853 #else
2854 /*** IUnknown methods ***/
2855 static FORCEINLINE HRESULT ISWbemObject_QueryInterface(ISWbemObject* This,REFIID riid,void **ppvObject) {
2856     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2857 }
2858 static FORCEINLINE ULONG ISWbemObject_AddRef(ISWbemObject* This) {
2859     return This->lpVtbl->AddRef(This);
2860 }
2861 static FORCEINLINE ULONG ISWbemObject_Release(ISWbemObject* This) {
2862     return This->lpVtbl->Release(This);
2863 }
2864 /*** IDispatch methods ***/
2865 static FORCEINLINE HRESULT ISWbemObject_GetTypeInfoCount(ISWbemObject* This,UINT *pctinfo) {
2866     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2867 }
2868 static FORCEINLINE HRESULT ISWbemObject_GetTypeInfo(ISWbemObject* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2869     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2870 }
2871 static FORCEINLINE HRESULT ISWbemObject_GetIDsOfNames(ISWbemObject* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2872     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2873 }
2874 static FORCEINLINE HRESULT ISWbemObject_Invoke(ISWbemObject* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2875     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2876 }
2877 /*** ISWbemObject methods ***/
2878 static FORCEINLINE HRESULT ISWbemObject_Put_(ISWbemObject* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectPath **objWbemObjectPath) {
2879     return This->lpVtbl->Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath);
2880 }
2881 static FORCEINLINE HRESULT ISWbemObject_PutAsync_(ISWbemObject* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2882     return This->lpVtbl->PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2883 }
2884 static FORCEINLINE HRESULT ISWbemObject_Delete_(ISWbemObject* This,LONG iFlags,IDispatch *objWbemNamedValueSet) {
2885     return This->lpVtbl->Delete_(This,iFlags,objWbemNamedValueSet);
2886 }
2887 static FORCEINLINE HRESULT ISWbemObject_DeleteAsync_(ISWbemObject* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2888     return This->lpVtbl->DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2889 }
2890 static FORCEINLINE HRESULT ISWbemObject_Instances_(ISWbemObject* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2891     return This->lpVtbl->Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2892 }
2893 static FORCEINLINE HRESULT ISWbemObject_InstancesAsync_(ISWbemObject* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2894     return This->lpVtbl->InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2895 }
2896 static FORCEINLINE HRESULT ISWbemObject_Subclasses_(ISWbemObject* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2897     return This->lpVtbl->Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2898 }
2899 static FORCEINLINE HRESULT ISWbemObject_SubclassesAsync_(ISWbemObject* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2900     return This->lpVtbl->SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2901 }
2902 static FORCEINLINE HRESULT ISWbemObject_Associators_(ISWbemObject* This,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2903     return This->lpVtbl->Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2904 }
2905 static FORCEINLINE HRESULT ISWbemObject_AssociatorsAsync_(ISWbemObject* This,IDispatch *objWbemSink,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2906     return This->lpVtbl->AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2907 }
2908 static FORCEINLINE HRESULT ISWbemObject_References_(ISWbemObject* This,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
2909     return This->lpVtbl->References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
2910 }
2911 static FORCEINLINE HRESULT ISWbemObject_ReferencesAsync_(ISWbemObject* This,IDispatch *objWbemSink,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2912     return This->lpVtbl->ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2913 }
2914 static FORCEINLINE HRESULT ISWbemObject_ExecMethod_(ISWbemObject* This,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObject **objWbemOutParameters) {
2915     return This->lpVtbl->ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters);
2916 }
2917 static FORCEINLINE HRESULT ISWbemObject_ExecMethodAsync_(ISWbemObject* This,IDispatch *objWbemSink,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
2918     return This->lpVtbl->ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
2919 }
2920 static FORCEINLINE HRESULT ISWbemObject_Clone_(ISWbemObject* This,ISWbemObject **objWbemObject) {
2921     return This->lpVtbl->Clone_(This,objWbemObject);
2922 }
2923 static FORCEINLINE HRESULT ISWbemObject_GetObjectText_(ISWbemObject* This,LONG iFlags,BSTR *strObjectText) {
2924     return This->lpVtbl->GetObjectText_(This,iFlags,strObjectText);
2925 }
2926 static FORCEINLINE HRESULT ISWbemObject_SpawnDerivedClass_(ISWbemObject* This,LONG iFlags,ISWbemObject **objWbemObject) {
2927     return This->lpVtbl->SpawnDerivedClass_(This,iFlags,objWbemObject);
2928 }
2929 static FORCEINLINE HRESULT ISWbemObject_SpawnInstance_(ISWbemObject* This,LONG iFlags,ISWbemObject **objWbemObject) {
2930     return This->lpVtbl->SpawnInstance_(This,iFlags,objWbemObject);
2931 }
2932 static FORCEINLINE HRESULT ISWbemObject_CompareTo_(ISWbemObject* This,IDispatch *objWbemObject,LONG iFlags,VARIANT_BOOL *bResult) {
2933     return This->lpVtbl->CompareTo_(This,objWbemObject,iFlags,bResult);
2934 }
2935 static FORCEINLINE HRESULT ISWbemObject_get_Qualifiers_(ISWbemObject* This,ISWbemQualifierSet **objWbemQualifierSet) {
2936     return This->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet);
2937 }
2938 static FORCEINLINE HRESULT ISWbemObject_get_Properties_(ISWbemObject* This,ISWbemPropertySet **objWbemPropertySet) {
2939     return This->lpVtbl->get_Properties_(This,objWbemPropertySet);
2940 }
2941 static FORCEINLINE HRESULT ISWbemObject_get_Methods_(ISWbemObject* This,ISWbemMethodSet **objWbemMethodSet) {
2942     return This->lpVtbl->get_Methods_(This,objWbemMethodSet);
2943 }
2944 static FORCEINLINE HRESULT ISWbemObject_get_Derivation_(ISWbemObject* This,VARIANT *strClassNameArray) {
2945     return This->lpVtbl->get_Derivation_(This,strClassNameArray);
2946 }
2947 static FORCEINLINE HRESULT ISWbemObject_get_Path_(ISWbemObject* This,ISWbemObjectPath **objWbemObjectPath) {
2948     return This->lpVtbl->get_Path_(This,objWbemObjectPath);
2949 }
2950 static FORCEINLINE HRESULT ISWbemObject_get_Security_(ISWbemObject* This,ISWbemSecurity **objWbemSecurity) {
2951     return This->lpVtbl->get_Security_(This,objWbemSecurity);
2952 }
2953 #endif
2954 #endif
2955 
2956 #endif
2957 
2958 HRESULT STDMETHODCALLTYPE ISWbemObject_Put__Proxy(
2959     ISWbemObject* This,
2960     LONG iFlags,
2961     IDispatch *objWbemNamedValueSet,
2962     ISWbemObjectPath **objWbemObjectPath);
2963 void __RPC_STUB ISWbemObject_Put__Stub(
2964     IRpcStubBuffer* This,
2965     IRpcChannelBuffer* pRpcChannelBuffer,
2966     PRPC_MESSAGE pRpcMessage,
2967     DWORD* pdwStubPhase);
2968 HRESULT STDMETHODCALLTYPE ISWbemObject_PutAsync__Proxy(
2969     ISWbemObject* This,
2970     IDispatch *objWbemSink,
2971     LONG iFlags,
2972     IDispatch *objWbemNamedValueSet,
2973     IDispatch *objWbemAsyncContext);
2974 void __RPC_STUB ISWbemObject_PutAsync__Stub(
2975     IRpcStubBuffer* This,
2976     IRpcChannelBuffer* pRpcChannelBuffer,
2977     PRPC_MESSAGE pRpcMessage,
2978     DWORD* pdwStubPhase);
2979 HRESULT STDMETHODCALLTYPE ISWbemObject_Delete__Proxy(
2980     ISWbemObject* This,
2981     LONG iFlags,
2982     IDispatch *objWbemNamedValueSet);
2983 void __RPC_STUB ISWbemObject_Delete__Stub(
2984     IRpcStubBuffer* This,
2985     IRpcChannelBuffer* pRpcChannelBuffer,
2986     PRPC_MESSAGE pRpcMessage,
2987     DWORD* pdwStubPhase);
2988 HRESULT STDMETHODCALLTYPE ISWbemObject_DeleteAsync__Proxy(
2989     ISWbemObject* This,
2990     IDispatch *objWbemSink,
2991     LONG iFlags,
2992     IDispatch *objWbemNamedValueSet,
2993     IDispatch *objWbemAsyncContext);
2994 void __RPC_STUB ISWbemObject_DeleteAsync__Stub(
2995     IRpcStubBuffer* This,
2996     IRpcChannelBuffer* pRpcChannelBuffer,
2997     PRPC_MESSAGE pRpcMessage,
2998     DWORD* pdwStubPhase);
2999 HRESULT STDMETHODCALLTYPE ISWbemObject_Instances__Proxy(
3000     ISWbemObject* This,
3001     LONG iFlags,
3002     IDispatch *objWbemNamedValueSet,
3003     ISWbemObjectSet **objWbemObjectSet);
3004 void __RPC_STUB ISWbemObject_Instances__Stub(
3005     IRpcStubBuffer* This,
3006     IRpcChannelBuffer* pRpcChannelBuffer,
3007     PRPC_MESSAGE pRpcMessage,
3008     DWORD* pdwStubPhase);
3009 HRESULT STDMETHODCALLTYPE ISWbemObject_InstancesAsync__Proxy(
3010     ISWbemObject* This,
3011     IDispatch *objWbemSink,
3012     LONG iFlags,
3013     IDispatch *objWbemNamedValueSet,
3014     IDispatch *objWbemAsyncContext);
3015 void __RPC_STUB ISWbemObject_InstancesAsync__Stub(
3016     IRpcStubBuffer* This,
3017     IRpcChannelBuffer* pRpcChannelBuffer,
3018     PRPC_MESSAGE pRpcMessage,
3019     DWORD* pdwStubPhase);
3020 HRESULT STDMETHODCALLTYPE ISWbemObject_Subclasses__Proxy(
3021     ISWbemObject* This,
3022     LONG iFlags,
3023     IDispatch *objWbemNamedValueSet,
3024     ISWbemObjectSet **objWbemObjectSet);
3025 void __RPC_STUB ISWbemObject_Subclasses__Stub(
3026     IRpcStubBuffer* This,
3027     IRpcChannelBuffer* pRpcChannelBuffer,
3028     PRPC_MESSAGE pRpcMessage,
3029     DWORD* pdwStubPhase);
3030 HRESULT STDMETHODCALLTYPE ISWbemObject_SubclassesAsync__Proxy(
3031     ISWbemObject* This,
3032     IDispatch *objWbemSink,
3033     LONG iFlags,
3034     IDispatch *objWbemNamedValueSet,
3035     IDispatch *objWbemAsyncContext);
3036 void __RPC_STUB ISWbemObject_SubclassesAsync__Stub(
3037     IRpcStubBuffer* This,
3038     IRpcChannelBuffer* pRpcChannelBuffer,
3039     PRPC_MESSAGE pRpcMessage,
3040     DWORD* pdwStubPhase);
3041 HRESULT STDMETHODCALLTYPE ISWbemObject_Associators__Proxy(
3042     ISWbemObject* This,
3043     BSTR strAssocClass,
3044     BSTR strResultClass,
3045     BSTR strResultRole,
3046     BSTR strRole,
3047     VARIANT_BOOL bClassesOnly,
3048     VARIANT_BOOL bSchemaOnly,
3049     BSTR strRequiredAssocQualifier,
3050     BSTR strRequiredQualifier,
3051     LONG iFlags,
3052     IDispatch *objWbemNamedValueSet,
3053     ISWbemObjectSet **objWbemObjectSet);
3054 void __RPC_STUB ISWbemObject_Associators__Stub(
3055     IRpcStubBuffer* This,
3056     IRpcChannelBuffer* pRpcChannelBuffer,
3057     PRPC_MESSAGE pRpcMessage,
3058     DWORD* pdwStubPhase);
3059 HRESULT STDMETHODCALLTYPE ISWbemObject_AssociatorsAsync__Proxy(
3060     ISWbemObject* This,
3061     IDispatch *objWbemSink,
3062     BSTR strAssocClass,
3063     BSTR strResultClass,
3064     BSTR strResultRole,
3065     BSTR strRole,
3066     VARIANT_BOOL bClassesOnly,
3067     VARIANT_BOOL bSchemaOnly,
3068     BSTR strRequiredAssocQualifier,
3069     BSTR strRequiredQualifier,
3070     LONG iFlags,
3071     IDispatch *objWbemNamedValueSet,
3072     IDispatch *objWbemAsyncContext);
3073 void __RPC_STUB ISWbemObject_AssociatorsAsync__Stub(
3074     IRpcStubBuffer* This,
3075     IRpcChannelBuffer* pRpcChannelBuffer,
3076     PRPC_MESSAGE pRpcMessage,
3077     DWORD* pdwStubPhase);
3078 HRESULT STDMETHODCALLTYPE ISWbemObject_References__Proxy(
3079     ISWbemObject* This,
3080     BSTR strResultClass,
3081     BSTR strRole,
3082     VARIANT_BOOL bClassesOnly,
3083     VARIANT_BOOL bSchemaOnly,
3084     BSTR strRequiredQualifier,
3085     LONG iFlags,
3086     IDispatch *objWbemNamedValueSet,
3087     ISWbemObjectSet **objWbemObjectSet);
3088 void __RPC_STUB ISWbemObject_References__Stub(
3089     IRpcStubBuffer* This,
3090     IRpcChannelBuffer* pRpcChannelBuffer,
3091     PRPC_MESSAGE pRpcMessage,
3092     DWORD* pdwStubPhase);
3093 HRESULT STDMETHODCALLTYPE ISWbemObject_ReferencesAsync__Proxy(
3094     ISWbemObject* This,
3095     IDispatch *objWbemSink,
3096     BSTR strResultClass,
3097     BSTR strRole,
3098     VARIANT_BOOL bClassesOnly,
3099     VARIANT_BOOL bSchemaOnly,
3100     BSTR strRequiredQualifier,
3101     LONG iFlags,
3102     IDispatch *objWbemNamedValueSet,
3103     IDispatch *objWbemAsyncContext);
3104 void __RPC_STUB ISWbemObject_ReferencesAsync__Stub(
3105     IRpcStubBuffer* This,
3106     IRpcChannelBuffer* pRpcChannelBuffer,
3107     PRPC_MESSAGE pRpcMessage,
3108     DWORD* pdwStubPhase);
3109 HRESULT STDMETHODCALLTYPE ISWbemObject_ExecMethod__Proxy(
3110     ISWbemObject* This,
3111     BSTR strMethodName,
3112     IDispatch *objWbemInParameters,
3113     LONG iFlags,
3114     IDispatch *objWbemNamedValueSet,
3115     ISWbemObject **objWbemOutParameters);
3116 void __RPC_STUB ISWbemObject_ExecMethod__Stub(
3117     IRpcStubBuffer* This,
3118     IRpcChannelBuffer* pRpcChannelBuffer,
3119     PRPC_MESSAGE pRpcMessage,
3120     DWORD* pdwStubPhase);
3121 HRESULT STDMETHODCALLTYPE ISWbemObject_ExecMethodAsync__Proxy(
3122     ISWbemObject* This,
3123     IDispatch *objWbemSink,
3124     BSTR strMethodName,
3125     IDispatch *objWbemInParameters,
3126     LONG iFlags,
3127     IDispatch *objWbemNamedValueSet,
3128     IDispatch *objWbemAsyncContext);
3129 void __RPC_STUB ISWbemObject_ExecMethodAsync__Stub(
3130     IRpcStubBuffer* This,
3131     IRpcChannelBuffer* pRpcChannelBuffer,
3132     PRPC_MESSAGE pRpcMessage,
3133     DWORD* pdwStubPhase);
3134 HRESULT STDMETHODCALLTYPE ISWbemObject_Clone__Proxy(
3135     ISWbemObject* This,
3136     ISWbemObject **objWbemObject);
3137 void __RPC_STUB ISWbemObject_Clone__Stub(
3138     IRpcStubBuffer* This,
3139     IRpcChannelBuffer* pRpcChannelBuffer,
3140     PRPC_MESSAGE pRpcMessage,
3141     DWORD* pdwStubPhase);
3142 HRESULT STDMETHODCALLTYPE ISWbemObject_GetObjectText__Proxy(
3143     ISWbemObject* This,
3144     LONG iFlags,
3145     BSTR *strObjectText);
3146 void __RPC_STUB ISWbemObject_GetObjectText__Stub(
3147     IRpcStubBuffer* This,
3148     IRpcChannelBuffer* pRpcChannelBuffer,
3149     PRPC_MESSAGE pRpcMessage,
3150     DWORD* pdwStubPhase);
3151 HRESULT STDMETHODCALLTYPE ISWbemObject_SpawnDerivedClass__Proxy(
3152     ISWbemObject* This,
3153     LONG iFlags,
3154     ISWbemObject **objWbemObject);
3155 void __RPC_STUB ISWbemObject_SpawnDerivedClass__Stub(
3156     IRpcStubBuffer* This,
3157     IRpcChannelBuffer* pRpcChannelBuffer,
3158     PRPC_MESSAGE pRpcMessage,
3159     DWORD* pdwStubPhase);
3160 HRESULT STDMETHODCALLTYPE ISWbemObject_SpawnInstance__Proxy(
3161     ISWbemObject* This,
3162     LONG iFlags,
3163     ISWbemObject **objWbemObject);
3164 void __RPC_STUB ISWbemObject_SpawnInstance__Stub(
3165     IRpcStubBuffer* This,
3166     IRpcChannelBuffer* pRpcChannelBuffer,
3167     PRPC_MESSAGE pRpcMessage,
3168     DWORD* pdwStubPhase);
3169 HRESULT STDMETHODCALLTYPE ISWbemObject_CompareTo__Proxy(
3170     ISWbemObject* This,
3171     IDispatch *objWbemObject,
3172     LONG iFlags,
3173     VARIANT_BOOL *bResult);
3174 void __RPC_STUB ISWbemObject_CompareTo__Stub(
3175     IRpcStubBuffer* This,
3176     IRpcChannelBuffer* pRpcChannelBuffer,
3177     PRPC_MESSAGE pRpcMessage,
3178     DWORD* pdwStubPhase);
3179 HRESULT STDMETHODCALLTYPE ISWbemObject_get_Qualifiers__Proxy(
3180     ISWbemObject* This,
3181     ISWbemQualifierSet **objWbemQualifierSet);
3182 void __RPC_STUB ISWbemObject_get_Qualifiers__Stub(
3183     IRpcStubBuffer* This,
3184     IRpcChannelBuffer* pRpcChannelBuffer,
3185     PRPC_MESSAGE pRpcMessage,
3186     DWORD* pdwStubPhase);
3187 HRESULT STDMETHODCALLTYPE ISWbemObject_get_Properties__Proxy(
3188     ISWbemObject* This,
3189     ISWbemPropertySet **objWbemPropertySet);
3190 void __RPC_STUB ISWbemObject_get_Properties__Stub(
3191     IRpcStubBuffer* This,
3192     IRpcChannelBuffer* pRpcChannelBuffer,
3193     PRPC_MESSAGE pRpcMessage,
3194     DWORD* pdwStubPhase);
3195 HRESULT STDMETHODCALLTYPE ISWbemObject_get_Methods__Proxy(
3196     ISWbemObject* This,
3197     ISWbemMethodSet **objWbemMethodSet);
3198 void __RPC_STUB ISWbemObject_get_Methods__Stub(
3199     IRpcStubBuffer* This,
3200     IRpcChannelBuffer* pRpcChannelBuffer,
3201     PRPC_MESSAGE pRpcMessage,
3202     DWORD* pdwStubPhase);
3203 HRESULT STDMETHODCALLTYPE ISWbemObject_get_Derivation__Proxy(
3204     ISWbemObject* This,
3205     VARIANT *strClassNameArray);
3206 void __RPC_STUB ISWbemObject_get_Derivation__Stub(
3207     IRpcStubBuffer* This,
3208     IRpcChannelBuffer* pRpcChannelBuffer,
3209     PRPC_MESSAGE pRpcMessage,
3210     DWORD* pdwStubPhase);
3211 HRESULT STDMETHODCALLTYPE ISWbemObject_get_Path__Proxy(
3212     ISWbemObject* This,
3213     ISWbemObjectPath **objWbemObjectPath);
3214 void __RPC_STUB ISWbemObject_get_Path__Stub(
3215     IRpcStubBuffer* This,
3216     IRpcChannelBuffer* pRpcChannelBuffer,
3217     PRPC_MESSAGE pRpcMessage,
3218     DWORD* pdwStubPhase);
3219 HRESULT STDMETHODCALLTYPE ISWbemObject_get_Security__Proxy(
3220     ISWbemObject* This,
3221     ISWbemSecurity **objWbemSecurity);
3222 void __RPC_STUB ISWbemObject_get_Security__Stub(
3223     IRpcStubBuffer* This,
3224     IRpcChannelBuffer* pRpcChannelBuffer,
3225     PRPC_MESSAGE pRpcMessage,
3226     DWORD* pdwStubPhase);
3227 
3228 #endif  /* __ISWbemObject_INTERFACE_DEFINED__ */
3229 
3230 /*****************************************************************************
3231  * ISWbemObjectEx interface
3232  */
3233 #ifndef __ISWbemObjectEx_INTERFACE_DEFINED__
3234 #define __ISWbemObjectEx_INTERFACE_DEFINED__
3235 
3236 DEFINE_GUID(IID_ISWbemObjectEx, 0x269ad56a, 0x8a67, 0x4129, 0xbc,0x8c, 0x05,0x06,0xdc,0xfe,0x98,0x80);
3237 #if defined(__cplusplus) && !defined(CINTERFACE)
3238 MIDL_INTERFACE("269ad56a-8a67-4129-bc8c-0506dcfe9880")
3239 ISWbemObjectEx : public ISWbemObject
3240 {
3241     virtual HRESULT STDMETHODCALLTYPE Refresh_(
3242         LONG iFlags = 0,
3243         IDispatch *objWbemNamedValueSet = 0) = 0;
3244 
3245     virtual HRESULT STDMETHODCALLTYPE get_SystemProperties_(
3246         ISWbemPropertySet **objWbemPropertySet) = 0;
3247 
3248     virtual HRESULT STDMETHODCALLTYPE GetText_(
3249         WbemObjectTextFormatEnum iObjectTextFormat,
3250         LONG iFlags = 0,
3251         IDispatch *objWbemNamedValueSet = 0,
3252         BSTR *bsText = 0) = 0;
3253 
3254     virtual HRESULT STDMETHODCALLTYPE SetFromText_(
3255         BSTR bsText,
3256         WbemObjectTextFormatEnum iObjectTextFormat,
3257         LONG iFlags = 0,
3258         IDispatch *objWbemNamedValueSet = 0) = 0;
3259 
3260 };
3261 #ifdef __CRT_UUID_DECL
3262 __CRT_UUID_DECL(ISWbemObjectEx, 0x269ad56a, 0x8a67, 0x4129, 0xbc,0x8c, 0x05,0x06,0xdc,0xfe,0x98,0x80)
3263 #endif
3264 #else
3265 typedef struct ISWbemObjectExVtbl {
3266     BEGIN_INTERFACE
3267 
3268     /*** IUnknown methods ***/
3269     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3270         ISWbemObjectEx* This,
3271         REFIID riid,
3272         void **ppvObject);
3273 
3274     ULONG (STDMETHODCALLTYPE *AddRef)(
3275         ISWbemObjectEx* This);
3276 
3277     ULONG (STDMETHODCALLTYPE *Release)(
3278         ISWbemObjectEx* This);
3279 
3280     /*** IDispatch methods ***/
3281     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3282         ISWbemObjectEx* This,
3283         UINT *pctinfo);
3284 
3285     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3286         ISWbemObjectEx* This,
3287         UINT iTInfo,
3288         LCID lcid,
3289         ITypeInfo **ppTInfo);
3290 
3291     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3292         ISWbemObjectEx* This,
3293         REFIID riid,
3294         LPOLESTR *rgszNames,
3295         UINT cNames,
3296         LCID lcid,
3297         DISPID *rgDispId);
3298 
3299     HRESULT (STDMETHODCALLTYPE *Invoke)(
3300         ISWbemObjectEx* This,
3301         DISPID dispIdMember,
3302         REFIID riid,
3303         LCID lcid,
3304         WORD wFlags,
3305         DISPPARAMS *pDispParams,
3306         VARIANT *pVarResult,
3307         EXCEPINFO *pExcepInfo,
3308         UINT *puArgErr);
3309 
3310     /*** ISWbemObject methods ***/
3311     HRESULT (STDMETHODCALLTYPE *Put_)(
3312         ISWbemObjectEx* This,
3313         LONG iFlags,
3314         IDispatch *objWbemNamedValueSet,
3315         ISWbemObjectPath **objWbemObjectPath);
3316 
3317     HRESULT (STDMETHODCALLTYPE *PutAsync_)(
3318         ISWbemObjectEx* This,
3319         IDispatch *objWbemSink,
3320         LONG iFlags,
3321         IDispatch *objWbemNamedValueSet,
3322         IDispatch *objWbemAsyncContext);
3323 
3324     HRESULT (STDMETHODCALLTYPE *Delete_)(
3325         ISWbemObjectEx* This,
3326         LONG iFlags,
3327         IDispatch *objWbemNamedValueSet);
3328 
3329     HRESULT (STDMETHODCALLTYPE *DeleteAsync_)(
3330         ISWbemObjectEx* This,
3331         IDispatch *objWbemSink,
3332         LONG iFlags,
3333         IDispatch *objWbemNamedValueSet,
3334         IDispatch *objWbemAsyncContext);
3335 
3336     HRESULT (STDMETHODCALLTYPE *Instances_)(
3337         ISWbemObjectEx* This,
3338         LONG iFlags,
3339         IDispatch *objWbemNamedValueSet,
3340         ISWbemObjectSet **objWbemObjectSet);
3341 
3342     HRESULT (STDMETHODCALLTYPE *InstancesAsync_)(
3343         ISWbemObjectEx* This,
3344         IDispatch *objWbemSink,
3345         LONG iFlags,
3346         IDispatch *objWbemNamedValueSet,
3347         IDispatch *objWbemAsyncContext);
3348 
3349     HRESULT (STDMETHODCALLTYPE *Subclasses_)(
3350         ISWbemObjectEx* This,
3351         LONG iFlags,
3352         IDispatch *objWbemNamedValueSet,
3353         ISWbemObjectSet **objWbemObjectSet);
3354 
3355     HRESULT (STDMETHODCALLTYPE *SubclassesAsync_)(
3356         ISWbemObjectEx* This,
3357         IDispatch *objWbemSink,
3358         LONG iFlags,
3359         IDispatch *objWbemNamedValueSet,
3360         IDispatch *objWbemAsyncContext);
3361 
3362     HRESULT (STDMETHODCALLTYPE *Associators_)(
3363         ISWbemObjectEx* This,
3364         BSTR strAssocClass,
3365         BSTR strResultClass,
3366         BSTR strResultRole,
3367         BSTR strRole,
3368         VARIANT_BOOL bClassesOnly,
3369         VARIANT_BOOL bSchemaOnly,
3370         BSTR strRequiredAssocQualifier,
3371         BSTR strRequiredQualifier,
3372         LONG iFlags,
3373         IDispatch *objWbemNamedValueSet,
3374         ISWbemObjectSet **objWbemObjectSet);
3375 
3376     HRESULT (STDMETHODCALLTYPE *AssociatorsAsync_)(
3377         ISWbemObjectEx* This,
3378         IDispatch *objWbemSink,
3379         BSTR strAssocClass,
3380         BSTR strResultClass,
3381         BSTR strResultRole,
3382         BSTR strRole,
3383         VARIANT_BOOL bClassesOnly,
3384         VARIANT_BOOL bSchemaOnly,
3385         BSTR strRequiredAssocQualifier,
3386         BSTR strRequiredQualifier,
3387         LONG iFlags,
3388         IDispatch *objWbemNamedValueSet,
3389         IDispatch *objWbemAsyncContext);
3390 
3391     HRESULT (STDMETHODCALLTYPE *References_)(
3392         ISWbemObjectEx* This,
3393         BSTR strResultClass,
3394         BSTR strRole,
3395         VARIANT_BOOL bClassesOnly,
3396         VARIANT_BOOL bSchemaOnly,
3397         BSTR strRequiredQualifier,
3398         LONG iFlags,
3399         IDispatch *objWbemNamedValueSet,
3400         ISWbemObjectSet **objWbemObjectSet);
3401 
3402     HRESULT (STDMETHODCALLTYPE *ReferencesAsync_)(
3403         ISWbemObjectEx* This,
3404         IDispatch *objWbemSink,
3405         BSTR strResultClass,
3406         BSTR strRole,
3407         VARIANT_BOOL bClassesOnly,
3408         VARIANT_BOOL bSchemaOnly,
3409         BSTR strRequiredQualifier,
3410         LONG iFlags,
3411         IDispatch *objWbemNamedValueSet,
3412         IDispatch *objWbemAsyncContext);
3413 
3414     HRESULT (STDMETHODCALLTYPE *ExecMethod_)(
3415         ISWbemObjectEx* This,
3416         BSTR strMethodName,
3417         IDispatch *objWbemInParameters,
3418         LONG iFlags,
3419         IDispatch *objWbemNamedValueSet,
3420         ISWbemObject **objWbemOutParameters);
3421 
3422     HRESULT (STDMETHODCALLTYPE *ExecMethodAsync_)(
3423         ISWbemObjectEx* This,
3424         IDispatch *objWbemSink,
3425         BSTR strMethodName,
3426         IDispatch *objWbemInParameters,
3427         LONG iFlags,
3428         IDispatch *objWbemNamedValueSet,
3429         IDispatch *objWbemAsyncContext);
3430 
3431     HRESULT (STDMETHODCALLTYPE *Clone_)(
3432         ISWbemObjectEx* This,
3433         ISWbemObject **objWbemObject);
3434 
3435     HRESULT (STDMETHODCALLTYPE *GetObjectText_)(
3436         ISWbemObjectEx* This,
3437         LONG iFlags,
3438         BSTR *strObjectText);
3439 
3440     HRESULT (STDMETHODCALLTYPE *SpawnDerivedClass_)(
3441         ISWbemObjectEx* This,
3442         LONG iFlags,
3443         ISWbemObject **objWbemObject);
3444 
3445     HRESULT (STDMETHODCALLTYPE *SpawnInstance_)(
3446         ISWbemObjectEx* This,
3447         LONG iFlags,
3448         ISWbemObject **objWbemObject);
3449 
3450     HRESULT (STDMETHODCALLTYPE *CompareTo_)(
3451         ISWbemObjectEx* This,
3452         IDispatch *objWbemObject,
3453         LONG iFlags,
3454         VARIANT_BOOL *bResult);
3455 
3456     HRESULT (STDMETHODCALLTYPE *get_Qualifiers_)(
3457         ISWbemObjectEx* This,
3458         ISWbemQualifierSet **objWbemQualifierSet);
3459 
3460     HRESULT (STDMETHODCALLTYPE *get_Properties_)(
3461         ISWbemObjectEx* This,
3462         ISWbemPropertySet **objWbemPropertySet);
3463 
3464     HRESULT (STDMETHODCALLTYPE *get_Methods_)(
3465         ISWbemObjectEx* This,
3466         ISWbemMethodSet **objWbemMethodSet);
3467 
3468     HRESULT (STDMETHODCALLTYPE *get_Derivation_)(
3469         ISWbemObjectEx* This,
3470         VARIANT *strClassNameArray);
3471 
3472     HRESULT (STDMETHODCALLTYPE *get_Path_)(
3473         ISWbemObjectEx* This,
3474         ISWbemObjectPath **objWbemObjectPath);
3475 
3476     HRESULT (STDMETHODCALLTYPE *get_Security_)(
3477         ISWbemObjectEx* This,
3478         ISWbemSecurity **objWbemSecurity);
3479 
3480     /*** ISWbemObjectEx methods ***/
3481     HRESULT (STDMETHODCALLTYPE *Refresh_)(
3482         ISWbemObjectEx* This,
3483         LONG iFlags,
3484         IDispatch *objWbemNamedValueSet);
3485 
3486     HRESULT (STDMETHODCALLTYPE *get_SystemProperties_)(
3487         ISWbemObjectEx* This,
3488         ISWbemPropertySet **objWbemPropertySet);
3489 
3490     HRESULT (STDMETHODCALLTYPE *GetText_)(
3491         ISWbemObjectEx* This,
3492         WbemObjectTextFormatEnum iObjectTextFormat,
3493         LONG iFlags,
3494         IDispatch *objWbemNamedValueSet,
3495         BSTR *bsText);
3496 
3497     HRESULT (STDMETHODCALLTYPE *SetFromText_)(
3498         ISWbemObjectEx* This,
3499         BSTR bsText,
3500         WbemObjectTextFormatEnum iObjectTextFormat,
3501         LONG iFlags,
3502         IDispatch *objWbemNamedValueSet);
3503 
3504     END_INTERFACE
3505 } ISWbemObjectExVtbl;
3506 interface ISWbemObjectEx {
3507     CONST_VTBL ISWbemObjectExVtbl* lpVtbl;
3508 };
3509 
3510 #ifdef COBJMACROS
3511 #ifndef WIDL_C_INLINE_WRAPPERS
3512 /*** IUnknown methods ***/
3513 #define ISWbemObjectEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3514 #define ISWbemObjectEx_AddRef(This) (This)->lpVtbl->AddRef(This)
3515 #define ISWbemObjectEx_Release(This) (This)->lpVtbl->Release(This)
3516 /*** IDispatch methods ***/
3517 #define ISWbemObjectEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3518 #define ISWbemObjectEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3519 #define ISWbemObjectEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3520 #define ISWbemObjectEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3521 /*** ISWbemObject methods ***/
3522 #define ISWbemObjectEx_Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath) (This)->lpVtbl->Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath)
3523 #define ISWbemObjectEx_PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3524 #define ISWbemObjectEx_Delete_(This,iFlags,objWbemNamedValueSet) (This)->lpVtbl->Delete_(This,iFlags,objWbemNamedValueSet)
3525 #define ISWbemObjectEx_DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3526 #define ISWbemObjectEx_Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet)
3527 #define ISWbemObjectEx_InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3528 #define ISWbemObjectEx_Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet)
3529 #define ISWbemObjectEx_SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3530 #define ISWbemObjectEx_Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
3531 #define ISWbemObjectEx_AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3532 #define ISWbemObjectEx_References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
3533 #define ISWbemObjectEx_ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3534 #define ISWbemObjectEx_ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters) (This)->lpVtbl->ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters)
3535 #define ISWbemObjectEx_ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3536 #define ISWbemObjectEx_Clone_(This,objWbemObject) (This)->lpVtbl->Clone_(This,objWbemObject)
3537 #define ISWbemObjectEx_GetObjectText_(This,iFlags,strObjectText) (This)->lpVtbl->GetObjectText_(This,iFlags,strObjectText)
3538 #define ISWbemObjectEx_SpawnDerivedClass_(This,iFlags,objWbemObject) (This)->lpVtbl->SpawnDerivedClass_(This,iFlags,objWbemObject)
3539 #define ISWbemObjectEx_SpawnInstance_(This,iFlags,objWbemObject) (This)->lpVtbl->SpawnInstance_(This,iFlags,objWbemObject)
3540 #define ISWbemObjectEx_CompareTo_(This,objWbemObject,iFlags,bResult) (This)->lpVtbl->CompareTo_(This,objWbemObject,iFlags,bResult)
3541 #define ISWbemObjectEx_get_Qualifiers_(This,objWbemQualifierSet) (This)->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet)
3542 #define ISWbemObjectEx_get_Properties_(This,objWbemPropertySet) (This)->lpVtbl->get_Properties_(This,objWbemPropertySet)
3543 #define ISWbemObjectEx_get_Methods_(This,objWbemMethodSet) (This)->lpVtbl->get_Methods_(This,objWbemMethodSet)
3544 #define ISWbemObjectEx_get_Derivation_(This,strClassNameArray) (This)->lpVtbl->get_Derivation_(This,strClassNameArray)
3545 #define ISWbemObjectEx_get_Path_(This,objWbemObjectPath) (This)->lpVtbl->get_Path_(This,objWbemObjectPath)
3546 #define ISWbemObjectEx_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
3547 /*** ISWbemObjectEx methods ***/
3548 #define ISWbemObjectEx_Refresh_(This,iFlags,objWbemNamedValueSet) (This)->lpVtbl->Refresh_(This,iFlags,objWbemNamedValueSet)
3549 #define ISWbemObjectEx_get_SystemProperties_(This,objWbemPropertySet) (This)->lpVtbl->get_SystemProperties_(This,objWbemPropertySet)
3550 #define ISWbemObjectEx_GetText_(This,iObjectTextFormat,iFlags,objWbemNamedValueSet,bsText) (This)->lpVtbl->GetText_(This,iObjectTextFormat,iFlags,objWbemNamedValueSet,bsText)
3551 #define ISWbemObjectEx_SetFromText_(This,bsText,iObjectTextFormat,iFlags,objWbemNamedValueSet) (This)->lpVtbl->SetFromText_(This,bsText,iObjectTextFormat,iFlags,objWbemNamedValueSet)
3552 #else
3553 /*** IUnknown methods ***/
3554 static FORCEINLINE HRESULT ISWbemObjectEx_QueryInterface(ISWbemObjectEx* This,REFIID riid,void **ppvObject) {
3555     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3556 }
3557 static FORCEINLINE ULONG ISWbemObjectEx_AddRef(ISWbemObjectEx* This) {
3558     return This->lpVtbl->AddRef(This);
3559 }
3560 static FORCEINLINE ULONG ISWbemObjectEx_Release(ISWbemObjectEx* This) {
3561     return This->lpVtbl->Release(This);
3562 }
3563 /*** IDispatch methods ***/
3564 static FORCEINLINE HRESULT ISWbemObjectEx_GetTypeInfoCount(ISWbemObjectEx* This,UINT *pctinfo) {
3565     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3566 }
3567 static FORCEINLINE HRESULT ISWbemObjectEx_GetTypeInfo(ISWbemObjectEx* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3568     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3569 }
3570 static FORCEINLINE HRESULT ISWbemObjectEx_GetIDsOfNames(ISWbemObjectEx* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3571     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3572 }
3573 static FORCEINLINE HRESULT ISWbemObjectEx_Invoke(ISWbemObjectEx* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3574     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3575 }
3576 /*** ISWbemObject methods ***/
3577 static FORCEINLINE HRESULT ISWbemObjectEx_Put_(ISWbemObjectEx* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectPath **objWbemObjectPath) {
3578     return This->lpVtbl->Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath);
3579 }
3580 static FORCEINLINE HRESULT ISWbemObjectEx_PutAsync_(ISWbemObjectEx* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
3581     return This->lpVtbl->PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
3582 }
3583 static FORCEINLINE HRESULT ISWbemObjectEx_Delete_(ISWbemObjectEx* This,LONG iFlags,IDispatch *objWbemNamedValueSet) {
3584     return This->lpVtbl->Delete_(This,iFlags,objWbemNamedValueSet);
3585 }
3586 static FORCEINLINE HRESULT ISWbemObjectEx_DeleteAsync_(ISWbemObjectEx* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
3587     return This->lpVtbl->DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
3588 }
3589 static FORCEINLINE HRESULT ISWbemObjectEx_Instances_(ISWbemObjectEx* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
3590     return This->lpVtbl->Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet);
3591 }
3592 static FORCEINLINE HRESULT ISWbemObjectEx_InstancesAsync_(ISWbemObjectEx* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
3593     return This->lpVtbl->InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
3594 }
3595 static FORCEINLINE HRESULT ISWbemObjectEx_Subclasses_(ISWbemObjectEx* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
3596     return This->lpVtbl->Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet);
3597 }
3598 static FORCEINLINE HRESULT ISWbemObjectEx_SubclassesAsync_(ISWbemObjectEx* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
3599     return This->lpVtbl->SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
3600 }
3601 static FORCEINLINE HRESULT ISWbemObjectEx_Associators_(ISWbemObjectEx* This,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
3602     return This->lpVtbl->Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
3603 }
3604 static FORCEINLINE HRESULT ISWbemObjectEx_AssociatorsAsync_(ISWbemObjectEx* This,IDispatch *objWbemSink,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
3605     return This->lpVtbl->AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
3606 }
3607 static FORCEINLINE HRESULT ISWbemObjectEx_References_(ISWbemObjectEx* This,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
3608     return This->lpVtbl->References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
3609 }
3610 static FORCEINLINE HRESULT ISWbemObjectEx_ReferencesAsync_(ISWbemObjectEx* This,IDispatch *objWbemSink,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
3611     return This->lpVtbl->ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
3612 }
3613 static FORCEINLINE HRESULT ISWbemObjectEx_ExecMethod_(ISWbemObjectEx* This,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObject **objWbemOutParameters) {
3614     return This->lpVtbl->ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters);
3615 }
3616 static FORCEINLINE HRESULT ISWbemObjectEx_ExecMethodAsync_(ISWbemObjectEx* This,IDispatch *objWbemSink,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
3617     return This->lpVtbl->ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
3618 }
3619 static FORCEINLINE HRESULT ISWbemObjectEx_Clone_(ISWbemObjectEx* This,ISWbemObject **objWbemObject) {
3620     return This->lpVtbl->Clone_(This,objWbemObject);
3621 }
3622 static FORCEINLINE HRESULT ISWbemObjectEx_GetObjectText_(ISWbemObjectEx* This,LONG iFlags,BSTR *strObjectText) {
3623     return This->lpVtbl->GetObjectText_(This,iFlags,strObjectText);
3624 }
3625 static FORCEINLINE HRESULT ISWbemObjectEx_SpawnDerivedClass_(ISWbemObjectEx* This,LONG iFlags,ISWbemObject **objWbemObject) {
3626     return This->lpVtbl->SpawnDerivedClass_(This,iFlags,objWbemObject);
3627 }
3628 static FORCEINLINE HRESULT ISWbemObjectEx_SpawnInstance_(ISWbemObjectEx* This,LONG iFlags,ISWbemObject **objWbemObject) {
3629     return This->lpVtbl->SpawnInstance_(This,iFlags,objWbemObject);
3630 }
3631 static FORCEINLINE HRESULT ISWbemObjectEx_CompareTo_(ISWbemObjectEx* This,IDispatch *objWbemObject,LONG iFlags,VARIANT_BOOL *bResult) {
3632     return This->lpVtbl->CompareTo_(This,objWbemObject,iFlags,bResult);
3633 }
3634 static FORCEINLINE HRESULT ISWbemObjectEx_get_Qualifiers_(ISWbemObjectEx* This,ISWbemQualifierSet **objWbemQualifierSet) {
3635     return This->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet);
3636 }
3637 static FORCEINLINE HRESULT ISWbemObjectEx_get_Properties_(ISWbemObjectEx* This,ISWbemPropertySet **objWbemPropertySet) {
3638     return This->lpVtbl->get_Properties_(This,objWbemPropertySet);
3639 }
3640 static FORCEINLINE HRESULT ISWbemObjectEx_get_Methods_(ISWbemObjectEx* This,ISWbemMethodSet **objWbemMethodSet) {
3641     return This->lpVtbl->get_Methods_(This,objWbemMethodSet);
3642 }
3643 static FORCEINLINE HRESULT ISWbemObjectEx_get_Derivation_(ISWbemObjectEx* This,VARIANT *strClassNameArray) {
3644     return This->lpVtbl->get_Derivation_(This,strClassNameArray);
3645 }
3646 static FORCEINLINE HRESULT ISWbemObjectEx_get_Path_(ISWbemObjectEx* This,ISWbemObjectPath **objWbemObjectPath) {
3647     return This->lpVtbl->get_Path_(This,objWbemObjectPath);
3648 }
3649 static FORCEINLINE HRESULT ISWbemObjectEx_get_Security_(ISWbemObjectEx* This,ISWbemSecurity **objWbemSecurity) {
3650     return This->lpVtbl->get_Security_(This,objWbemSecurity);
3651 }
3652 /*** ISWbemObjectEx methods ***/
3653 static FORCEINLINE HRESULT ISWbemObjectEx_Refresh_(ISWbemObjectEx* This,LONG iFlags,IDispatch *objWbemNamedValueSet) {
3654     return This->lpVtbl->Refresh_(This,iFlags,objWbemNamedValueSet);
3655 }
3656 static FORCEINLINE HRESULT ISWbemObjectEx_get_SystemProperties_(ISWbemObjectEx* This,ISWbemPropertySet **objWbemPropertySet) {
3657     return This->lpVtbl->get_SystemProperties_(This,objWbemPropertySet);
3658 }
3659 static FORCEINLINE HRESULT ISWbemObjectEx_GetText_(ISWbemObjectEx* This,WbemObjectTextFormatEnum iObjectTextFormat,LONG iFlags,IDispatch *objWbemNamedValueSet,BSTR *bsText) {
3660     return This->lpVtbl->GetText_(This,iObjectTextFormat,iFlags,objWbemNamedValueSet,bsText);
3661 }
3662 static FORCEINLINE HRESULT ISWbemObjectEx_SetFromText_(ISWbemObjectEx* This,BSTR bsText,WbemObjectTextFormatEnum iObjectTextFormat,LONG iFlags,IDispatch *objWbemNamedValueSet) {
3663     return This->lpVtbl->SetFromText_(This,bsText,iObjectTextFormat,iFlags,objWbemNamedValueSet);
3664 }
3665 #endif
3666 #endif
3667 
3668 #endif
3669 
3670 HRESULT STDMETHODCALLTYPE ISWbemObjectEx_Refresh__Proxy(
3671     ISWbemObjectEx* This,
3672     LONG iFlags,
3673     IDispatch *objWbemNamedValueSet);
3674 void __RPC_STUB ISWbemObjectEx_Refresh__Stub(
3675     IRpcStubBuffer* This,
3676     IRpcChannelBuffer* pRpcChannelBuffer,
3677     PRPC_MESSAGE pRpcMessage,
3678     DWORD* pdwStubPhase);
3679 HRESULT STDMETHODCALLTYPE ISWbemObjectEx_get_SystemProperties__Proxy(
3680     ISWbemObjectEx* This,
3681     ISWbemPropertySet **objWbemPropertySet);
3682 void __RPC_STUB ISWbemObjectEx_get_SystemProperties__Stub(
3683     IRpcStubBuffer* This,
3684     IRpcChannelBuffer* pRpcChannelBuffer,
3685     PRPC_MESSAGE pRpcMessage,
3686     DWORD* pdwStubPhase);
3687 HRESULT STDMETHODCALLTYPE ISWbemObjectEx_GetText__Proxy(
3688     ISWbemObjectEx* This,
3689     WbemObjectTextFormatEnum iObjectTextFormat,
3690     LONG iFlags,
3691     IDispatch *objWbemNamedValueSet,
3692     BSTR *bsText);
3693 void __RPC_STUB ISWbemObjectEx_GetText__Stub(
3694     IRpcStubBuffer* This,
3695     IRpcChannelBuffer* pRpcChannelBuffer,
3696     PRPC_MESSAGE pRpcMessage,
3697     DWORD* pdwStubPhase);
3698 HRESULT STDMETHODCALLTYPE ISWbemObjectEx_SetFromText__Proxy(
3699     ISWbemObjectEx* This,
3700     BSTR bsText,
3701     WbemObjectTextFormatEnum iObjectTextFormat,
3702     LONG iFlags,
3703     IDispatch *objWbemNamedValueSet);
3704 void __RPC_STUB ISWbemObjectEx_SetFromText__Stub(
3705     IRpcStubBuffer* This,
3706     IRpcChannelBuffer* pRpcChannelBuffer,
3707     PRPC_MESSAGE pRpcMessage,
3708     DWORD* pdwStubPhase);
3709 
3710 #endif  /* __ISWbemObjectEx_INTERFACE_DEFINED__ */
3711 
3712 /*****************************************************************************
3713  * ISWbemLastError interface
3714  */
3715 #ifndef __ISWbemLastError_INTERFACE_DEFINED__
3716 #define __ISWbemLastError_INTERFACE_DEFINED__
3717 
3718 DEFINE_GUID(IID_ISWbemLastError, 0xd962db84, 0xd4bb, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6);
3719 #if defined(__cplusplus) && !defined(CINTERFACE)
3720 MIDL_INTERFACE("d962db84-d4bb-11d1-8b09-00600806d9b6")
3721 ISWbemLastError : public ISWbemObject
3722 {
3723 };
3724 #ifdef __CRT_UUID_DECL
3725 __CRT_UUID_DECL(ISWbemLastError, 0xd962db84, 0xd4bb, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6)
3726 #endif
3727 #else
3728 typedef struct ISWbemLastErrorVtbl {
3729     BEGIN_INTERFACE
3730 
3731     /*** IUnknown methods ***/
3732     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3733         ISWbemLastError* This,
3734         REFIID riid,
3735         void **ppvObject);
3736 
3737     ULONG (STDMETHODCALLTYPE *AddRef)(
3738         ISWbemLastError* This);
3739 
3740     ULONG (STDMETHODCALLTYPE *Release)(
3741         ISWbemLastError* This);
3742 
3743     /*** IDispatch methods ***/
3744     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3745         ISWbemLastError* This,
3746         UINT *pctinfo);
3747 
3748     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3749         ISWbemLastError* This,
3750         UINT iTInfo,
3751         LCID lcid,
3752         ITypeInfo **ppTInfo);
3753 
3754     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3755         ISWbemLastError* This,
3756         REFIID riid,
3757         LPOLESTR *rgszNames,
3758         UINT cNames,
3759         LCID lcid,
3760         DISPID *rgDispId);
3761 
3762     HRESULT (STDMETHODCALLTYPE *Invoke)(
3763         ISWbemLastError* This,
3764         DISPID dispIdMember,
3765         REFIID riid,
3766         LCID lcid,
3767         WORD wFlags,
3768         DISPPARAMS *pDispParams,
3769         VARIANT *pVarResult,
3770         EXCEPINFO *pExcepInfo,
3771         UINT *puArgErr);
3772 
3773     /*** ISWbemObject methods ***/
3774     HRESULT (STDMETHODCALLTYPE *Put_)(
3775         ISWbemLastError* This,
3776         LONG iFlags,
3777         IDispatch *objWbemNamedValueSet,
3778         ISWbemObjectPath **objWbemObjectPath);
3779 
3780     HRESULT (STDMETHODCALLTYPE *PutAsync_)(
3781         ISWbemLastError* This,
3782         IDispatch *objWbemSink,
3783         LONG iFlags,
3784         IDispatch *objWbemNamedValueSet,
3785         IDispatch *objWbemAsyncContext);
3786 
3787     HRESULT (STDMETHODCALLTYPE *Delete_)(
3788         ISWbemLastError* This,
3789         LONG iFlags,
3790         IDispatch *objWbemNamedValueSet);
3791 
3792     HRESULT (STDMETHODCALLTYPE *DeleteAsync_)(
3793         ISWbemLastError* This,
3794         IDispatch *objWbemSink,
3795         LONG iFlags,
3796         IDispatch *objWbemNamedValueSet,
3797         IDispatch *objWbemAsyncContext);
3798 
3799     HRESULT (STDMETHODCALLTYPE *Instances_)(
3800         ISWbemLastError* This,
3801         LONG iFlags,
3802         IDispatch *objWbemNamedValueSet,
3803         ISWbemObjectSet **objWbemObjectSet);
3804 
3805     HRESULT (STDMETHODCALLTYPE *InstancesAsync_)(
3806         ISWbemLastError* This,
3807         IDispatch *objWbemSink,
3808         LONG iFlags,
3809         IDispatch *objWbemNamedValueSet,
3810         IDispatch *objWbemAsyncContext);
3811 
3812     HRESULT (STDMETHODCALLTYPE *Subclasses_)(
3813         ISWbemLastError* This,
3814         LONG iFlags,
3815         IDispatch *objWbemNamedValueSet,
3816         ISWbemObjectSet **objWbemObjectSet);
3817 
3818     HRESULT (STDMETHODCALLTYPE *SubclassesAsync_)(
3819         ISWbemLastError* This,
3820         IDispatch *objWbemSink,
3821         LONG iFlags,
3822         IDispatch *objWbemNamedValueSet,
3823         IDispatch *objWbemAsyncContext);
3824 
3825     HRESULT (STDMETHODCALLTYPE *Associators_)(
3826         ISWbemLastError* This,
3827         BSTR strAssocClass,
3828         BSTR strResultClass,
3829         BSTR strResultRole,
3830         BSTR strRole,
3831         VARIANT_BOOL bClassesOnly,
3832         VARIANT_BOOL bSchemaOnly,
3833         BSTR strRequiredAssocQualifier,
3834         BSTR strRequiredQualifier,
3835         LONG iFlags,
3836         IDispatch *objWbemNamedValueSet,
3837         ISWbemObjectSet **objWbemObjectSet);
3838 
3839     HRESULT (STDMETHODCALLTYPE *AssociatorsAsync_)(
3840         ISWbemLastError* This,
3841         IDispatch *objWbemSink,
3842         BSTR strAssocClass,
3843         BSTR strResultClass,
3844         BSTR strResultRole,
3845         BSTR strRole,
3846         VARIANT_BOOL bClassesOnly,
3847         VARIANT_BOOL bSchemaOnly,
3848         BSTR strRequiredAssocQualifier,
3849         BSTR strRequiredQualifier,
3850         LONG iFlags,
3851         IDispatch *objWbemNamedValueSet,
3852         IDispatch *objWbemAsyncContext);
3853 
3854     HRESULT (STDMETHODCALLTYPE *References_)(
3855         ISWbemLastError* This,
3856         BSTR strResultClass,
3857         BSTR strRole,
3858         VARIANT_BOOL bClassesOnly,
3859         VARIANT_BOOL bSchemaOnly,
3860         BSTR strRequiredQualifier,
3861         LONG iFlags,
3862         IDispatch *objWbemNamedValueSet,
3863         ISWbemObjectSet **objWbemObjectSet);
3864 
3865     HRESULT (STDMETHODCALLTYPE *ReferencesAsync_)(
3866         ISWbemLastError* This,
3867         IDispatch *objWbemSink,
3868         BSTR strResultClass,
3869         BSTR strRole,
3870         VARIANT_BOOL bClassesOnly,
3871         VARIANT_BOOL bSchemaOnly,
3872         BSTR strRequiredQualifier,
3873         LONG iFlags,
3874         IDispatch *objWbemNamedValueSet,
3875         IDispatch *objWbemAsyncContext);
3876 
3877     HRESULT (STDMETHODCALLTYPE *ExecMethod_)(
3878         ISWbemLastError* This,
3879         BSTR strMethodName,
3880         IDispatch *objWbemInParameters,
3881         LONG iFlags,
3882         IDispatch *objWbemNamedValueSet,
3883         ISWbemObject **objWbemOutParameters);
3884 
3885     HRESULT (STDMETHODCALLTYPE *ExecMethodAsync_)(
3886         ISWbemLastError* This,
3887         IDispatch *objWbemSink,
3888         BSTR strMethodName,
3889         IDispatch *objWbemInParameters,
3890         LONG iFlags,
3891         IDispatch *objWbemNamedValueSet,
3892         IDispatch *objWbemAsyncContext);
3893 
3894     HRESULT (STDMETHODCALLTYPE *Clone_)(
3895         ISWbemLastError* This,
3896         ISWbemObject **objWbemObject);
3897 
3898     HRESULT (STDMETHODCALLTYPE *GetObjectText_)(
3899         ISWbemLastError* This,
3900         LONG iFlags,
3901         BSTR *strObjectText);
3902 
3903     HRESULT (STDMETHODCALLTYPE *SpawnDerivedClass_)(
3904         ISWbemLastError* This,
3905         LONG iFlags,
3906         ISWbemObject **objWbemObject);
3907 
3908     HRESULT (STDMETHODCALLTYPE *SpawnInstance_)(
3909         ISWbemLastError* This,
3910         LONG iFlags,
3911         ISWbemObject **objWbemObject);
3912 
3913     HRESULT (STDMETHODCALLTYPE *CompareTo_)(
3914         ISWbemLastError* This,
3915         IDispatch *objWbemObject,
3916         LONG iFlags,
3917         VARIANT_BOOL *bResult);
3918 
3919     HRESULT (STDMETHODCALLTYPE *get_Qualifiers_)(
3920         ISWbemLastError* This,
3921         ISWbemQualifierSet **objWbemQualifierSet);
3922 
3923     HRESULT (STDMETHODCALLTYPE *get_Properties_)(
3924         ISWbemLastError* This,
3925         ISWbemPropertySet **objWbemPropertySet);
3926 
3927     HRESULT (STDMETHODCALLTYPE *get_Methods_)(
3928         ISWbemLastError* This,
3929         ISWbemMethodSet **objWbemMethodSet);
3930 
3931     HRESULT (STDMETHODCALLTYPE *get_Derivation_)(
3932         ISWbemLastError* This,
3933         VARIANT *strClassNameArray);
3934 
3935     HRESULT (STDMETHODCALLTYPE *get_Path_)(
3936         ISWbemLastError* This,
3937         ISWbemObjectPath **objWbemObjectPath);
3938 
3939     HRESULT (STDMETHODCALLTYPE *get_Security_)(
3940         ISWbemLastError* This,
3941         ISWbemSecurity **objWbemSecurity);
3942 
3943     END_INTERFACE
3944 } ISWbemLastErrorVtbl;
3945 interface ISWbemLastError {
3946     CONST_VTBL ISWbemLastErrorVtbl* lpVtbl;
3947 };
3948 
3949 #ifdef COBJMACROS
3950 #ifndef WIDL_C_INLINE_WRAPPERS
3951 /*** IUnknown methods ***/
3952 #define ISWbemLastError_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3953 #define ISWbemLastError_AddRef(This) (This)->lpVtbl->AddRef(This)
3954 #define ISWbemLastError_Release(This) (This)->lpVtbl->Release(This)
3955 /*** IDispatch methods ***/
3956 #define ISWbemLastError_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3957 #define ISWbemLastError_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3958 #define ISWbemLastError_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3959 #define ISWbemLastError_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3960 /*** ISWbemObject methods ***/
3961 #define ISWbemLastError_Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath) (This)->lpVtbl->Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath)
3962 #define ISWbemLastError_PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3963 #define ISWbemLastError_Delete_(This,iFlags,objWbemNamedValueSet) (This)->lpVtbl->Delete_(This,iFlags,objWbemNamedValueSet)
3964 #define ISWbemLastError_DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3965 #define ISWbemLastError_Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet)
3966 #define ISWbemLastError_InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3967 #define ISWbemLastError_Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet)
3968 #define ISWbemLastError_SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3969 #define ISWbemLastError_Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
3970 #define ISWbemLastError_AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3971 #define ISWbemLastError_References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet) (This)->lpVtbl->References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet)
3972 #define ISWbemLastError_ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3973 #define ISWbemLastError_ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters) (This)->lpVtbl->ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters)
3974 #define ISWbemLastError_ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext) (This)->lpVtbl->ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext)
3975 #define ISWbemLastError_Clone_(This,objWbemObject) (This)->lpVtbl->Clone_(This,objWbemObject)
3976 #define ISWbemLastError_GetObjectText_(This,iFlags,strObjectText) (This)->lpVtbl->GetObjectText_(This,iFlags,strObjectText)
3977 #define ISWbemLastError_SpawnDerivedClass_(This,iFlags,objWbemObject) (This)->lpVtbl->SpawnDerivedClass_(This,iFlags,objWbemObject)
3978 #define ISWbemLastError_SpawnInstance_(This,iFlags,objWbemObject) (This)->lpVtbl->SpawnInstance_(This,iFlags,objWbemObject)
3979 #define ISWbemLastError_CompareTo_(This,objWbemObject,iFlags,bResult) (This)->lpVtbl->CompareTo_(This,objWbemObject,iFlags,bResult)
3980 #define ISWbemLastError_get_Qualifiers_(This,objWbemQualifierSet) (This)->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet)
3981 #define ISWbemLastError_get_Properties_(This,objWbemPropertySet) (This)->lpVtbl->get_Properties_(This,objWbemPropertySet)
3982 #define ISWbemLastError_get_Methods_(This,objWbemMethodSet) (This)->lpVtbl->get_Methods_(This,objWbemMethodSet)
3983 #define ISWbemLastError_get_Derivation_(This,strClassNameArray) (This)->lpVtbl->get_Derivation_(This,strClassNameArray)
3984 #define ISWbemLastError_get_Path_(This,objWbemObjectPath) (This)->lpVtbl->get_Path_(This,objWbemObjectPath)
3985 #define ISWbemLastError_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
3986 #else
3987 /*** IUnknown methods ***/
3988 static FORCEINLINE HRESULT ISWbemLastError_QueryInterface(ISWbemLastError* This,REFIID riid,void **ppvObject) {
3989     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3990 }
3991 static FORCEINLINE ULONG ISWbemLastError_AddRef(ISWbemLastError* This) {
3992     return This->lpVtbl->AddRef(This);
3993 }
3994 static FORCEINLINE ULONG ISWbemLastError_Release(ISWbemLastError* This) {
3995     return This->lpVtbl->Release(This);
3996 }
3997 /*** IDispatch methods ***/
3998 static FORCEINLINE HRESULT ISWbemLastError_GetTypeInfoCount(ISWbemLastError* This,UINT *pctinfo) {
3999     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4000 }
4001 static FORCEINLINE HRESULT ISWbemLastError_GetTypeInfo(ISWbemLastError* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4002     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4003 }
4004 static FORCEINLINE HRESULT ISWbemLastError_GetIDsOfNames(ISWbemLastError* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4005     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4006 }
4007 static FORCEINLINE HRESULT ISWbemLastError_Invoke(ISWbemLastError* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4008     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4009 }
4010 /*** ISWbemObject methods ***/
4011 static FORCEINLINE HRESULT ISWbemLastError_Put_(ISWbemLastError* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectPath **objWbemObjectPath) {
4012     return This->lpVtbl->Put_(This,iFlags,objWbemNamedValueSet,objWbemObjectPath);
4013 }
4014 static FORCEINLINE HRESULT ISWbemLastError_PutAsync_(ISWbemLastError* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
4015     return This->lpVtbl->PutAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
4016 }
4017 static FORCEINLINE HRESULT ISWbemLastError_Delete_(ISWbemLastError* This,LONG iFlags,IDispatch *objWbemNamedValueSet) {
4018     return This->lpVtbl->Delete_(This,iFlags,objWbemNamedValueSet);
4019 }
4020 static FORCEINLINE HRESULT ISWbemLastError_DeleteAsync_(ISWbemLastError* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
4021     return This->lpVtbl->DeleteAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
4022 }
4023 static FORCEINLINE HRESULT ISWbemLastError_Instances_(ISWbemLastError* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
4024     return This->lpVtbl->Instances_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet);
4025 }
4026 static FORCEINLINE HRESULT ISWbemLastError_InstancesAsync_(ISWbemLastError* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
4027     return This->lpVtbl->InstancesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
4028 }
4029 static FORCEINLINE HRESULT ISWbemLastError_Subclasses_(ISWbemLastError* This,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
4030     return This->lpVtbl->Subclasses_(This,iFlags,objWbemNamedValueSet,objWbemObjectSet);
4031 }
4032 static FORCEINLINE HRESULT ISWbemLastError_SubclassesAsync_(ISWbemLastError* This,IDispatch *objWbemSink,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
4033     return This->lpVtbl->SubclassesAsync_(This,objWbemSink,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
4034 }
4035 static FORCEINLINE HRESULT ISWbemLastError_Associators_(ISWbemLastError* This,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
4036     return This->lpVtbl->Associators_(This,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
4037 }
4038 static FORCEINLINE HRESULT ISWbemLastError_AssociatorsAsync_(ISWbemLastError* This,IDispatch *objWbemSink,BSTR strAssocClass,BSTR strResultClass,BSTR strResultRole,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredAssocQualifier,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
4039     return This->lpVtbl->AssociatorsAsync_(This,objWbemSink,strAssocClass,strResultClass,strResultRole,strRole,bClassesOnly,bSchemaOnly,strRequiredAssocQualifier,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
4040 }
4041 static FORCEINLINE HRESULT ISWbemLastError_References_(ISWbemLastError* This,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObjectSet **objWbemObjectSet) {
4042     return This->lpVtbl->References_(This,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemObjectSet);
4043 }
4044 static FORCEINLINE HRESULT ISWbemLastError_ReferencesAsync_(ISWbemLastError* This,IDispatch *objWbemSink,BSTR strResultClass,BSTR strRole,VARIANT_BOOL bClassesOnly,VARIANT_BOOL bSchemaOnly,BSTR strRequiredQualifier,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
4045     return This->lpVtbl->ReferencesAsync_(This,objWbemSink,strResultClass,strRole,bClassesOnly,bSchemaOnly,strRequiredQualifier,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
4046 }
4047 static FORCEINLINE HRESULT ISWbemLastError_ExecMethod_(ISWbemLastError* This,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemObject **objWbemOutParameters) {
4048     return This->lpVtbl->ExecMethod_(This,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemOutParameters);
4049 }
4050 static FORCEINLINE HRESULT ISWbemLastError_ExecMethodAsync_(ISWbemLastError* This,IDispatch *objWbemSink,BSTR strMethodName,IDispatch *objWbemInParameters,LONG iFlags,IDispatch *objWbemNamedValueSet,IDispatch *objWbemAsyncContext) {
4051     return This->lpVtbl->ExecMethodAsync_(This,objWbemSink,strMethodName,objWbemInParameters,iFlags,objWbemNamedValueSet,objWbemAsyncContext);
4052 }
4053 static FORCEINLINE HRESULT ISWbemLastError_Clone_(ISWbemLastError* This,ISWbemObject **objWbemObject) {
4054     return This->lpVtbl->Clone_(This,objWbemObject);
4055 }
4056 static FORCEINLINE HRESULT ISWbemLastError_GetObjectText_(ISWbemLastError* This,LONG iFlags,BSTR *strObjectText) {
4057     return This->lpVtbl->GetObjectText_(This,iFlags,strObjectText);
4058 }
4059 static FORCEINLINE HRESULT ISWbemLastError_SpawnDerivedClass_(ISWbemLastError* This,LONG iFlags,ISWbemObject **objWbemObject) {
4060     return This->lpVtbl->SpawnDerivedClass_(This,iFlags,objWbemObject);
4061 }
4062 static FORCEINLINE HRESULT ISWbemLastError_SpawnInstance_(ISWbemLastError* This,LONG iFlags,ISWbemObject **objWbemObject) {
4063     return This->lpVtbl->SpawnInstance_(This,iFlags,objWbemObject);
4064 }
4065 static FORCEINLINE HRESULT ISWbemLastError_CompareTo_(ISWbemLastError* This,IDispatch *objWbemObject,LONG iFlags,VARIANT_BOOL *bResult) {
4066     return This->lpVtbl->CompareTo_(This,objWbemObject,iFlags,bResult);
4067 }
4068 static FORCEINLINE HRESULT ISWbemLastError_get_Qualifiers_(ISWbemLastError* This,ISWbemQualifierSet **objWbemQualifierSet) {
4069     return This->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet);
4070 }
4071 static FORCEINLINE HRESULT ISWbemLastError_get_Properties_(ISWbemLastError* This,ISWbemPropertySet **objWbemPropertySet) {
4072     return This->lpVtbl->get_Properties_(This,objWbemPropertySet);
4073 }
4074 static FORCEINLINE HRESULT ISWbemLastError_get_Methods_(ISWbemLastError* This,ISWbemMethodSet **objWbemMethodSet) {
4075     return This->lpVtbl->get_Methods_(This,objWbemMethodSet);
4076 }
4077 static FORCEINLINE HRESULT ISWbemLastError_get_Derivation_(ISWbemLastError* This,VARIANT *strClassNameArray) {
4078     return This->lpVtbl->get_Derivation_(This,strClassNameArray);
4079 }
4080 static FORCEINLINE HRESULT ISWbemLastError_get_Path_(ISWbemLastError* This,ISWbemObjectPath **objWbemObjectPath) {
4081     return This->lpVtbl->get_Path_(This,objWbemObjectPath);
4082 }
4083 static FORCEINLINE HRESULT ISWbemLastError_get_Security_(ISWbemLastError* This,ISWbemSecurity **objWbemSecurity) {
4084     return This->lpVtbl->get_Security_(This,objWbemSecurity);
4085 }
4086 #endif
4087 #endif
4088 
4089 #endif
4090 
4091 
4092 #endif  /* __ISWbemLastError_INTERFACE_DEFINED__ */
4093 
4094 /*****************************************************************************
4095  * ISWbemObjectSet interface
4096  */
4097 #ifndef __ISWbemObjectSet_INTERFACE_DEFINED__
4098 #define __ISWbemObjectSet_INTERFACE_DEFINED__
4099 
4100 DEFINE_GUID(IID_ISWbemObjectSet, 0x76a6415f, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6);
4101 #if defined(__cplusplus) && !defined(CINTERFACE)
4102 MIDL_INTERFACE("76a6415f-cb41-11d1-8b02-00600806d9b6")
4103 ISWbemObjectSet : public IDispatch
4104 {
4105     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
4106         IUnknown **pUnk) = 0;
4107 
4108     virtual HRESULT STDMETHODCALLTYPE Item(
4109         BSTR strObjectPath,
4110         LONG iFlags = 0,
4111         ISWbemObject **objWbemObject = 0) = 0;
4112 
4113     virtual HRESULT STDMETHODCALLTYPE get_Count(
4114         LONG *iCount) = 0;
4115 
4116     virtual HRESULT STDMETHODCALLTYPE get_Security_(
4117         ISWbemSecurity **objWbemSecurity) = 0;
4118 
4119     virtual HRESULT STDMETHODCALLTYPE ItemIndex(
4120         LONG lIndex,
4121         ISWbemObject **objWbemObject) = 0;
4122 
4123 };
4124 #ifdef __CRT_UUID_DECL
4125 __CRT_UUID_DECL(ISWbemObjectSet, 0x76a6415f, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6)
4126 #endif
4127 #else
4128 typedef struct ISWbemObjectSetVtbl {
4129     BEGIN_INTERFACE
4130 
4131     /*** IUnknown methods ***/
4132     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4133         ISWbemObjectSet* This,
4134         REFIID riid,
4135         void **ppvObject);
4136 
4137     ULONG (STDMETHODCALLTYPE *AddRef)(
4138         ISWbemObjectSet* This);
4139 
4140     ULONG (STDMETHODCALLTYPE *Release)(
4141         ISWbemObjectSet* This);
4142 
4143     /*** IDispatch methods ***/
4144     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4145         ISWbemObjectSet* This,
4146         UINT *pctinfo);
4147 
4148     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4149         ISWbemObjectSet* This,
4150         UINT iTInfo,
4151         LCID lcid,
4152         ITypeInfo **ppTInfo);
4153 
4154     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4155         ISWbemObjectSet* This,
4156         REFIID riid,
4157         LPOLESTR *rgszNames,
4158         UINT cNames,
4159         LCID lcid,
4160         DISPID *rgDispId);
4161 
4162     HRESULT (STDMETHODCALLTYPE *Invoke)(
4163         ISWbemObjectSet* This,
4164         DISPID dispIdMember,
4165         REFIID riid,
4166         LCID lcid,
4167         WORD wFlags,
4168         DISPPARAMS *pDispParams,
4169         VARIANT *pVarResult,
4170         EXCEPINFO *pExcepInfo,
4171         UINT *puArgErr);
4172 
4173     /*** ISWbemObjectSet methods ***/
4174     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
4175         ISWbemObjectSet* This,
4176         IUnknown **pUnk);
4177 
4178     HRESULT (STDMETHODCALLTYPE *Item)(
4179         ISWbemObjectSet* This,
4180         BSTR strObjectPath,
4181         LONG iFlags,
4182         ISWbemObject **objWbemObject);
4183 
4184     HRESULT (STDMETHODCALLTYPE *get_Count)(
4185         ISWbemObjectSet* This,
4186         LONG *iCount);
4187 
4188     HRESULT (STDMETHODCALLTYPE *get_Security_)(
4189         ISWbemObjectSet* This,
4190         ISWbemSecurity **objWbemSecurity);
4191 
4192     HRESULT (STDMETHODCALLTYPE *ItemIndex)(
4193         ISWbemObjectSet* This,
4194         LONG lIndex,
4195         ISWbemObject **objWbemObject);
4196 
4197     END_INTERFACE
4198 } ISWbemObjectSetVtbl;
4199 interface ISWbemObjectSet {
4200     CONST_VTBL ISWbemObjectSetVtbl* lpVtbl;
4201 };
4202 
4203 #ifdef COBJMACROS
4204 #ifndef WIDL_C_INLINE_WRAPPERS
4205 /*** IUnknown methods ***/
4206 #define ISWbemObjectSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4207 #define ISWbemObjectSet_AddRef(This) (This)->lpVtbl->AddRef(This)
4208 #define ISWbemObjectSet_Release(This) (This)->lpVtbl->Release(This)
4209 /*** IDispatch methods ***/
4210 #define ISWbemObjectSet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4211 #define ISWbemObjectSet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4212 #define ISWbemObjectSet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4213 #define ISWbemObjectSet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4214 /*** ISWbemObjectSet methods ***/
4215 #define ISWbemObjectSet_get__NewEnum(This,pUnk) (This)->lpVtbl->get__NewEnum(This,pUnk)
4216 #define ISWbemObjectSet_Item(This,strObjectPath,iFlags,objWbemObject) (This)->lpVtbl->Item(This,strObjectPath,iFlags,objWbemObject)
4217 #define ISWbemObjectSet_get_Count(This,iCount) (This)->lpVtbl->get_Count(This,iCount)
4218 #define ISWbemObjectSet_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
4219 #define ISWbemObjectSet_ItemIndex(This,lIndex,objWbemObject) (This)->lpVtbl->ItemIndex(This,lIndex,objWbemObject)
4220 #else
4221 /*** IUnknown methods ***/
4222 static FORCEINLINE HRESULT ISWbemObjectSet_QueryInterface(ISWbemObjectSet* This,REFIID riid,void **ppvObject) {
4223     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4224 }
4225 static FORCEINLINE ULONG ISWbemObjectSet_AddRef(ISWbemObjectSet* This) {
4226     return This->lpVtbl->AddRef(This);
4227 }
4228 static FORCEINLINE ULONG ISWbemObjectSet_Release(ISWbemObjectSet* This) {
4229     return This->lpVtbl->Release(This);
4230 }
4231 /*** IDispatch methods ***/
4232 static FORCEINLINE HRESULT ISWbemObjectSet_GetTypeInfoCount(ISWbemObjectSet* This,UINT *pctinfo) {
4233     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4234 }
4235 static FORCEINLINE HRESULT ISWbemObjectSet_GetTypeInfo(ISWbemObjectSet* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4236     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4237 }
4238 static FORCEINLINE HRESULT ISWbemObjectSet_GetIDsOfNames(ISWbemObjectSet* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4239     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4240 }
4241 static FORCEINLINE HRESULT ISWbemObjectSet_Invoke(ISWbemObjectSet* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4242     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4243 }
4244 /*** ISWbemObjectSet methods ***/
4245 static FORCEINLINE HRESULT ISWbemObjectSet_get__NewEnum(ISWbemObjectSet* This,IUnknown **pUnk) {
4246     return This->lpVtbl->get__NewEnum(This,pUnk);
4247 }
4248 static FORCEINLINE HRESULT ISWbemObjectSet_Item(ISWbemObjectSet* This,BSTR strObjectPath,LONG iFlags,ISWbemObject **objWbemObject) {
4249     return This->lpVtbl->Item(This,strObjectPath,iFlags,objWbemObject);
4250 }
4251 static FORCEINLINE HRESULT ISWbemObjectSet_get_Count(ISWbemObjectSet* This,LONG *iCount) {
4252     return This->lpVtbl->get_Count(This,iCount);
4253 }
4254 static FORCEINLINE HRESULT ISWbemObjectSet_get_Security_(ISWbemObjectSet* This,ISWbemSecurity **objWbemSecurity) {
4255     return This->lpVtbl->get_Security_(This,objWbemSecurity);
4256 }
4257 static FORCEINLINE HRESULT ISWbemObjectSet_ItemIndex(ISWbemObjectSet* This,LONG lIndex,ISWbemObject **objWbemObject) {
4258     return This->lpVtbl->ItemIndex(This,lIndex,objWbemObject);
4259 }
4260 #endif
4261 #endif
4262 
4263 #endif
4264 
4265 HRESULT STDMETHODCALLTYPE ISWbemObjectSet_get__NewEnum_Proxy(
4266     ISWbemObjectSet* This,
4267     IUnknown **pUnk);
4268 void __RPC_STUB ISWbemObjectSet_get__NewEnum_Stub(
4269     IRpcStubBuffer* This,
4270     IRpcChannelBuffer* pRpcChannelBuffer,
4271     PRPC_MESSAGE pRpcMessage,
4272     DWORD* pdwStubPhase);
4273 HRESULT STDMETHODCALLTYPE ISWbemObjectSet_Item_Proxy(
4274     ISWbemObjectSet* This,
4275     BSTR strObjectPath,
4276     LONG iFlags,
4277     ISWbemObject **objWbemObject);
4278 void __RPC_STUB ISWbemObjectSet_Item_Stub(
4279     IRpcStubBuffer* This,
4280     IRpcChannelBuffer* pRpcChannelBuffer,
4281     PRPC_MESSAGE pRpcMessage,
4282     DWORD* pdwStubPhase);
4283 HRESULT STDMETHODCALLTYPE ISWbemObjectSet_get_Count_Proxy(
4284     ISWbemObjectSet* This,
4285     LONG *iCount);
4286 void __RPC_STUB ISWbemObjectSet_get_Count_Stub(
4287     IRpcStubBuffer* This,
4288     IRpcChannelBuffer* pRpcChannelBuffer,
4289     PRPC_MESSAGE pRpcMessage,
4290     DWORD* pdwStubPhase);
4291 HRESULT STDMETHODCALLTYPE ISWbemObjectSet_get_Security__Proxy(
4292     ISWbemObjectSet* This,
4293     ISWbemSecurity **objWbemSecurity);
4294 void __RPC_STUB ISWbemObjectSet_get_Security__Stub(
4295     IRpcStubBuffer* This,
4296     IRpcChannelBuffer* pRpcChannelBuffer,
4297     PRPC_MESSAGE pRpcMessage,
4298     DWORD* pdwStubPhase);
4299 HRESULT STDMETHODCALLTYPE ISWbemObjectSet_ItemIndex_Proxy(
4300     ISWbemObjectSet* This,
4301     LONG lIndex,
4302     ISWbemObject **objWbemObject);
4303 void __RPC_STUB ISWbemObjectSet_ItemIndex_Stub(
4304     IRpcStubBuffer* This,
4305     IRpcChannelBuffer* pRpcChannelBuffer,
4306     PRPC_MESSAGE pRpcMessage,
4307     DWORD* pdwStubPhase);
4308 
4309 #endif  /* __ISWbemObjectSet_INTERFACE_DEFINED__ */
4310 
4311 /*****************************************************************************
4312  * ISWbemNamedValueSet interface
4313  */
4314 #ifndef __ISWbemNamedValueSet_INTERFACE_DEFINED__
4315 #define __ISWbemNamedValueSet_INTERFACE_DEFINED__
4316 
4317 DEFINE_GUID(IID_ISWbemNamedValueSet, 0xcf2376ea, 0xce8c, 0x11d1, 0x8b,0x05, 0x00,0x60,0x08,0x06,0xd9,0xb6);
4318 #if defined(__cplusplus) && !defined(CINTERFACE)
4319 MIDL_INTERFACE("cf2376ea-ce8c-11d1-8b05-00600806d9b6")
4320 ISWbemNamedValueSet : public IDispatch
4321 {
4322     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
4323         IUnknown **pUnk) = 0;
4324 
4325     virtual HRESULT STDMETHODCALLTYPE Item(
4326         BSTR strName,
4327         LONG iFlags = 0,
4328         ISWbemNamedValue **objWbemNamedValue = 0) = 0;
4329 
4330     virtual HRESULT STDMETHODCALLTYPE get_Count(
4331         LONG *iCount) = 0;
4332 
4333     virtual HRESULT STDMETHODCALLTYPE Add(
4334         BSTR strName,
4335         VARIANT *varValue,
4336         LONG iFlags = 0,
4337         ISWbemNamedValue **objWbemNamedValue = 0) = 0;
4338 
4339     virtual HRESULT STDMETHODCALLTYPE Remove(
4340         BSTR strName,
4341         LONG iFlags = 0) = 0;
4342 
4343     virtual HRESULT STDMETHODCALLTYPE Clone(
4344         ISWbemNamedValueSet **objWbemNamedValueSet) = 0;
4345 
4346     virtual HRESULT STDMETHODCALLTYPE DeleteAll(
4347         ) = 0;
4348 
4349 };
4350 #ifdef __CRT_UUID_DECL
4351 __CRT_UUID_DECL(ISWbemNamedValueSet, 0xcf2376ea, 0xce8c, 0x11d1, 0x8b,0x05, 0x00,0x60,0x08,0x06,0xd9,0xb6)
4352 #endif
4353 #else
4354 typedef struct ISWbemNamedValueSetVtbl {
4355     BEGIN_INTERFACE
4356 
4357     /*** IUnknown methods ***/
4358     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4359         ISWbemNamedValueSet* This,
4360         REFIID riid,
4361         void **ppvObject);
4362 
4363     ULONG (STDMETHODCALLTYPE *AddRef)(
4364         ISWbemNamedValueSet* This);
4365 
4366     ULONG (STDMETHODCALLTYPE *Release)(
4367         ISWbemNamedValueSet* This);
4368 
4369     /*** IDispatch methods ***/
4370     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4371         ISWbemNamedValueSet* This,
4372         UINT *pctinfo);
4373 
4374     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4375         ISWbemNamedValueSet* This,
4376         UINT iTInfo,
4377         LCID lcid,
4378         ITypeInfo **ppTInfo);
4379 
4380     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4381         ISWbemNamedValueSet* This,
4382         REFIID riid,
4383         LPOLESTR *rgszNames,
4384         UINT cNames,
4385         LCID lcid,
4386         DISPID *rgDispId);
4387 
4388     HRESULT (STDMETHODCALLTYPE *Invoke)(
4389         ISWbemNamedValueSet* This,
4390         DISPID dispIdMember,
4391         REFIID riid,
4392         LCID lcid,
4393         WORD wFlags,
4394         DISPPARAMS *pDispParams,
4395         VARIANT *pVarResult,
4396         EXCEPINFO *pExcepInfo,
4397         UINT *puArgErr);
4398 
4399     /*** ISWbemNamedValueSet methods ***/
4400     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
4401         ISWbemNamedValueSet* This,
4402         IUnknown **pUnk);
4403 
4404     HRESULT (STDMETHODCALLTYPE *Item)(
4405         ISWbemNamedValueSet* This,
4406         BSTR strName,
4407         LONG iFlags,
4408         ISWbemNamedValue **objWbemNamedValue);
4409 
4410     HRESULT (STDMETHODCALLTYPE *get_Count)(
4411         ISWbemNamedValueSet* This,
4412         LONG *iCount);
4413 
4414     HRESULT (STDMETHODCALLTYPE *Add)(
4415         ISWbemNamedValueSet* This,
4416         BSTR strName,
4417         VARIANT *varValue,
4418         LONG iFlags,
4419         ISWbemNamedValue **objWbemNamedValue);
4420 
4421     HRESULT (STDMETHODCALLTYPE *Remove)(
4422         ISWbemNamedValueSet* This,
4423         BSTR strName,
4424         LONG iFlags);
4425 
4426     HRESULT (STDMETHODCALLTYPE *Clone)(
4427         ISWbemNamedValueSet* This,
4428         ISWbemNamedValueSet **objWbemNamedValueSet);
4429 
4430     HRESULT (STDMETHODCALLTYPE *DeleteAll)(
4431         ISWbemNamedValueSet* This);
4432 
4433     END_INTERFACE
4434 } ISWbemNamedValueSetVtbl;
4435 interface ISWbemNamedValueSet {
4436     CONST_VTBL ISWbemNamedValueSetVtbl* lpVtbl;
4437 };
4438 
4439 #ifdef COBJMACROS
4440 #ifndef WIDL_C_INLINE_WRAPPERS
4441 /*** IUnknown methods ***/
4442 #define ISWbemNamedValueSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4443 #define ISWbemNamedValueSet_AddRef(This) (This)->lpVtbl->AddRef(This)
4444 #define ISWbemNamedValueSet_Release(This) (This)->lpVtbl->Release(This)
4445 /*** IDispatch methods ***/
4446 #define ISWbemNamedValueSet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4447 #define ISWbemNamedValueSet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4448 #define ISWbemNamedValueSet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4449 #define ISWbemNamedValueSet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4450 /*** ISWbemNamedValueSet methods ***/
4451 #define ISWbemNamedValueSet_get__NewEnum(This,pUnk) (This)->lpVtbl->get__NewEnum(This,pUnk)
4452 #define ISWbemNamedValueSet_Item(This,strName,iFlags,objWbemNamedValue) (This)->lpVtbl->Item(This,strName,iFlags,objWbemNamedValue)
4453 #define ISWbemNamedValueSet_get_Count(This,iCount) (This)->lpVtbl->get_Count(This,iCount)
4454 #define ISWbemNamedValueSet_Add(This,strName,varValue,iFlags,objWbemNamedValue) (This)->lpVtbl->Add(This,strName,varValue,iFlags,objWbemNamedValue)
4455 #define ISWbemNamedValueSet_Remove(This,strName,iFlags) (This)->lpVtbl->Remove(This,strName,iFlags)
4456 #define ISWbemNamedValueSet_Clone(This,objWbemNamedValueSet) (This)->lpVtbl->Clone(This,objWbemNamedValueSet)
4457 #define ISWbemNamedValueSet_DeleteAll(This) (This)->lpVtbl->DeleteAll(This)
4458 #else
4459 /*** IUnknown methods ***/
4460 static FORCEINLINE HRESULT ISWbemNamedValueSet_QueryInterface(ISWbemNamedValueSet* This,REFIID riid,void **ppvObject) {
4461     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4462 }
4463 static FORCEINLINE ULONG ISWbemNamedValueSet_AddRef(ISWbemNamedValueSet* This) {
4464     return This->lpVtbl->AddRef(This);
4465 }
4466 static FORCEINLINE ULONG ISWbemNamedValueSet_Release(ISWbemNamedValueSet* This) {
4467     return This->lpVtbl->Release(This);
4468 }
4469 /*** IDispatch methods ***/
4470 static FORCEINLINE HRESULT ISWbemNamedValueSet_GetTypeInfoCount(ISWbemNamedValueSet* This,UINT *pctinfo) {
4471     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4472 }
4473 static FORCEINLINE HRESULT ISWbemNamedValueSet_GetTypeInfo(ISWbemNamedValueSet* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4474     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4475 }
4476 static FORCEINLINE HRESULT ISWbemNamedValueSet_GetIDsOfNames(ISWbemNamedValueSet* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4477     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4478 }
4479 static FORCEINLINE HRESULT ISWbemNamedValueSet_Invoke(ISWbemNamedValueSet* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4480     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4481 }
4482 /*** ISWbemNamedValueSet methods ***/
4483 static FORCEINLINE HRESULT ISWbemNamedValueSet_get__NewEnum(ISWbemNamedValueSet* This,IUnknown **pUnk) {
4484     return This->lpVtbl->get__NewEnum(This,pUnk);
4485 }
4486 static FORCEINLINE HRESULT ISWbemNamedValueSet_Item(ISWbemNamedValueSet* This,BSTR strName,LONG iFlags,ISWbemNamedValue **objWbemNamedValue) {
4487     return This->lpVtbl->Item(This,strName,iFlags,objWbemNamedValue);
4488 }
4489 static FORCEINLINE HRESULT ISWbemNamedValueSet_get_Count(ISWbemNamedValueSet* This,LONG *iCount) {
4490     return This->lpVtbl->get_Count(This,iCount);
4491 }
4492 static FORCEINLINE HRESULT ISWbemNamedValueSet_Add(ISWbemNamedValueSet* This,BSTR strName,VARIANT *varValue,LONG iFlags,ISWbemNamedValue **objWbemNamedValue) {
4493     return This->lpVtbl->Add(This,strName,varValue,iFlags,objWbemNamedValue);
4494 }
4495 static FORCEINLINE HRESULT ISWbemNamedValueSet_Remove(ISWbemNamedValueSet* This,BSTR strName,LONG iFlags) {
4496     return This->lpVtbl->Remove(This,strName,iFlags);
4497 }
4498 static FORCEINLINE HRESULT ISWbemNamedValueSet_Clone(ISWbemNamedValueSet* This,ISWbemNamedValueSet **objWbemNamedValueSet) {
4499     return This->lpVtbl->Clone(This,objWbemNamedValueSet);
4500 }
4501 static FORCEINLINE HRESULT ISWbemNamedValueSet_DeleteAll(ISWbemNamedValueSet* This) {
4502     return This->lpVtbl->DeleteAll(This);
4503 }
4504 #endif
4505 #endif
4506 
4507 #endif
4508 
4509 HRESULT STDMETHODCALLTYPE ISWbemNamedValueSet_get__NewEnum_Proxy(
4510     ISWbemNamedValueSet* This,
4511     IUnknown **pUnk);
4512 void __RPC_STUB ISWbemNamedValueSet_get__NewEnum_Stub(
4513     IRpcStubBuffer* This,
4514     IRpcChannelBuffer* pRpcChannelBuffer,
4515     PRPC_MESSAGE pRpcMessage,
4516     DWORD* pdwStubPhase);
4517 HRESULT STDMETHODCALLTYPE ISWbemNamedValueSet_Item_Proxy(
4518     ISWbemNamedValueSet* This,
4519     BSTR strName,
4520     LONG iFlags,
4521     ISWbemNamedValue **objWbemNamedValue);
4522 void __RPC_STUB ISWbemNamedValueSet_Item_Stub(
4523     IRpcStubBuffer* This,
4524     IRpcChannelBuffer* pRpcChannelBuffer,
4525     PRPC_MESSAGE pRpcMessage,
4526     DWORD* pdwStubPhase);
4527 HRESULT STDMETHODCALLTYPE ISWbemNamedValueSet_get_Count_Proxy(
4528     ISWbemNamedValueSet* This,
4529     LONG *iCount);
4530 void __RPC_STUB ISWbemNamedValueSet_get_Count_Stub(
4531     IRpcStubBuffer* This,
4532     IRpcChannelBuffer* pRpcChannelBuffer,
4533     PRPC_MESSAGE pRpcMessage,
4534     DWORD* pdwStubPhase);
4535 HRESULT STDMETHODCALLTYPE ISWbemNamedValueSet_Add_Proxy(
4536     ISWbemNamedValueSet* This,
4537     BSTR strName,
4538     VARIANT *varValue,
4539     LONG iFlags,
4540     ISWbemNamedValue **objWbemNamedValue);
4541 void __RPC_STUB ISWbemNamedValueSet_Add_Stub(
4542     IRpcStubBuffer* This,
4543     IRpcChannelBuffer* pRpcChannelBuffer,
4544     PRPC_MESSAGE pRpcMessage,
4545     DWORD* pdwStubPhase);
4546 HRESULT STDMETHODCALLTYPE ISWbemNamedValueSet_Remove_Proxy(
4547     ISWbemNamedValueSet* This,
4548     BSTR strName,
4549     LONG iFlags);
4550 void __RPC_STUB ISWbemNamedValueSet_Remove_Stub(
4551     IRpcStubBuffer* This,
4552     IRpcChannelBuffer* pRpcChannelBuffer,
4553     PRPC_MESSAGE pRpcMessage,
4554     DWORD* pdwStubPhase);
4555 HRESULT STDMETHODCALLTYPE ISWbemNamedValueSet_Clone_Proxy(
4556     ISWbemNamedValueSet* This,
4557     ISWbemNamedValueSet **objWbemNamedValueSet);
4558 void __RPC_STUB ISWbemNamedValueSet_Clone_Stub(
4559     IRpcStubBuffer* This,
4560     IRpcChannelBuffer* pRpcChannelBuffer,
4561     PRPC_MESSAGE pRpcMessage,
4562     DWORD* pdwStubPhase);
4563 HRESULT STDMETHODCALLTYPE ISWbemNamedValueSet_DeleteAll_Proxy(
4564     ISWbemNamedValueSet* This);
4565 void __RPC_STUB ISWbemNamedValueSet_DeleteAll_Stub(
4566     IRpcStubBuffer* This,
4567     IRpcChannelBuffer* pRpcChannelBuffer,
4568     PRPC_MESSAGE pRpcMessage,
4569     DWORD* pdwStubPhase);
4570 
4571 #endif  /* __ISWbemNamedValueSet_INTERFACE_DEFINED__ */
4572 
4573 /*****************************************************************************
4574  * ISWbemNamedValue interface
4575  */
4576 #ifndef __ISWbemNamedValue_INTERFACE_DEFINED__
4577 #define __ISWbemNamedValue_INTERFACE_DEFINED__
4578 
4579 DEFINE_GUID(IID_ISWbemNamedValue, 0x76a64164, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6);
4580 #if defined(__cplusplus) && !defined(CINTERFACE)
4581 MIDL_INTERFACE("76a64164-cb41-11d1-8b02-00600806d9b6")
4582 ISWbemNamedValue : public IDispatch
4583 {
4584     virtual HRESULT STDMETHODCALLTYPE get_Value(
4585         VARIANT *varValue) = 0;
4586 
4587     virtual HRESULT STDMETHODCALLTYPE put_Value(
4588         VARIANT *varValue) = 0;
4589 
4590     virtual HRESULT STDMETHODCALLTYPE get_Name(
4591         BSTR *strName) = 0;
4592 
4593 };
4594 #ifdef __CRT_UUID_DECL
4595 __CRT_UUID_DECL(ISWbemNamedValue, 0x76a64164, 0xcb41, 0x11d1, 0x8b,0x02, 0x00,0x60,0x08,0x06,0xd9,0xb6)
4596 #endif
4597 #else
4598 typedef struct ISWbemNamedValueVtbl {
4599     BEGIN_INTERFACE
4600 
4601     /*** IUnknown methods ***/
4602     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4603         ISWbemNamedValue* This,
4604         REFIID riid,
4605         void **ppvObject);
4606 
4607     ULONG (STDMETHODCALLTYPE *AddRef)(
4608         ISWbemNamedValue* This);
4609 
4610     ULONG (STDMETHODCALLTYPE *Release)(
4611         ISWbemNamedValue* This);
4612 
4613     /*** IDispatch methods ***/
4614     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4615         ISWbemNamedValue* This,
4616         UINT *pctinfo);
4617 
4618     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4619         ISWbemNamedValue* This,
4620         UINT iTInfo,
4621         LCID lcid,
4622         ITypeInfo **ppTInfo);
4623 
4624     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4625         ISWbemNamedValue* This,
4626         REFIID riid,
4627         LPOLESTR *rgszNames,
4628         UINT cNames,
4629         LCID lcid,
4630         DISPID *rgDispId);
4631 
4632     HRESULT (STDMETHODCALLTYPE *Invoke)(
4633         ISWbemNamedValue* This,
4634         DISPID dispIdMember,
4635         REFIID riid,
4636         LCID lcid,
4637         WORD wFlags,
4638         DISPPARAMS *pDispParams,
4639         VARIANT *pVarResult,
4640         EXCEPINFO *pExcepInfo,
4641         UINT *puArgErr);
4642 
4643     /*** ISWbemNamedValue methods ***/
4644     HRESULT (STDMETHODCALLTYPE *get_Value)(
4645         ISWbemNamedValue* This,
4646         VARIANT *varValue);
4647 
4648     HRESULT (STDMETHODCALLTYPE *put_Value)(
4649         ISWbemNamedValue* This,
4650         VARIANT *varValue);
4651 
4652     HRESULT (STDMETHODCALLTYPE *get_Name)(
4653         ISWbemNamedValue* This,
4654         BSTR *strName);
4655 
4656     END_INTERFACE
4657 } ISWbemNamedValueVtbl;
4658 interface ISWbemNamedValue {
4659     CONST_VTBL ISWbemNamedValueVtbl* lpVtbl;
4660 };
4661 
4662 #ifdef COBJMACROS
4663 #ifndef WIDL_C_INLINE_WRAPPERS
4664 /*** IUnknown methods ***/
4665 #define ISWbemNamedValue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4666 #define ISWbemNamedValue_AddRef(This) (This)->lpVtbl->AddRef(This)
4667 #define ISWbemNamedValue_Release(This) (This)->lpVtbl->Release(This)
4668 /*** IDispatch methods ***/
4669 #define ISWbemNamedValue_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4670 #define ISWbemNamedValue_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4671 #define ISWbemNamedValue_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4672 #define ISWbemNamedValue_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4673 /*** ISWbemNamedValue methods ***/
4674 #define ISWbemNamedValue_get_Value(This,varValue) (This)->lpVtbl->get_Value(This,varValue)
4675 #define ISWbemNamedValue_put_Value(This,varValue) (This)->lpVtbl->put_Value(This,varValue)
4676 #define ISWbemNamedValue_get_Name(This,strName) (This)->lpVtbl->get_Name(This,strName)
4677 #else
4678 /*** IUnknown methods ***/
4679 static FORCEINLINE HRESULT ISWbemNamedValue_QueryInterface(ISWbemNamedValue* This,REFIID riid,void **ppvObject) {
4680     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4681 }
4682 static FORCEINLINE ULONG ISWbemNamedValue_AddRef(ISWbemNamedValue* This) {
4683     return This->lpVtbl->AddRef(This);
4684 }
4685 static FORCEINLINE ULONG ISWbemNamedValue_Release(ISWbemNamedValue* This) {
4686     return This->lpVtbl->Release(This);
4687 }
4688 /*** IDispatch methods ***/
4689 static FORCEINLINE HRESULT ISWbemNamedValue_GetTypeInfoCount(ISWbemNamedValue* This,UINT *pctinfo) {
4690     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4691 }
4692 static FORCEINLINE HRESULT ISWbemNamedValue_GetTypeInfo(ISWbemNamedValue* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4693     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4694 }
4695 static FORCEINLINE HRESULT ISWbemNamedValue_GetIDsOfNames(ISWbemNamedValue* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4696     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4697 }
4698 static FORCEINLINE HRESULT ISWbemNamedValue_Invoke(ISWbemNamedValue* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4699     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4700 }
4701 /*** ISWbemNamedValue methods ***/
4702 static FORCEINLINE HRESULT ISWbemNamedValue_get_Value(ISWbemNamedValue* This,VARIANT *varValue) {
4703     return This->lpVtbl->get_Value(This,varValue);
4704 }
4705 static FORCEINLINE HRESULT ISWbemNamedValue_put_Value(ISWbemNamedValue* This,VARIANT *varValue) {
4706     return This->lpVtbl->put_Value(This,varValue);
4707 }
4708 static FORCEINLINE HRESULT ISWbemNamedValue_get_Name(ISWbemNamedValue* This,BSTR *strName) {
4709     return This->lpVtbl->get_Name(This,strName);
4710 }
4711 #endif
4712 #endif
4713 
4714 #endif
4715 
4716 HRESULT STDMETHODCALLTYPE ISWbemNamedValue_get_Value_Proxy(
4717     ISWbemNamedValue* This,
4718     VARIANT *varValue);
4719 void __RPC_STUB ISWbemNamedValue_get_Value_Stub(
4720     IRpcStubBuffer* This,
4721     IRpcChannelBuffer* pRpcChannelBuffer,
4722     PRPC_MESSAGE pRpcMessage,
4723     DWORD* pdwStubPhase);
4724 HRESULT STDMETHODCALLTYPE ISWbemNamedValue_put_Value_Proxy(
4725     ISWbemNamedValue* This,
4726     VARIANT *varValue);
4727 void __RPC_STUB ISWbemNamedValue_put_Value_Stub(
4728     IRpcStubBuffer* This,
4729     IRpcChannelBuffer* pRpcChannelBuffer,
4730     PRPC_MESSAGE pRpcMessage,
4731     DWORD* pdwStubPhase);
4732 HRESULT STDMETHODCALLTYPE ISWbemNamedValue_get_Name_Proxy(
4733     ISWbemNamedValue* This,
4734     BSTR *strName);
4735 void __RPC_STUB ISWbemNamedValue_get_Name_Stub(
4736     IRpcStubBuffer* This,
4737     IRpcChannelBuffer* pRpcChannelBuffer,
4738     PRPC_MESSAGE pRpcMessage,
4739     DWORD* pdwStubPhase);
4740 
4741 #endif  /* __ISWbemNamedValue_INTERFACE_DEFINED__ */
4742 
4743 /*****************************************************************************
4744  * ISWbemObjectPath interface
4745  */
4746 #ifndef __ISWbemObjectPath_INTERFACE_DEFINED__
4747 #define __ISWbemObjectPath_INTERFACE_DEFINED__
4748 
4749 DEFINE_GUID(IID_ISWbemObjectPath, 0x5791bc27, 0xce9c, 0x11d1, 0x97,0xbf, 0x00,0x00,0xf8,0x1e,0x84,0x9c);
4750 #if defined(__cplusplus) && !defined(CINTERFACE)
4751 MIDL_INTERFACE("5791bc27-ce9c-11d1-97bf-0000f81e849c")
4752 ISWbemObjectPath : public IDispatch
4753 {
4754     virtual HRESULT STDMETHODCALLTYPE get_Path(
4755         BSTR *strPath) = 0;
4756 
4757     virtual HRESULT STDMETHODCALLTYPE put_Path(
4758         BSTR strPath) = 0;
4759 
4760     virtual HRESULT STDMETHODCALLTYPE get_RelPath(
4761         BSTR *strRelPath) = 0;
4762 
4763     virtual HRESULT STDMETHODCALLTYPE put_RelPath(
4764         BSTR strRelPath) = 0;
4765 
4766     virtual HRESULT STDMETHODCALLTYPE get_Server(
4767         BSTR *strServer) = 0;
4768 
4769     virtual HRESULT STDMETHODCALLTYPE put_Server(
4770         BSTR strServer) = 0;
4771 
4772     virtual HRESULT STDMETHODCALLTYPE get_Namespace(
4773         BSTR *strNamespace) = 0;
4774 
4775     virtual HRESULT STDMETHODCALLTYPE put_Namespace(
4776         BSTR strNamespace) = 0;
4777 
4778     virtual HRESULT STDMETHODCALLTYPE get_ParentNamespace(
4779         BSTR *strParentNamespace) = 0;
4780 
4781     virtual HRESULT STDMETHODCALLTYPE get_DisplayName(
4782         BSTR *strDisplayName) = 0;
4783 
4784     virtual HRESULT STDMETHODCALLTYPE put_DisplayName(
4785         BSTR strDisplayName) = 0;
4786 
4787     virtual HRESULT STDMETHODCALLTYPE get_Class(
4788         BSTR *strClass) = 0;
4789 
4790     virtual HRESULT STDMETHODCALLTYPE put_Class(
4791         BSTR strClass) = 0;
4792 
4793     virtual HRESULT STDMETHODCALLTYPE get_IsClass(
4794         VARIANT_BOOL *bIsClass) = 0;
4795 
4796     virtual HRESULT STDMETHODCALLTYPE SetAsClass(
4797         ) = 0;
4798 
4799     virtual HRESULT STDMETHODCALLTYPE get_IsSingleton(
4800         VARIANT_BOOL *bIsSingleton) = 0;
4801 
4802     virtual HRESULT STDMETHODCALLTYPE SetAsSingleton(
4803         ) = 0;
4804 
4805     virtual HRESULT STDMETHODCALLTYPE get_Keys(
4806         ISWbemNamedValueSet **objWbemNamedValueSet) = 0;
4807 
4808     virtual HRESULT STDMETHODCALLTYPE get_Security_(
4809         ISWbemSecurity **objWbemSecurity) = 0;
4810 
4811     virtual HRESULT STDMETHODCALLTYPE get_Locale(
4812         BSTR *strLocale) = 0;
4813 
4814     virtual HRESULT STDMETHODCALLTYPE put_Locale(
4815         BSTR strLocale) = 0;
4816 
4817     virtual HRESULT STDMETHODCALLTYPE get_Authority(
4818         BSTR *strAuthority) = 0;
4819 
4820     virtual HRESULT STDMETHODCALLTYPE put_Authority(
4821         BSTR strAuthority) = 0;
4822 
4823 };
4824 #ifdef __CRT_UUID_DECL
4825 __CRT_UUID_DECL(ISWbemObjectPath, 0x5791bc27, 0xce9c, 0x11d1, 0x97,0xbf, 0x00,0x00,0xf8,0x1e,0x84,0x9c)
4826 #endif
4827 #else
4828 typedef struct ISWbemObjectPathVtbl {
4829     BEGIN_INTERFACE
4830 
4831     /*** IUnknown methods ***/
4832     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4833         ISWbemObjectPath* This,
4834         REFIID riid,
4835         void **ppvObject);
4836 
4837     ULONG (STDMETHODCALLTYPE *AddRef)(
4838         ISWbemObjectPath* This);
4839 
4840     ULONG (STDMETHODCALLTYPE *Release)(
4841         ISWbemObjectPath* This);
4842 
4843     /*** IDispatch methods ***/
4844     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4845         ISWbemObjectPath* This,
4846         UINT *pctinfo);
4847 
4848     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4849         ISWbemObjectPath* This,
4850         UINT iTInfo,
4851         LCID lcid,
4852         ITypeInfo **ppTInfo);
4853 
4854     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4855         ISWbemObjectPath* This,
4856         REFIID riid,
4857         LPOLESTR *rgszNames,
4858         UINT cNames,
4859         LCID lcid,
4860         DISPID *rgDispId);
4861 
4862     HRESULT (STDMETHODCALLTYPE *Invoke)(
4863         ISWbemObjectPath* This,
4864         DISPID dispIdMember,
4865         REFIID riid,
4866         LCID lcid,
4867         WORD wFlags,
4868         DISPPARAMS *pDispParams,
4869         VARIANT *pVarResult,
4870         EXCEPINFO *pExcepInfo,
4871         UINT *puArgErr);
4872 
4873     /*** ISWbemObjectPath methods ***/
4874     HRESULT (STDMETHODCALLTYPE *get_Path)(
4875         ISWbemObjectPath* This,
4876         BSTR *strPath);
4877 
4878     HRESULT (STDMETHODCALLTYPE *put_Path)(
4879         ISWbemObjectPath* This,
4880         BSTR strPath);
4881 
4882     HRESULT (STDMETHODCALLTYPE *get_RelPath)(
4883         ISWbemObjectPath* This,
4884         BSTR *strRelPath);
4885 
4886     HRESULT (STDMETHODCALLTYPE *put_RelPath)(
4887         ISWbemObjectPath* This,
4888         BSTR strRelPath);
4889 
4890     HRESULT (STDMETHODCALLTYPE *get_Server)(
4891         ISWbemObjectPath* This,
4892         BSTR *strServer);
4893 
4894     HRESULT (STDMETHODCALLTYPE *put_Server)(
4895         ISWbemObjectPath* This,
4896         BSTR strServer);
4897 
4898     HRESULT (STDMETHODCALLTYPE *get_Namespace)(
4899         ISWbemObjectPath* This,
4900         BSTR *strNamespace);
4901 
4902     HRESULT (STDMETHODCALLTYPE *put_Namespace)(
4903         ISWbemObjectPath* This,
4904         BSTR strNamespace);
4905 
4906     HRESULT (STDMETHODCALLTYPE *get_ParentNamespace)(
4907         ISWbemObjectPath* This,
4908         BSTR *strParentNamespace);
4909 
4910     HRESULT (STDMETHODCALLTYPE *get_DisplayName)(
4911         ISWbemObjectPath* This,
4912         BSTR *strDisplayName);
4913 
4914     HRESULT (STDMETHODCALLTYPE *put_DisplayName)(
4915         ISWbemObjectPath* This,
4916         BSTR strDisplayName);
4917 
4918     HRESULT (STDMETHODCALLTYPE *get_Class)(
4919         ISWbemObjectPath* This,
4920         BSTR *strClass);
4921 
4922     HRESULT (STDMETHODCALLTYPE *put_Class)(
4923         ISWbemObjectPath* This,
4924         BSTR strClass);
4925 
4926     HRESULT (STDMETHODCALLTYPE *get_IsClass)(
4927         ISWbemObjectPath* This,
4928         VARIANT_BOOL *bIsClass);
4929 
4930     HRESULT (STDMETHODCALLTYPE *SetAsClass)(
4931         ISWbemObjectPath* This);
4932 
4933     HRESULT (STDMETHODCALLTYPE *get_IsSingleton)(
4934         ISWbemObjectPath* This,
4935         VARIANT_BOOL *bIsSingleton);
4936 
4937     HRESULT (STDMETHODCALLTYPE *SetAsSingleton)(
4938         ISWbemObjectPath* This);
4939 
4940     HRESULT (STDMETHODCALLTYPE *get_Keys)(
4941         ISWbemObjectPath* This,
4942         ISWbemNamedValueSet **objWbemNamedValueSet);
4943 
4944     HRESULT (STDMETHODCALLTYPE *get_Security_)(
4945         ISWbemObjectPath* This,
4946         ISWbemSecurity **objWbemSecurity);
4947 
4948     HRESULT (STDMETHODCALLTYPE *get_Locale)(
4949         ISWbemObjectPath* This,
4950         BSTR *strLocale);
4951 
4952     HRESULT (STDMETHODCALLTYPE *put_Locale)(
4953         ISWbemObjectPath* This,
4954         BSTR strLocale);
4955 
4956     HRESULT (STDMETHODCALLTYPE *get_Authority)(
4957         ISWbemObjectPath* This,
4958         BSTR *strAuthority);
4959 
4960     HRESULT (STDMETHODCALLTYPE *put_Authority)(
4961         ISWbemObjectPath* This,
4962         BSTR strAuthority);
4963 
4964     END_INTERFACE
4965 } ISWbemObjectPathVtbl;
4966 interface ISWbemObjectPath {
4967     CONST_VTBL ISWbemObjectPathVtbl* lpVtbl;
4968 };
4969 
4970 #ifdef COBJMACROS
4971 #ifndef WIDL_C_INLINE_WRAPPERS
4972 /*** IUnknown methods ***/
4973 #define ISWbemObjectPath_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4974 #define ISWbemObjectPath_AddRef(This) (This)->lpVtbl->AddRef(This)
4975 #define ISWbemObjectPath_Release(This) (This)->lpVtbl->Release(This)
4976 /*** IDispatch methods ***/
4977 #define ISWbemObjectPath_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4978 #define ISWbemObjectPath_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4979 #define ISWbemObjectPath_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4980 #define ISWbemObjectPath_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4981 /*** ISWbemObjectPath methods ***/
4982 #define ISWbemObjectPath_get_Path(This,strPath) (This)->lpVtbl->get_Path(This,strPath)
4983 #define ISWbemObjectPath_put_Path(This,strPath) (This)->lpVtbl->put_Path(This,strPath)
4984 #define ISWbemObjectPath_get_RelPath(This,strRelPath) (This)->lpVtbl->get_RelPath(This,strRelPath)
4985 #define ISWbemObjectPath_put_RelPath(This,strRelPath) (This)->lpVtbl->put_RelPath(This,strRelPath)
4986 #define ISWbemObjectPath_get_Server(This,strServer) (This)->lpVtbl->get_Server(This,strServer)
4987 #define ISWbemObjectPath_put_Server(This,strServer) (This)->lpVtbl->put_Server(This,strServer)
4988 #define ISWbemObjectPath_get_Namespace(This,strNamespace) (This)->lpVtbl->get_Namespace(This,strNamespace)
4989 #define ISWbemObjectPath_put_Namespace(This,strNamespace) (This)->lpVtbl->put_Namespace(This,strNamespace)
4990 #define ISWbemObjectPath_get_ParentNamespace(This,strParentNamespace) (This)->lpVtbl->get_ParentNamespace(This,strParentNamespace)
4991 #define ISWbemObjectPath_get_DisplayName(This,strDisplayName) (This)->lpVtbl->get_DisplayName(This,strDisplayName)
4992 #define ISWbemObjectPath_put_DisplayName(This,strDisplayName) (This)->lpVtbl->put_DisplayName(This,strDisplayName)
4993 #define ISWbemObjectPath_get_Class(This,strClass) (This)->lpVtbl->get_Class(This,strClass)
4994 #define ISWbemObjectPath_put_Class(This,strClass) (This)->lpVtbl->put_Class(This,strClass)
4995 #define ISWbemObjectPath_get_IsClass(This,bIsClass) (This)->lpVtbl->get_IsClass(This,bIsClass)
4996 #define ISWbemObjectPath_SetAsClass(This) (This)->lpVtbl->SetAsClass(This)
4997 #define ISWbemObjectPath_get_IsSingleton(This,bIsSingleton) (This)->lpVtbl->get_IsSingleton(This,bIsSingleton)
4998 #define ISWbemObjectPath_SetAsSingleton(This) (This)->lpVtbl->SetAsSingleton(This)
4999 #define ISWbemObjectPath_get_Keys(This,objWbemNamedValueSet) (This)->lpVtbl->get_Keys(This,objWbemNamedValueSet)
5000 #define ISWbemObjectPath_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
5001 #define ISWbemObjectPath_get_Locale(This,strLocale) (This)->lpVtbl->get_Locale(This,strLocale)
5002 #define ISWbemObjectPath_put_Locale(This,strLocale) (This)->lpVtbl->put_Locale(This,strLocale)
5003 #define ISWbemObjectPath_get_Authority(This,strAuthority) (This)->lpVtbl->get_Authority(This,strAuthority)
5004 #define ISWbemObjectPath_put_Authority(This,strAuthority) (This)->lpVtbl->put_Authority(This,strAuthority)
5005 #else
5006 /*** IUnknown methods ***/
5007 static FORCEINLINE HRESULT ISWbemObjectPath_QueryInterface(ISWbemObjectPath* This,REFIID riid,void **ppvObject) {
5008     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5009 }
5010 static FORCEINLINE ULONG ISWbemObjectPath_AddRef(ISWbemObjectPath* This) {
5011     return This->lpVtbl->AddRef(This);
5012 }
5013 static FORCEINLINE ULONG ISWbemObjectPath_Release(ISWbemObjectPath* This) {
5014     return This->lpVtbl->Release(This);
5015 }
5016 /*** IDispatch methods ***/
5017 static FORCEINLINE HRESULT ISWbemObjectPath_GetTypeInfoCount(ISWbemObjectPath* This,UINT *pctinfo) {
5018     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5019 }
5020 static FORCEINLINE HRESULT ISWbemObjectPath_GetTypeInfo(ISWbemObjectPath* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5021     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5022 }
5023 static FORCEINLINE HRESULT ISWbemObjectPath_GetIDsOfNames(ISWbemObjectPath* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5024     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5025 }
5026 static FORCEINLINE HRESULT ISWbemObjectPath_Invoke(ISWbemObjectPath* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5027     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5028 }
5029 /*** ISWbemObjectPath methods ***/
5030 static FORCEINLINE HRESULT ISWbemObjectPath_get_Path(ISWbemObjectPath* This,BSTR *strPath) {
5031     return This->lpVtbl->get_Path(This,strPath);
5032 }
5033 static FORCEINLINE HRESULT ISWbemObjectPath_put_Path(ISWbemObjectPath* This,BSTR strPath) {
5034     return This->lpVtbl->put_Path(This,strPath);
5035 }
5036 static FORCEINLINE HRESULT ISWbemObjectPath_get_RelPath(ISWbemObjectPath* This,BSTR *strRelPath) {
5037     return This->lpVtbl->get_RelPath(This,strRelPath);
5038 }
5039 static FORCEINLINE HRESULT ISWbemObjectPath_put_RelPath(ISWbemObjectPath* This,BSTR strRelPath) {
5040     return This->lpVtbl->put_RelPath(This,strRelPath);
5041 }
5042 static FORCEINLINE HRESULT ISWbemObjectPath_get_Server(ISWbemObjectPath* This,BSTR *strServer) {
5043     return This->lpVtbl->get_Server(This,strServer);
5044 }
5045 static FORCEINLINE HRESULT ISWbemObjectPath_put_Server(ISWbemObjectPath* This,BSTR strServer) {
5046     return This->lpVtbl->put_Server(This,strServer);
5047 }
5048 static FORCEINLINE HRESULT ISWbemObjectPath_get_Namespace(ISWbemObjectPath* This,BSTR *strNamespace) {
5049     return This->lpVtbl->get_Namespace(This,strNamespace);
5050 }
5051 static FORCEINLINE HRESULT ISWbemObjectPath_put_Namespace(ISWbemObjectPath* This,BSTR strNamespace) {
5052     return This->lpVtbl->put_Namespace(This,strNamespace);
5053 }
5054 static FORCEINLINE HRESULT ISWbemObjectPath_get_ParentNamespace(ISWbemObjectPath* This,BSTR *strParentNamespace) {
5055     return This->lpVtbl->get_ParentNamespace(This,strParentNamespace);
5056 }
5057 static FORCEINLINE HRESULT ISWbemObjectPath_get_DisplayName(ISWbemObjectPath* This,BSTR *strDisplayName) {
5058     return This->lpVtbl->get_DisplayName(This,strDisplayName);
5059 }
5060 static FORCEINLINE HRESULT ISWbemObjectPath_put_DisplayName(ISWbemObjectPath* This,BSTR strDisplayName) {
5061     return This->lpVtbl->put_DisplayName(This,strDisplayName);
5062 }
5063 static FORCEINLINE HRESULT ISWbemObjectPath_get_Class(ISWbemObjectPath* This,BSTR *strClass) {
5064     return This->lpVtbl->get_Class(This,strClass);
5065 }
5066 static FORCEINLINE HRESULT ISWbemObjectPath_put_Class(ISWbemObjectPath* This,BSTR strClass) {
5067     return This->lpVtbl->put_Class(This,strClass);
5068 }
5069 static FORCEINLINE HRESULT ISWbemObjectPath_get_IsClass(ISWbemObjectPath* This,VARIANT_BOOL *bIsClass) {
5070     return This->lpVtbl->get_IsClass(This,bIsClass);
5071 }
5072 static FORCEINLINE HRESULT ISWbemObjectPath_SetAsClass(ISWbemObjectPath* This) {
5073     return This->lpVtbl->SetAsClass(This);
5074 }
5075 static FORCEINLINE HRESULT ISWbemObjectPath_get_IsSingleton(ISWbemObjectPath* This,VARIANT_BOOL *bIsSingleton) {
5076     return This->lpVtbl->get_IsSingleton(This,bIsSingleton);
5077 }
5078 static FORCEINLINE HRESULT ISWbemObjectPath_SetAsSingleton(ISWbemObjectPath* This) {
5079     return This->lpVtbl->SetAsSingleton(This);
5080 }
5081 static FORCEINLINE HRESULT ISWbemObjectPath_get_Keys(ISWbemObjectPath* This,ISWbemNamedValueSet **objWbemNamedValueSet) {
5082     return This->lpVtbl->get_Keys(This,objWbemNamedValueSet);
5083 }
5084 static FORCEINLINE HRESULT ISWbemObjectPath_get_Security_(ISWbemObjectPath* This,ISWbemSecurity **objWbemSecurity) {
5085     return This->lpVtbl->get_Security_(This,objWbemSecurity);
5086 }
5087 static FORCEINLINE HRESULT ISWbemObjectPath_get_Locale(ISWbemObjectPath* This,BSTR *strLocale) {
5088     return This->lpVtbl->get_Locale(This,strLocale);
5089 }
5090 static FORCEINLINE HRESULT ISWbemObjectPath_put_Locale(ISWbemObjectPath* This,BSTR strLocale) {
5091     return This->lpVtbl->put_Locale(This,strLocale);
5092 }
5093 static FORCEINLINE HRESULT ISWbemObjectPath_get_Authority(ISWbemObjectPath* This,BSTR *strAuthority) {
5094     return This->lpVtbl->get_Authority(This,strAuthority);
5095 }
5096 static FORCEINLINE HRESULT ISWbemObjectPath_put_Authority(ISWbemObjectPath* This,BSTR strAuthority) {
5097     return This->lpVtbl->put_Authority(This,strAuthority);
5098 }
5099 #endif
5100 #endif
5101 
5102 #endif
5103 
5104 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_Path_Proxy(
5105     ISWbemObjectPath* This,
5106     BSTR *strPath);
5107 void __RPC_STUB ISWbemObjectPath_get_Path_Stub(
5108     IRpcStubBuffer* This,
5109     IRpcChannelBuffer* pRpcChannelBuffer,
5110     PRPC_MESSAGE pRpcMessage,
5111     DWORD* pdwStubPhase);
5112 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_put_Path_Proxy(
5113     ISWbemObjectPath* This,
5114     BSTR strPath);
5115 void __RPC_STUB ISWbemObjectPath_put_Path_Stub(
5116     IRpcStubBuffer* This,
5117     IRpcChannelBuffer* pRpcChannelBuffer,
5118     PRPC_MESSAGE pRpcMessage,
5119     DWORD* pdwStubPhase);
5120 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_RelPath_Proxy(
5121     ISWbemObjectPath* This,
5122     BSTR *strRelPath);
5123 void __RPC_STUB ISWbemObjectPath_get_RelPath_Stub(
5124     IRpcStubBuffer* This,
5125     IRpcChannelBuffer* pRpcChannelBuffer,
5126     PRPC_MESSAGE pRpcMessage,
5127     DWORD* pdwStubPhase);
5128 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_put_RelPath_Proxy(
5129     ISWbemObjectPath* This,
5130     BSTR strRelPath);
5131 void __RPC_STUB ISWbemObjectPath_put_RelPath_Stub(
5132     IRpcStubBuffer* This,
5133     IRpcChannelBuffer* pRpcChannelBuffer,
5134     PRPC_MESSAGE pRpcMessage,
5135     DWORD* pdwStubPhase);
5136 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_Server_Proxy(
5137     ISWbemObjectPath* This,
5138     BSTR *strServer);
5139 void __RPC_STUB ISWbemObjectPath_get_Server_Stub(
5140     IRpcStubBuffer* This,
5141     IRpcChannelBuffer* pRpcChannelBuffer,
5142     PRPC_MESSAGE pRpcMessage,
5143     DWORD* pdwStubPhase);
5144 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_put_Server_Proxy(
5145     ISWbemObjectPath* This,
5146     BSTR strServer);
5147 void __RPC_STUB ISWbemObjectPath_put_Server_Stub(
5148     IRpcStubBuffer* This,
5149     IRpcChannelBuffer* pRpcChannelBuffer,
5150     PRPC_MESSAGE pRpcMessage,
5151     DWORD* pdwStubPhase);
5152 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_Namespace_Proxy(
5153     ISWbemObjectPath* This,
5154     BSTR *strNamespace);
5155 void __RPC_STUB ISWbemObjectPath_get_Namespace_Stub(
5156     IRpcStubBuffer* This,
5157     IRpcChannelBuffer* pRpcChannelBuffer,
5158     PRPC_MESSAGE pRpcMessage,
5159     DWORD* pdwStubPhase);
5160 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_put_Namespace_Proxy(
5161     ISWbemObjectPath* This,
5162     BSTR strNamespace);
5163 void __RPC_STUB ISWbemObjectPath_put_Namespace_Stub(
5164     IRpcStubBuffer* This,
5165     IRpcChannelBuffer* pRpcChannelBuffer,
5166     PRPC_MESSAGE pRpcMessage,
5167     DWORD* pdwStubPhase);
5168 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_ParentNamespace_Proxy(
5169     ISWbemObjectPath* This,
5170     BSTR *strParentNamespace);
5171 void __RPC_STUB ISWbemObjectPath_get_ParentNamespace_Stub(
5172     IRpcStubBuffer* This,
5173     IRpcChannelBuffer* pRpcChannelBuffer,
5174     PRPC_MESSAGE pRpcMessage,
5175     DWORD* pdwStubPhase);
5176 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_DisplayName_Proxy(
5177     ISWbemObjectPath* This,
5178     BSTR *strDisplayName);
5179 void __RPC_STUB ISWbemObjectPath_get_DisplayName_Stub(
5180     IRpcStubBuffer* This,
5181     IRpcChannelBuffer* pRpcChannelBuffer,
5182     PRPC_MESSAGE pRpcMessage,
5183     DWORD* pdwStubPhase);
5184 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_put_DisplayName_Proxy(
5185     ISWbemObjectPath* This,
5186     BSTR strDisplayName);
5187 void __RPC_STUB ISWbemObjectPath_put_DisplayName_Stub(
5188     IRpcStubBuffer* This,
5189     IRpcChannelBuffer* pRpcChannelBuffer,
5190     PRPC_MESSAGE pRpcMessage,
5191     DWORD* pdwStubPhase);
5192 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_Class_Proxy(
5193     ISWbemObjectPath* This,
5194     BSTR *strClass);
5195 void __RPC_STUB ISWbemObjectPath_get_Class_Stub(
5196     IRpcStubBuffer* This,
5197     IRpcChannelBuffer* pRpcChannelBuffer,
5198     PRPC_MESSAGE pRpcMessage,
5199     DWORD* pdwStubPhase);
5200 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_put_Class_Proxy(
5201     ISWbemObjectPath* This,
5202     BSTR strClass);
5203 void __RPC_STUB ISWbemObjectPath_put_Class_Stub(
5204     IRpcStubBuffer* This,
5205     IRpcChannelBuffer* pRpcChannelBuffer,
5206     PRPC_MESSAGE pRpcMessage,
5207     DWORD* pdwStubPhase);
5208 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_IsClass_Proxy(
5209     ISWbemObjectPath* This,
5210     VARIANT_BOOL *bIsClass);
5211 void __RPC_STUB ISWbemObjectPath_get_IsClass_Stub(
5212     IRpcStubBuffer* This,
5213     IRpcChannelBuffer* pRpcChannelBuffer,
5214     PRPC_MESSAGE pRpcMessage,
5215     DWORD* pdwStubPhase);
5216 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_SetAsClass_Proxy(
5217     ISWbemObjectPath* This);
5218 void __RPC_STUB ISWbemObjectPath_SetAsClass_Stub(
5219     IRpcStubBuffer* This,
5220     IRpcChannelBuffer* pRpcChannelBuffer,
5221     PRPC_MESSAGE pRpcMessage,
5222     DWORD* pdwStubPhase);
5223 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_IsSingleton_Proxy(
5224     ISWbemObjectPath* This,
5225     VARIANT_BOOL *bIsSingleton);
5226 void __RPC_STUB ISWbemObjectPath_get_IsSingleton_Stub(
5227     IRpcStubBuffer* This,
5228     IRpcChannelBuffer* pRpcChannelBuffer,
5229     PRPC_MESSAGE pRpcMessage,
5230     DWORD* pdwStubPhase);
5231 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_SetAsSingleton_Proxy(
5232     ISWbemObjectPath* This);
5233 void __RPC_STUB ISWbemObjectPath_SetAsSingleton_Stub(
5234     IRpcStubBuffer* This,
5235     IRpcChannelBuffer* pRpcChannelBuffer,
5236     PRPC_MESSAGE pRpcMessage,
5237     DWORD* pdwStubPhase);
5238 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_Keys_Proxy(
5239     ISWbemObjectPath* This,
5240     ISWbemNamedValueSet **objWbemNamedValueSet);
5241 void __RPC_STUB ISWbemObjectPath_get_Keys_Stub(
5242     IRpcStubBuffer* This,
5243     IRpcChannelBuffer* pRpcChannelBuffer,
5244     PRPC_MESSAGE pRpcMessage,
5245     DWORD* pdwStubPhase);
5246 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_Security__Proxy(
5247     ISWbemObjectPath* This,
5248     ISWbemSecurity **objWbemSecurity);
5249 void __RPC_STUB ISWbemObjectPath_get_Security__Stub(
5250     IRpcStubBuffer* This,
5251     IRpcChannelBuffer* pRpcChannelBuffer,
5252     PRPC_MESSAGE pRpcMessage,
5253     DWORD* pdwStubPhase);
5254 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_Locale_Proxy(
5255     ISWbemObjectPath* This,
5256     BSTR *strLocale);
5257 void __RPC_STUB ISWbemObjectPath_get_Locale_Stub(
5258     IRpcStubBuffer* This,
5259     IRpcChannelBuffer* pRpcChannelBuffer,
5260     PRPC_MESSAGE pRpcMessage,
5261     DWORD* pdwStubPhase);
5262 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_put_Locale_Proxy(
5263     ISWbemObjectPath* This,
5264     BSTR strLocale);
5265 void __RPC_STUB ISWbemObjectPath_put_Locale_Stub(
5266     IRpcStubBuffer* This,
5267     IRpcChannelBuffer* pRpcChannelBuffer,
5268     PRPC_MESSAGE pRpcMessage,
5269     DWORD* pdwStubPhase);
5270 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_get_Authority_Proxy(
5271     ISWbemObjectPath* This,
5272     BSTR *strAuthority);
5273 void __RPC_STUB ISWbemObjectPath_get_Authority_Stub(
5274     IRpcStubBuffer* This,
5275     IRpcChannelBuffer* pRpcChannelBuffer,
5276     PRPC_MESSAGE pRpcMessage,
5277     DWORD* pdwStubPhase);
5278 HRESULT STDMETHODCALLTYPE ISWbemObjectPath_put_Authority_Proxy(
5279     ISWbemObjectPath* This,
5280     BSTR strAuthority);
5281 void __RPC_STUB ISWbemObjectPath_put_Authority_Stub(
5282     IRpcStubBuffer* This,
5283     IRpcChannelBuffer* pRpcChannelBuffer,
5284     PRPC_MESSAGE pRpcMessage,
5285     DWORD* pdwStubPhase);
5286 
5287 #endif  /* __ISWbemObjectPath_INTERFACE_DEFINED__ */
5288 
5289 /*****************************************************************************
5290  * ISWbemProperty interface
5291  */
5292 #ifndef __ISWbemProperty_INTERFACE_DEFINED__
5293 #define __ISWbemProperty_INTERFACE_DEFINED__
5294 
5295 DEFINE_GUID(IID_ISWbemProperty, 0x1a388f98, 0xd4ba, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6);
5296 #if defined(__cplusplus) && !defined(CINTERFACE)
5297 MIDL_INTERFACE("1a388f98-d4ba-11d1-8b09-00600806d9b6")
5298 ISWbemProperty : public IDispatch
5299 {
5300     virtual HRESULT STDMETHODCALLTYPE get_Value(
5301         VARIANT *varValue) = 0;
5302 
5303     virtual HRESULT STDMETHODCALLTYPE put_Value(
5304         VARIANT *varValue) = 0;
5305 
5306     virtual HRESULT STDMETHODCALLTYPE get_Name(
5307         BSTR *strName) = 0;
5308 
5309     virtual HRESULT STDMETHODCALLTYPE get_IsLocal(
5310         VARIANT_BOOL *bIsLocal) = 0;
5311 
5312     virtual HRESULT STDMETHODCALLTYPE get_Origin(
5313         BSTR *strOrigin) = 0;
5314 
5315     virtual HRESULT STDMETHODCALLTYPE get_CIMType(
5316         WbemCimtypeEnum *iCimType) = 0;
5317 
5318     virtual HRESULT STDMETHODCALLTYPE get_Qualifiers_(
5319         ISWbemQualifierSet **objWbemQualifierSet) = 0;
5320 
5321     virtual HRESULT STDMETHODCALLTYPE get_IsArray(
5322         VARIANT_BOOL *bIsArray) = 0;
5323 
5324 };
5325 #ifdef __CRT_UUID_DECL
5326 __CRT_UUID_DECL(ISWbemProperty, 0x1a388f98, 0xd4ba, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6)
5327 #endif
5328 #else
5329 typedef struct ISWbemPropertyVtbl {
5330     BEGIN_INTERFACE
5331 
5332     /*** IUnknown methods ***/
5333     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5334         ISWbemProperty* This,
5335         REFIID riid,
5336         void **ppvObject);
5337 
5338     ULONG (STDMETHODCALLTYPE *AddRef)(
5339         ISWbemProperty* This);
5340 
5341     ULONG (STDMETHODCALLTYPE *Release)(
5342         ISWbemProperty* This);
5343 
5344     /*** IDispatch methods ***/
5345     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
5346         ISWbemProperty* This,
5347         UINT *pctinfo);
5348 
5349     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
5350         ISWbemProperty* This,
5351         UINT iTInfo,
5352         LCID lcid,
5353         ITypeInfo **ppTInfo);
5354 
5355     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
5356         ISWbemProperty* This,
5357         REFIID riid,
5358         LPOLESTR *rgszNames,
5359         UINT cNames,
5360         LCID lcid,
5361         DISPID *rgDispId);
5362 
5363     HRESULT (STDMETHODCALLTYPE *Invoke)(
5364         ISWbemProperty* This,
5365         DISPID dispIdMember,
5366         REFIID riid,
5367         LCID lcid,
5368         WORD wFlags,
5369         DISPPARAMS *pDispParams,
5370         VARIANT *pVarResult,
5371         EXCEPINFO *pExcepInfo,
5372         UINT *puArgErr);
5373 
5374     /*** ISWbemProperty methods ***/
5375     HRESULT (STDMETHODCALLTYPE *get_Value)(
5376         ISWbemProperty* This,
5377         VARIANT *varValue);
5378 
5379     HRESULT (STDMETHODCALLTYPE *put_Value)(
5380         ISWbemProperty* This,
5381         VARIANT *varValue);
5382 
5383     HRESULT (STDMETHODCALLTYPE *get_Name)(
5384         ISWbemProperty* This,
5385         BSTR *strName);
5386 
5387     HRESULT (STDMETHODCALLTYPE *get_IsLocal)(
5388         ISWbemProperty* This,
5389         VARIANT_BOOL *bIsLocal);
5390 
5391     HRESULT (STDMETHODCALLTYPE *get_Origin)(
5392         ISWbemProperty* This,
5393         BSTR *strOrigin);
5394 
5395     HRESULT (STDMETHODCALLTYPE *get_CIMType)(
5396         ISWbemProperty* This,
5397         WbemCimtypeEnum *iCimType);
5398 
5399     HRESULT (STDMETHODCALLTYPE *get_Qualifiers_)(
5400         ISWbemProperty* This,
5401         ISWbemQualifierSet **objWbemQualifierSet);
5402 
5403     HRESULT (STDMETHODCALLTYPE *get_IsArray)(
5404         ISWbemProperty* This,
5405         VARIANT_BOOL *bIsArray);
5406 
5407     END_INTERFACE
5408 } ISWbemPropertyVtbl;
5409 interface ISWbemProperty {
5410     CONST_VTBL ISWbemPropertyVtbl* lpVtbl;
5411 };
5412 
5413 #ifdef COBJMACROS
5414 #ifndef WIDL_C_INLINE_WRAPPERS
5415 /*** IUnknown methods ***/
5416 #define ISWbemProperty_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5417 #define ISWbemProperty_AddRef(This) (This)->lpVtbl->AddRef(This)
5418 #define ISWbemProperty_Release(This) (This)->lpVtbl->Release(This)
5419 /*** IDispatch methods ***/
5420 #define ISWbemProperty_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5421 #define ISWbemProperty_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5422 #define ISWbemProperty_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5423 #define ISWbemProperty_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5424 /*** ISWbemProperty methods ***/
5425 #define ISWbemProperty_get_Value(This,varValue) (This)->lpVtbl->get_Value(This,varValue)
5426 #define ISWbemProperty_put_Value(This,varValue) (This)->lpVtbl->put_Value(This,varValue)
5427 #define ISWbemProperty_get_Name(This,strName) (This)->lpVtbl->get_Name(This,strName)
5428 #define ISWbemProperty_get_IsLocal(This,bIsLocal) (This)->lpVtbl->get_IsLocal(This,bIsLocal)
5429 #define ISWbemProperty_get_Origin(This,strOrigin) (This)->lpVtbl->get_Origin(This,strOrigin)
5430 #define ISWbemProperty_get_CIMType(This,iCimType) (This)->lpVtbl->get_CIMType(This,iCimType)
5431 #define ISWbemProperty_get_Qualifiers_(This,objWbemQualifierSet) (This)->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet)
5432 #define ISWbemProperty_get_IsArray(This,bIsArray) (This)->lpVtbl->get_IsArray(This,bIsArray)
5433 #else
5434 /*** IUnknown methods ***/
5435 static FORCEINLINE HRESULT ISWbemProperty_QueryInterface(ISWbemProperty* This,REFIID riid,void **ppvObject) {
5436     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5437 }
5438 static FORCEINLINE ULONG ISWbemProperty_AddRef(ISWbemProperty* This) {
5439     return This->lpVtbl->AddRef(This);
5440 }
5441 static FORCEINLINE ULONG ISWbemProperty_Release(ISWbemProperty* This) {
5442     return This->lpVtbl->Release(This);
5443 }
5444 /*** IDispatch methods ***/
5445 static FORCEINLINE HRESULT ISWbemProperty_GetTypeInfoCount(ISWbemProperty* This,UINT *pctinfo) {
5446     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5447 }
5448 static FORCEINLINE HRESULT ISWbemProperty_GetTypeInfo(ISWbemProperty* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5449     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5450 }
5451 static FORCEINLINE HRESULT ISWbemProperty_GetIDsOfNames(ISWbemProperty* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5452     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5453 }
5454 static FORCEINLINE HRESULT ISWbemProperty_Invoke(ISWbemProperty* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5455     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5456 }
5457 /*** ISWbemProperty methods ***/
5458 static FORCEINLINE HRESULT ISWbemProperty_get_Value(ISWbemProperty* This,VARIANT *varValue) {
5459     return This->lpVtbl->get_Value(This,varValue);
5460 }
5461 static FORCEINLINE HRESULT ISWbemProperty_put_Value(ISWbemProperty* This,VARIANT *varValue) {
5462     return This->lpVtbl->put_Value(This,varValue);
5463 }
5464 static FORCEINLINE HRESULT ISWbemProperty_get_Name(ISWbemProperty* This,BSTR *strName) {
5465     return This->lpVtbl->get_Name(This,strName);
5466 }
5467 static FORCEINLINE HRESULT ISWbemProperty_get_IsLocal(ISWbemProperty* This,VARIANT_BOOL *bIsLocal) {
5468     return This->lpVtbl->get_IsLocal(This,bIsLocal);
5469 }
5470 static FORCEINLINE HRESULT ISWbemProperty_get_Origin(ISWbemProperty* This,BSTR *strOrigin) {
5471     return This->lpVtbl->get_Origin(This,strOrigin);
5472 }
5473 static FORCEINLINE HRESULT ISWbemProperty_get_CIMType(ISWbemProperty* This,WbemCimtypeEnum *iCimType) {
5474     return This->lpVtbl->get_CIMType(This,iCimType);
5475 }
5476 static FORCEINLINE HRESULT ISWbemProperty_get_Qualifiers_(ISWbemProperty* This,ISWbemQualifierSet **objWbemQualifierSet) {
5477     return This->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet);
5478 }
5479 static FORCEINLINE HRESULT ISWbemProperty_get_IsArray(ISWbemProperty* This,VARIANT_BOOL *bIsArray) {
5480     return This->lpVtbl->get_IsArray(This,bIsArray);
5481 }
5482 #endif
5483 #endif
5484 
5485 #endif
5486 
5487 HRESULT STDMETHODCALLTYPE ISWbemProperty_get_Value_Proxy(
5488     ISWbemProperty* This,
5489     VARIANT *varValue);
5490 void __RPC_STUB ISWbemProperty_get_Value_Stub(
5491     IRpcStubBuffer* This,
5492     IRpcChannelBuffer* pRpcChannelBuffer,
5493     PRPC_MESSAGE pRpcMessage,
5494     DWORD* pdwStubPhase);
5495 HRESULT STDMETHODCALLTYPE ISWbemProperty_put_Value_Proxy(
5496     ISWbemProperty* This,
5497     VARIANT *varValue);
5498 void __RPC_STUB ISWbemProperty_put_Value_Stub(
5499     IRpcStubBuffer* This,
5500     IRpcChannelBuffer* pRpcChannelBuffer,
5501     PRPC_MESSAGE pRpcMessage,
5502     DWORD* pdwStubPhase);
5503 HRESULT STDMETHODCALLTYPE ISWbemProperty_get_Name_Proxy(
5504     ISWbemProperty* This,
5505     BSTR *strName);
5506 void __RPC_STUB ISWbemProperty_get_Name_Stub(
5507     IRpcStubBuffer* This,
5508     IRpcChannelBuffer* pRpcChannelBuffer,
5509     PRPC_MESSAGE pRpcMessage,
5510     DWORD* pdwStubPhase);
5511 HRESULT STDMETHODCALLTYPE ISWbemProperty_get_IsLocal_Proxy(
5512     ISWbemProperty* This,
5513     VARIANT_BOOL *bIsLocal);
5514 void __RPC_STUB ISWbemProperty_get_IsLocal_Stub(
5515     IRpcStubBuffer* This,
5516     IRpcChannelBuffer* pRpcChannelBuffer,
5517     PRPC_MESSAGE pRpcMessage,
5518     DWORD* pdwStubPhase);
5519 HRESULT STDMETHODCALLTYPE ISWbemProperty_get_Origin_Proxy(
5520     ISWbemProperty* This,
5521     BSTR *strOrigin);
5522 void __RPC_STUB ISWbemProperty_get_Origin_Stub(
5523     IRpcStubBuffer* This,
5524     IRpcChannelBuffer* pRpcChannelBuffer,
5525     PRPC_MESSAGE pRpcMessage,
5526     DWORD* pdwStubPhase);
5527 HRESULT STDMETHODCALLTYPE ISWbemProperty_get_CIMType_Proxy(
5528     ISWbemProperty* This,
5529     WbemCimtypeEnum *iCimType);
5530 void __RPC_STUB ISWbemProperty_get_CIMType_Stub(
5531     IRpcStubBuffer* This,
5532     IRpcChannelBuffer* pRpcChannelBuffer,
5533     PRPC_MESSAGE pRpcMessage,
5534     DWORD* pdwStubPhase);
5535 HRESULT STDMETHODCALLTYPE ISWbemProperty_get_Qualifiers__Proxy(
5536     ISWbemProperty* This,
5537     ISWbemQualifierSet **objWbemQualifierSet);
5538 void __RPC_STUB ISWbemProperty_get_Qualifiers__Stub(
5539     IRpcStubBuffer* This,
5540     IRpcChannelBuffer* pRpcChannelBuffer,
5541     PRPC_MESSAGE pRpcMessage,
5542     DWORD* pdwStubPhase);
5543 HRESULT STDMETHODCALLTYPE ISWbemProperty_get_IsArray_Proxy(
5544     ISWbemProperty* This,
5545     VARIANT_BOOL *bIsArray);
5546 void __RPC_STUB ISWbemProperty_get_IsArray_Stub(
5547     IRpcStubBuffer* This,
5548     IRpcChannelBuffer* pRpcChannelBuffer,
5549     PRPC_MESSAGE pRpcMessage,
5550     DWORD* pdwStubPhase);
5551 
5552 #endif  /* __ISWbemProperty_INTERFACE_DEFINED__ */
5553 
5554 /*****************************************************************************
5555  * ISWbemPropertySet interface
5556  */
5557 #ifndef __ISWbemPropertySet_INTERFACE_DEFINED__
5558 #define __ISWbemPropertySet_INTERFACE_DEFINED__
5559 
5560 DEFINE_GUID(IID_ISWbemPropertySet, 0xdea0a7b2, 0xd4ba, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6);
5561 #if defined(__cplusplus) && !defined(CINTERFACE)
5562 MIDL_INTERFACE("dea0a7b2-d4ba-11d1-8b09-00600806d9b6")
5563 ISWbemPropertySet : public IDispatch
5564 {
5565     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
5566         IUnknown **pUnk) = 0;
5567 
5568     virtual HRESULT STDMETHODCALLTYPE Item(
5569         BSTR strName,
5570         LONG iFlags = 0,
5571         ISWbemProperty **objWbemProperty = 0) = 0;
5572 
5573     virtual HRESULT STDMETHODCALLTYPE get_Count(
5574         LONG *iCount) = 0;
5575 
5576     virtual HRESULT STDMETHODCALLTYPE Add(
5577         BSTR strName,
5578         WbemCimtypeEnum iCIMType,
5579         VARIANT_BOOL bIsArray = FALSE,
5580         LONG iFlags = 0,
5581         ISWbemProperty **objWbemProperty = 0) = 0;
5582 
5583     virtual HRESULT STDMETHODCALLTYPE Remove(
5584         BSTR strName,
5585         LONG iFlags = 0) = 0;
5586 
5587 };
5588 #ifdef __CRT_UUID_DECL
5589 __CRT_UUID_DECL(ISWbemPropertySet, 0xdea0a7b2, 0xd4ba, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6)
5590 #endif
5591 #else
5592 typedef struct ISWbemPropertySetVtbl {
5593     BEGIN_INTERFACE
5594 
5595     /*** IUnknown methods ***/
5596     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5597         ISWbemPropertySet* This,
5598         REFIID riid,
5599         void **ppvObject);
5600 
5601     ULONG (STDMETHODCALLTYPE *AddRef)(
5602         ISWbemPropertySet* This);
5603 
5604     ULONG (STDMETHODCALLTYPE *Release)(
5605         ISWbemPropertySet* This);
5606 
5607     /*** IDispatch methods ***/
5608     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
5609         ISWbemPropertySet* This,
5610         UINT *pctinfo);
5611 
5612     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
5613         ISWbemPropertySet* This,
5614         UINT iTInfo,
5615         LCID lcid,
5616         ITypeInfo **ppTInfo);
5617 
5618     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
5619         ISWbemPropertySet* This,
5620         REFIID riid,
5621         LPOLESTR *rgszNames,
5622         UINT cNames,
5623         LCID lcid,
5624         DISPID *rgDispId);
5625 
5626     HRESULT (STDMETHODCALLTYPE *Invoke)(
5627         ISWbemPropertySet* This,
5628         DISPID dispIdMember,
5629         REFIID riid,
5630         LCID lcid,
5631         WORD wFlags,
5632         DISPPARAMS *pDispParams,
5633         VARIANT *pVarResult,
5634         EXCEPINFO *pExcepInfo,
5635         UINT *puArgErr);
5636 
5637     /*** ISWbemPropertySet methods ***/
5638     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
5639         ISWbemPropertySet* This,
5640         IUnknown **pUnk);
5641 
5642     HRESULT (STDMETHODCALLTYPE *Item)(
5643         ISWbemPropertySet* This,
5644         BSTR strName,
5645         LONG iFlags,
5646         ISWbemProperty **objWbemProperty);
5647 
5648     HRESULT (STDMETHODCALLTYPE *get_Count)(
5649         ISWbemPropertySet* This,
5650         LONG *iCount);
5651 
5652     HRESULT (STDMETHODCALLTYPE *Add)(
5653         ISWbemPropertySet* This,
5654         BSTR strName,
5655         WbemCimtypeEnum iCIMType,
5656         VARIANT_BOOL bIsArray,
5657         LONG iFlags,
5658         ISWbemProperty **objWbemProperty);
5659 
5660     HRESULT (STDMETHODCALLTYPE *Remove)(
5661         ISWbemPropertySet* This,
5662         BSTR strName,
5663         LONG iFlags);
5664 
5665     END_INTERFACE
5666 } ISWbemPropertySetVtbl;
5667 interface ISWbemPropertySet {
5668     CONST_VTBL ISWbemPropertySetVtbl* lpVtbl;
5669 };
5670 
5671 #ifdef COBJMACROS
5672 #ifndef WIDL_C_INLINE_WRAPPERS
5673 /*** IUnknown methods ***/
5674 #define ISWbemPropertySet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5675 #define ISWbemPropertySet_AddRef(This) (This)->lpVtbl->AddRef(This)
5676 #define ISWbemPropertySet_Release(This) (This)->lpVtbl->Release(This)
5677 /*** IDispatch methods ***/
5678 #define ISWbemPropertySet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5679 #define ISWbemPropertySet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5680 #define ISWbemPropertySet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5681 #define ISWbemPropertySet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5682 /*** ISWbemPropertySet methods ***/
5683 #define ISWbemPropertySet_get__NewEnum(This,pUnk) (This)->lpVtbl->get__NewEnum(This,pUnk)
5684 #define ISWbemPropertySet_Item(This,strName,iFlags,objWbemProperty) (This)->lpVtbl->Item(This,strName,iFlags,objWbemProperty)
5685 #define ISWbemPropertySet_get_Count(This,iCount) (This)->lpVtbl->get_Count(This,iCount)
5686 #define ISWbemPropertySet_Add(This,strName,iCIMType,bIsArray,iFlags,objWbemProperty) (This)->lpVtbl->Add(This,strName,iCIMType,bIsArray,iFlags,objWbemProperty)
5687 #define ISWbemPropertySet_Remove(This,strName,iFlags) (This)->lpVtbl->Remove(This,strName,iFlags)
5688 #else
5689 /*** IUnknown methods ***/
5690 static FORCEINLINE HRESULT ISWbemPropertySet_QueryInterface(ISWbemPropertySet* This,REFIID riid,void **ppvObject) {
5691     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5692 }
5693 static FORCEINLINE ULONG ISWbemPropertySet_AddRef(ISWbemPropertySet* This) {
5694     return This->lpVtbl->AddRef(This);
5695 }
5696 static FORCEINLINE ULONG ISWbemPropertySet_Release(ISWbemPropertySet* This) {
5697     return This->lpVtbl->Release(This);
5698 }
5699 /*** IDispatch methods ***/
5700 static FORCEINLINE HRESULT ISWbemPropertySet_GetTypeInfoCount(ISWbemPropertySet* This,UINT *pctinfo) {
5701     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5702 }
5703 static FORCEINLINE HRESULT ISWbemPropertySet_GetTypeInfo(ISWbemPropertySet* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5704     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5705 }
5706 static FORCEINLINE HRESULT ISWbemPropertySet_GetIDsOfNames(ISWbemPropertySet* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5707     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5708 }
5709 static FORCEINLINE HRESULT ISWbemPropertySet_Invoke(ISWbemPropertySet* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5710     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5711 }
5712 /*** ISWbemPropertySet methods ***/
5713 static FORCEINLINE HRESULT ISWbemPropertySet_get__NewEnum(ISWbemPropertySet* This,IUnknown **pUnk) {
5714     return This->lpVtbl->get__NewEnum(This,pUnk);
5715 }
5716 static FORCEINLINE HRESULT ISWbemPropertySet_Item(ISWbemPropertySet* This,BSTR strName,LONG iFlags,ISWbemProperty **objWbemProperty) {
5717     return This->lpVtbl->Item(This,strName,iFlags,objWbemProperty);
5718 }
5719 static FORCEINLINE HRESULT ISWbemPropertySet_get_Count(ISWbemPropertySet* This,LONG *iCount) {
5720     return This->lpVtbl->get_Count(This,iCount);
5721 }
5722 static FORCEINLINE HRESULT ISWbemPropertySet_Add(ISWbemPropertySet* This,BSTR strName,WbemCimtypeEnum iCIMType,VARIANT_BOOL bIsArray,LONG iFlags,ISWbemProperty **objWbemProperty) {
5723     return This->lpVtbl->Add(This,strName,iCIMType,bIsArray,iFlags,objWbemProperty);
5724 }
5725 static FORCEINLINE HRESULT ISWbemPropertySet_Remove(ISWbemPropertySet* This,BSTR strName,LONG iFlags) {
5726     return This->lpVtbl->Remove(This,strName,iFlags);
5727 }
5728 #endif
5729 #endif
5730 
5731 #endif
5732 
5733 HRESULT STDMETHODCALLTYPE ISWbemPropertySet_get__NewEnum_Proxy(
5734     ISWbemPropertySet* This,
5735     IUnknown **pUnk);
5736 void __RPC_STUB ISWbemPropertySet_get__NewEnum_Stub(
5737     IRpcStubBuffer* This,
5738     IRpcChannelBuffer* pRpcChannelBuffer,
5739     PRPC_MESSAGE pRpcMessage,
5740     DWORD* pdwStubPhase);
5741 HRESULT STDMETHODCALLTYPE ISWbemPropertySet_Item_Proxy(
5742     ISWbemPropertySet* This,
5743     BSTR strName,
5744     LONG iFlags,
5745     ISWbemProperty **objWbemProperty);
5746 void __RPC_STUB ISWbemPropertySet_Item_Stub(
5747     IRpcStubBuffer* This,
5748     IRpcChannelBuffer* pRpcChannelBuffer,
5749     PRPC_MESSAGE pRpcMessage,
5750     DWORD* pdwStubPhase);
5751 HRESULT STDMETHODCALLTYPE ISWbemPropertySet_get_Count_Proxy(
5752     ISWbemPropertySet* This,
5753     LONG *iCount);
5754 void __RPC_STUB ISWbemPropertySet_get_Count_Stub(
5755     IRpcStubBuffer* This,
5756     IRpcChannelBuffer* pRpcChannelBuffer,
5757     PRPC_MESSAGE pRpcMessage,
5758     DWORD* pdwStubPhase);
5759 HRESULT STDMETHODCALLTYPE ISWbemPropertySet_Add_Proxy(
5760     ISWbemPropertySet* This,
5761     BSTR strName,
5762     WbemCimtypeEnum iCIMType,
5763     VARIANT_BOOL bIsArray,
5764     LONG iFlags,
5765     ISWbemProperty **objWbemProperty);
5766 void __RPC_STUB ISWbemPropertySet_Add_Stub(
5767     IRpcStubBuffer* This,
5768     IRpcChannelBuffer* pRpcChannelBuffer,
5769     PRPC_MESSAGE pRpcMessage,
5770     DWORD* pdwStubPhase);
5771 HRESULT STDMETHODCALLTYPE ISWbemPropertySet_Remove_Proxy(
5772     ISWbemPropertySet* This,
5773     BSTR strName,
5774     LONG iFlags);
5775 void __RPC_STUB ISWbemPropertySet_Remove_Stub(
5776     IRpcStubBuffer* This,
5777     IRpcChannelBuffer* pRpcChannelBuffer,
5778     PRPC_MESSAGE pRpcMessage,
5779     DWORD* pdwStubPhase);
5780 
5781 #endif  /* __ISWbemPropertySet_INTERFACE_DEFINED__ */
5782 
5783 /*****************************************************************************
5784  * ISWbemQualifier interface
5785  */
5786 #ifndef __ISWbemQualifier_INTERFACE_DEFINED__
5787 #define __ISWbemQualifier_INTERFACE_DEFINED__
5788 
5789 DEFINE_GUID(IID_ISWbemQualifier, 0x79b05932, 0xd3b7, 0x11d1, 0x8b,0x06, 0x00,0x60,0x08,0x06,0xd9,0xb6);
5790 #if defined(__cplusplus) && !defined(CINTERFACE)
5791 MIDL_INTERFACE("79b05932-d3b7-11d1-8b06-00600806d9b6")
5792 ISWbemQualifier : public IDispatch
5793 {
5794     virtual HRESULT STDMETHODCALLTYPE get_Value(
5795         VARIANT *varValue) = 0;
5796 
5797     virtual HRESULT STDMETHODCALLTYPE put_Value(
5798         VARIANT *varValue) = 0;
5799 
5800     virtual HRESULT STDMETHODCALLTYPE get_Name(
5801         BSTR *strName) = 0;
5802 
5803     virtual HRESULT STDMETHODCALLTYPE get_IsLocal(
5804         VARIANT_BOOL *bIsLocal) = 0;
5805 
5806     virtual HRESULT STDMETHODCALLTYPE get_PropagatesToSubclass(
5807         VARIANT_BOOL *bPropagatesToSubclass) = 0;
5808 
5809     virtual HRESULT STDMETHODCALLTYPE put_PropagatesToSubclass(
5810         VARIANT_BOOL bPropagatesToSubclass) = 0;
5811 
5812     virtual HRESULT STDMETHODCALLTYPE get_PropagatesToInstance(
5813         VARIANT_BOOL *bPropagatesToInstance) = 0;
5814 
5815     virtual HRESULT STDMETHODCALLTYPE put_PropagatesToInstance(
5816         VARIANT_BOOL bPropagatesToInstance) = 0;
5817 
5818     virtual HRESULT STDMETHODCALLTYPE get_IsOverridable(
5819         VARIANT_BOOL *bIsOverridable) = 0;
5820 
5821     virtual HRESULT STDMETHODCALLTYPE put_IsOverridable(
5822         VARIANT_BOOL bIsOverridable) = 0;
5823 
5824     virtual HRESULT STDMETHODCALLTYPE get_IsAmended(
5825         VARIANT_BOOL *bIsAmended) = 0;
5826 
5827 };
5828 #ifdef __CRT_UUID_DECL
5829 __CRT_UUID_DECL(ISWbemQualifier, 0x79b05932, 0xd3b7, 0x11d1, 0x8b,0x06, 0x00,0x60,0x08,0x06,0xd9,0xb6)
5830 #endif
5831 #else
5832 typedef struct ISWbemQualifierVtbl {
5833     BEGIN_INTERFACE
5834 
5835     /*** IUnknown methods ***/
5836     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5837         ISWbemQualifier* This,
5838         REFIID riid,
5839         void **ppvObject);
5840 
5841     ULONG (STDMETHODCALLTYPE *AddRef)(
5842         ISWbemQualifier* This);
5843 
5844     ULONG (STDMETHODCALLTYPE *Release)(
5845         ISWbemQualifier* This);
5846 
5847     /*** IDispatch methods ***/
5848     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
5849         ISWbemQualifier* This,
5850         UINT *pctinfo);
5851 
5852     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
5853         ISWbemQualifier* This,
5854         UINT iTInfo,
5855         LCID lcid,
5856         ITypeInfo **ppTInfo);
5857 
5858     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
5859         ISWbemQualifier* This,
5860         REFIID riid,
5861         LPOLESTR *rgszNames,
5862         UINT cNames,
5863         LCID lcid,
5864         DISPID *rgDispId);
5865 
5866     HRESULT (STDMETHODCALLTYPE *Invoke)(
5867         ISWbemQualifier* This,
5868         DISPID dispIdMember,
5869         REFIID riid,
5870         LCID lcid,
5871         WORD wFlags,
5872         DISPPARAMS *pDispParams,
5873         VARIANT *pVarResult,
5874         EXCEPINFO *pExcepInfo,
5875         UINT *puArgErr);
5876 
5877     /*** ISWbemQualifier methods ***/
5878     HRESULT (STDMETHODCALLTYPE *get_Value)(
5879         ISWbemQualifier* This,
5880         VARIANT *varValue);
5881 
5882     HRESULT (STDMETHODCALLTYPE *put_Value)(
5883         ISWbemQualifier* This,
5884         VARIANT *varValue);
5885 
5886     HRESULT (STDMETHODCALLTYPE *get_Name)(
5887         ISWbemQualifier* This,
5888         BSTR *strName);
5889 
5890     HRESULT (STDMETHODCALLTYPE *get_IsLocal)(
5891         ISWbemQualifier* This,
5892         VARIANT_BOOL *bIsLocal);
5893 
5894     HRESULT (STDMETHODCALLTYPE *get_PropagatesToSubclass)(
5895         ISWbemQualifier* This,
5896         VARIANT_BOOL *bPropagatesToSubclass);
5897 
5898     HRESULT (STDMETHODCALLTYPE *put_PropagatesToSubclass)(
5899         ISWbemQualifier* This,
5900         VARIANT_BOOL bPropagatesToSubclass);
5901 
5902     HRESULT (STDMETHODCALLTYPE *get_PropagatesToInstance)(
5903         ISWbemQualifier* This,
5904         VARIANT_BOOL *bPropagatesToInstance);
5905 
5906     HRESULT (STDMETHODCALLTYPE *put_PropagatesToInstance)(
5907         ISWbemQualifier* This,
5908         VARIANT_BOOL bPropagatesToInstance);
5909 
5910     HRESULT (STDMETHODCALLTYPE *get_IsOverridable)(
5911         ISWbemQualifier* This,
5912         VARIANT_BOOL *bIsOverridable);
5913 
5914     HRESULT (STDMETHODCALLTYPE *put_IsOverridable)(
5915         ISWbemQualifier* This,
5916         VARIANT_BOOL bIsOverridable);
5917 
5918     HRESULT (STDMETHODCALLTYPE *get_IsAmended)(
5919         ISWbemQualifier* This,
5920         VARIANT_BOOL *bIsAmended);
5921 
5922     END_INTERFACE
5923 } ISWbemQualifierVtbl;
5924 interface ISWbemQualifier {
5925     CONST_VTBL ISWbemQualifierVtbl* lpVtbl;
5926 };
5927 
5928 #ifdef COBJMACROS
5929 #ifndef WIDL_C_INLINE_WRAPPERS
5930 /*** IUnknown methods ***/
5931 #define ISWbemQualifier_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5932 #define ISWbemQualifier_AddRef(This) (This)->lpVtbl->AddRef(This)
5933 #define ISWbemQualifier_Release(This) (This)->lpVtbl->Release(This)
5934 /*** IDispatch methods ***/
5935 #define ISWbemQualifier_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5936 #define ISWbemQualifier_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5937 #define ISWbemQualifier_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5938 #define ISWbemQualifier_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5939 /*** ISWbemQualifier methods ***/
5940 #define ISWbemQualifier_get_Value(This,varValue) (This)->lpVtbl->get_Value(This,varValue)
5941 #define ISWbemQualifier_put_Value(This,varValue) (This)->lpVtbl->put_Value(This,varValue)
5942 #define ISWbemQualifier_get_Name(This,strName) (This)->lpVtbl->get_Name(This,strName)
5943 #define ISWbemQualifier_get_IsLocal(This,bIsLocal) (This)->lpVtbl->get_IsLocal(This,bIsLocal)
5944 #define ISWbemQualifier_get_PropagatesToSubclass(This,bPropagatesToSubclass) (This)->lpVtbl->get_PropagatesToSubclass(This,bPropagatesToSubclass)
5945 #define ISWbemQualifier_put_PropagatesToSubclass(This,bPropagatesToSubclass) (This)->lpVtbl->put_PropagatesToSubclass(This,bPropagatesToSubclass)
5946 #define ISWbemQualifier_get_PropagatesToInstance(This,bPropagatesToInstance) (This)->lpVtbl->get_PropagatesToInstance(This,bPropagatesToInstance)
5947 #define ISWbemQualifier_put_PropagatesToInstance(This,bPropagatesToInstance) (This)->lpVtbl->put_PropagatesToInstance(This,bPropagatesToInstance)
5948 #define ISWbemQualifier_get_IsOverridable(This,bIsOverridable) (This)->lpVtbl->get_IsOverridable(This,bIsOverridable)
5949 #define ISWbemQualifier_put_IsOverridable(This,bIsOverridable) (This)->lpVtbl->put_IsOverridable(This,bIsOverridable)
5950 #define ISWbemQualifier_get_IsAmended(This,bIsAmended) (This)->lpVtbl->get_IsAmended(This,bIsAmended)
5951 #else
5952 /*** IUnknown methods ***/
5953 static FORCEINLINE HRESULT ISWbemQualifier_QueryInterface(ISWbemQualifier* This,REFIID riid,void **ppvObject) {
5954     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5955 }
5956 static FORCEINLINE ULONG ISWbemQualifier_AddRef(ISWbemQualifier* This) {
5957     return This->lpVtbl->AddRef(This);
5958 }
5959 static FORCEINLINE ULONG ISWbemQualifier_Release(ISWbemQualifier* This) {
5960     return This->lpVtbl->Release(This);
5961 }
5962 /*** IDispatch methods ***/
5963 static FORCEINLINE HRESULT ISWbemQualifier_GetTypeInfoCount(ISWbemQualifier* This,UINT *pctinfo) {
5964     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5965 }
5966 static FORCEINLINE HRESULT ISWbemQualifier_GetTypeInfo(ISWbemQualifier* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5967     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5968 }
5969 static FORCEINLINE HRESULT ISWbemQualifier_GetIDsOfNames(ISWbemQualifier* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5970     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5971 }
5972 static FORCEINLINE HRESULT ISWbemQualifier_Invoke(ISWbemQualifier* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5973     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5974 }
5975 /*** ISWbemQualifier methods ***/
5976 static FORCEINLINE HRESULT ISWbemQualifier_get_Value(ISWbemQualifier* This,VARIANT *varValue) {
5977     return This->lpVtbl->get_Value(This,varValue);
5978 }
5979 static FORCEINLINE HRESULT ISWbemQualifier_put_Value(ISWbemQualifier* This,VARIANT *varValue) {
5980     return This->lpVtbl->put_Value(This,varValue);
5981 }
5982 static FORCEINLINE HRESULT ISWbemQualifier_get_Name(ISWbemQualifier* This,BSTR *strName) {
5983     return This->lpVtbl->get_Name(This,strName);
5984 }
5985 static FORCEINLINE HRESULT ISWbemQualifier_get_IsLocal(ISWbemQualifier* This,VARIANT_BOOL *bIsLocal) {
5986     return This->lpVtbl->get_IsLocal(This,bIsLocal);
5987 }
5988 static FORCEINLINE HRESULT ISWbemQualifier_get_PropagatesToSubclass(ISWbemQualifier* This,VARIANT_BOOL *bPropagatesToSubclass) {
5989     return This->lpVtbl->get_PropagatesToSubclass(This,bPropagatesToSubclass);
5990 }
5991 static FORCEINLINE HRESULT ISWbemQualifier_put_PropagatesToSubclass(ISWbemQualifier* This,VARIANT_BOOL bPropagatesToSubclass) {
5992     return This->lpVtbl->put_PropagatesToSubclass(This,bPropagatesToSubclass);
5993 }
5994 static FORCEINLINE HRESULT ISWbemQualifier_get_PropagatesToInstance(ISWbemQualifier* This,VARIANT_BOOL *bPropagatesToInstance) {
5995     return This->lpVtbl->get_PropagatesToInstance(This,bPropagatesToInstance);
5996 }
5997 static FORCEINLINE HRESULT ISWbemQualifier_put_PropagatesToInstance(ISWbemQualifier* This,VARIANT_BOOL bPropagatesToInstance) {
5998     return This->lpVtbl->put_PropagatesToInstance(This,bPropagatesToInstance);
5999 }
6000 static FORCEINLINE HRESULT ISWbemQualifier_get_IsOverridable(ISWbemQualifier* This,VARIANT_BOOL *bIsOverridable) {
6001     return This->lpVtbl->get_IsOverridable(This,bIsOverridable);
6002 }
6003 static FORCEINLINE HRESULT ISWbemQualifier_put_IsOverridable(ISWbemQualifier* This,VARIANT_BOOL bIsOverridable) {
6004     return This->lpVtbl->put_IsOverridable(This,bIsOverridable);
6005 }
6006 static FORCEINLINE HRESULT ISWbemQualifier_get_IsAmended(ISWbemQualifier* This,VARIANT_BOOL *bIsAmended) {
6007     return This->lpVtbl->get_IsAmended(This,bIsAmended);
6008 }
6009 #endif
6010 #endif
6011 
6012 #endif
6013 
6014 HRESULT STDMETHODCALLTYPE ISWbemQualifier_get_Value_Proxy(
6015     ISWbemQualifier* This,
6016     VARIANT *varValue);
6017 void __RPC_STUB ISWbemQualifier_get_Value_Stub(
6018     IRpcStubBuffer* This,
6019     IRpcChannelBuffer* pRpcChannelBuffer,
6020     PRPC_MESSAGE pRpcMessage,
6021     DWORD* pdwStubPhase);
6022 HRESULT STDMETHODCALLTYPE ISWbemQualifier_put_Value_Proxy(
6023     ISWbemQualifier* This,
6024     VARIANT *varValue);
6025 void __RPC_STUB ISWbemQualifier_put_Value_Stub(
6026     IRpcStubBuffer* This,
6027     IRpcChannelBuffer* pRpcChannelBuffer,
6028     PRPC_MESSAGE pRpcMessage,
6029     DWORD* pdwStubPhase);
6030 HRESULT STDMETHODCALLTYPE ISWbemQualifier_get_Name_Proxy(
6031     ISWbemQualifier* This,
6032     BSTR *strName);
6033 void __RPC_STUB ISWbemQualifier_get_Name_Stub(
6034     IRpcStubBuffer* This,
6035     IRpcChannelBuffer* pRpcChannelBuffer,
6036     PRPC_MESSAGE pRpcMessage,
6037     DWORD* pdwStubPhase);
6038 HRESULT STDMETHODCALLTYPE ISWbemQualifier_get_IsLocal_Proxy(
6039     ISWbemQualifier* This,
6040     VARIANT_BOOL *bIsLocal);
6041 void __RPC_STUB ISWbemQualifier_get_IsLocal_Stub(
6042     IRpcStubBuffer* This,
6043     IRpcChannelBuffer* pRpcChannelBuffer,
6044     PRPC_MESSAGE pRpcMessage,
6045     DWORD* pdwStubPhase);
6046 HRESULT STDMETHODCALLTYPE ISWbemQualifier_get_PropagatesToSubclass_Proxy(
6047     ISWbemQualifier* This,
6048     VARIANT_BOOL *bPropagatesToSubclass);
6049 void __RPC_STUB ISWbemQualifier_get_PropagatesToSubclass_Stub(
6050     IRpcStubBuffer* This,
6051     IRpcChannelBuffer* pRpcChannelBuffer,
6052     PRPC_MESSAGE pRpcMessage,
6053     DWORD* pdwStubPhase);
6054 HRESULT STDMETHODCALLTYPE ISWbemQualifier_put_PropagatesToSubclass_Proxy(
6055     ISWbemQualifier* This,
6056     VARIANT_BOOL bPropagatesToSubclass);
6057 void __RPC_STUB ISWbemQualifier_put_PropagatesToSubclass_Stub(
6058     IRpcStubBuffer* This,
6059     IRpcChannelBuffer* pRpcChannelBuffer,
6060     PRPC_MESSAGE pRpcMessage,
6061     DWORD* pdwStubPhase);
6062 HRESULT STDMETHODCALLTYPE ISWbemQualifier_get_PropagatesToInstance_Proxy(
6063     ISWbemQualifier* This,
6064     VARIANT_BOOL *bPropagatesToInstance);
6065 void __RPC_STUB ISWbemQualifier_get_PropagatesToInstance_Stub(
6066     IRpcStubBuffer* This,
6067     IRpcChannelBuffer* pRpcChannelBuffer,
6068     PRPC_MESSAGE pRpcMessage,
6069     DWORD* pdwStubPhase);
6070 HRESULT STDMETHODCALLTYPE ISWbemQualifier_put_PropagatesToInstance_Proxy(
6071     ISWbemQualifier* This,
6072     VARIANT_BOOL bPropagatesToInstance);
6073 void __RPC_STUB ISWbemQualifier_put_PropagatesToInstance_Stub(
6074     IRpcStubBuffer* This,
6075     IRpcChannelBuffer* pRpcChannelBuffer,
6076     PRPC_MESSAGE pRpcMessage,
6077     DWORD* pdwStubPhase);
6078 HRESULT STDMETHODCALLTYPE ISWbemQualifier_get_IsOverridable_Proxy(
6079     ISWbemQualifier* This,
6080     VARIANT_BOOL *bIsOverridable);
6081 void __RPC_STUB ISWbemQualifier_get_IsOverridable_Stub(
6082     IRpcStubBuffer* This,
6083     IRpcChannelBuffer* pRpcChannelBuffer,
6084     PRPC_MESSAGE pRpcMessage,
6085     DWORD* pdwStubPhase);
6086 HRESULT STDMETHODCALLTYPE ISWbemQualifier_put_IsOverridable_Proxy(
6087     ISWbemQualifier* This,
6088     VARIANT_BOOL bIsOverridable);
6089 void __RPC_STUB ISWbemQualifier_put_IsOverridable_Stub(
6090     IRpcStubBuffer* This,
6091     IRpcChannelBuffer* pRpcChannelBuffer,
6092     PRPC_MESSAGE pRpcMessage,
6093     DWORD* pdwStubPhase);
6094 HRESULT STDMETHODCALLTYPE ISWbemQualifier_get_IsAmended_Proxy(
6095     ISWbemQualifier* This,
6096     VARIANT_BOOL *bIsAmended);
6097 void __RPC_STUB ISWbemQualifier_get_IsAmended_Stub(
6098     IRpcStubBuffer* This,
6099     IRpcChannelBuffer* pRpcChannelBuffer,
6100     PRPC_MESSAGE pRpcMessage,
6101     DWORD* pdwStubPhase);
6102 
6103 #endif  /* __ISWbemQualifier_INTERFACE_DEFINED__ */
6104 
6105 /*****************************************************************************
6106  * ISWbemQualifierSet interface
6107  */
6108 #ifndef __ISWbemQualifierSet_INTERFACE_DEFINED__
6109 #define __ISWbemQualifierSet_INTERFACE_DEFINED__
6110 
6111 DEFINE_GUID(IID_ISWbemQualifierSet, 0x9b16ed16, 0xd3df, 0x11d1, 0x8b,0x08, 0x00,0x60,0x08,0x06,0xd9,0xb6);
6112 #if defined(__cplusplus) && !defined(CINTERFACE)
6113 MIDL_INTERFACE("9b16ed16-d3df-11d1-8b08-00600806d9b6")
6114 ISWbemQualifierSet : public IDispatch
6115 {
6116     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
6117         IUnknown **pUnk) = 0;
6118 
6119     virtual HRESULT STDMETHODCALLTYPE Item(
6120         BSTR name,
6121         LONG iFlags = 0,
6122         ISWbemQualifier **objWbemQualifier = 0) = 0;
6123 
6124     virtual HRESULT STDMETHODCALLTYPE get_Count(
6125         LONG *iCount) = 0;
6126 
6127     virtual HRESULT STDMETHODCALLTYPE Add(
6128         BSTR strName,
6129         VARIANT *varVal,
6130         VARIANT_BOOL bPropagatesToSubclass = TRUE,
6131         VARIANT_BOOL bPropagatesToInstance = TRUE,
6132         VARIANT_BOOL bIsOverridable = TRUE,
6133         LONG iFlags = 0,
6134         ISWbemQualifier **objWbemQualifier = 0) = 0;
6135 
6136     virtual HRESULT STDMETHODCALLTYPE Remove(
6137         BSTR strName,
6138         LONG iFlags = 0) = 0;
6139 
6140 };
6141 #ifdef __CRT_UUID_DECL
6142 __CRT_UUID_DECL(ISWbemQualifierSet, 0x9b16ed16, 0xd3df, 0x11d1, 0x8b,0x08, 0x00,0x60,0x08,0x06,0xd9,0xb6)
6143 #endif
6144 #else
6145 typedef struct ISWbemQualifierSetVtbl {
6146     BEGIN_INTERFACE
6147 
6148     /*** IUnknown methods ***/
6149     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6150         ISWbemQualifierSet* This,
6151         REFIID riid,
6152         void **ppvObject);
6153 
6154     ULONG (STDMETHODCALLTYPE *AddRef)(
6155         ISWbemQualifierSet* This);
6156 
6157     ULONG (STDMETHODCALLTYPE *Release)(
6158         ISWbemQualifierSet* This);
6159 
6160     /*** IDispatch methods ***/
6161     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
6162         ISWbemQualifierSet* This,
6163         UINT *pctinfo);
6164 
6165     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
6166         ISWbemQualifierSet* This,
6167         UINT iTInfo,
6168         LCID lcid,
6169         ITypeInfo **ppTInfo);
6170 
6171     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
6172         ISWbemQualifierSet* This,
6173         REFIID riid,
6174         LPOLESTR *rgszNames,
6175         UINT cNames,
6176         LCID lcid,
6177         DISPID *rgDispId);
6178 
6179     HRESULT (STDMETHODCALLTYPE *Invoke)(
6180         ISWbemQualifierSet* This,
6181         DISPID dispIdMember,
6182         REFIID riid,
6183         LCID lcid,
6184         WORD wFlags,
6185         DISPPARAMS *pDispParams,
6186         VARIANT *pVarResult,
6187         EXCEPINFO *pExcepInfo,
6188         UINT *puArgErr);
6189 
6190     /*** ISWbemQualifierSet methods ***/
6191     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
6192         ISWbemQualifierSet* This,
6193         IUnknown **pUnk);
6194 
6195     HRESULT (STDMETHODCALLTYPE *Item)(
6196         ISWbemQualifierSet* This,
6197         BSTR name,
6198         LONG iFlags,
6199         ISWbemQualifier **objWbemQualifier);
6200 
6201     HRESULT (STDMETHODCALLTYPE *get_Count)(
6202         ISWbemQualifierSet* This,
6203         LONG *iCount);
6204 
6205     HRESULT (STDMETHODCALLTYPE *Add)(
6206         ISWbemQualifierSet* This,
6207         BSTR strName,
6208         VARIANT *varVal,
6209         VARIANT_BOOL bPropagatesToSubclass,
6210         VARIANT_BOOL bPropagatesToInstance,
6211         VARIANT_BOOL bIsOverridable,
6212         LONG iFlags,
6213         ISWbemQualifier **objWbemQualifier);
6214 
6215     HRESULT (STDMETHODCALLTYPE *Remove)(
6216         ISWbemQualifierSet* This,
6217         BSTR strName,
6218         LONG iFlags);
6219 
6220     END_INTERFACE
6221 } ISWbemQualifierSetVtbl;
6222 interface ISWbemQualifierSet {
6223     CONST_VTBL ISWbemQualifierSetVtbl* lpVtbl;
6224 };
6225 
6226 #ifdef COBJMACROS
6227 #ifndef WIDL_C_INLINE_WRAPPERS
6228 /*** IUnknown methods ***/
6229 #define ISWbemQualifierSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6230 #define ISWbemQualifierSet_AddRef(This) (This)->lpVtbl->AddRef(This)
6231 #define ISWbemQualifierSet_Release(This) (This)->lpVtbl->Release(This)
6232 /*** IDispatch methods ***/
6233 #define ISWbemQualifierSet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
6234 #define ISWbemQualifierSet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
6235 #define ISWbemQualifierSet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
6236 #define ISWbemQualifierSet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
6237 /*** ISWbemQualifierSet methods ***/
6238 #define ISWbemQualifierSet_get__NewEnum(This,pUnk) (This)->lpVtbl->get__NewEnum(This,pUnk)
6239 #define ISWbemQualifierSet_Item(This,name,iFlags,objWbemQualifier) (This)->lpVtbl->Item(This,name,iFlags,objWbemQualifier)
6240 #define ISWbemQualifierSet_get_Count(This,iCount) (This)->lpVtbl->get_Count(This,iCount)
6241 #define ISWbemQualifierSet_Add(This,strName,varVal,bPropagatesToSubclass,bPropagatesToInstance,bIsOverridable,iFlags,objWbemQualifier) (This)->lpVtbl->Add(This,strName,varVal,bPropagatesToSubclass,bPropagatesToInstance,bIsOverridable,iFlags,objWbemQualifier)
6242 #define ISWbemQualifierSet_Remove(This,strName,iFlags) (This)->lpVtbl->Remove(This,strName,iFlags)
6243 #else
6244 /*** IUnknown methods ***/
6245 static FORCEINLINE HRESULT ISWbemQualifierSet_QueryInterface(ISWbemQualifierSet* This,REFIID riid,void **ppvObject) {
6246     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6247 }
6248 static FORCEINLINE ULONG ISWbemQualifierSet_AddRef(ISWbemQualifierSet* This) {
6249     return This->lpVtbl->AddRef(This);
6250 }
6251 static FORCEINLINE ULONG ISWbemQualifierSet_Release(ISWbemQualifierSet* This) {
6252     return This->lpVtbl->Release(This);
6253 }
6254 /*** IDispatch methods ***/
6255 static FORCEINLINE HRESULT ISWbemQualifierSet_GetTypeInfoCount(ISWbemQualifierSet* This,UINT *pctinfo) {
6256     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
6257 }
6258 static FORCEINLINE HRESULT ISWbemQualifierSet_GetTypeInfo(ISWbemQualifierSet* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
6259     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
6260 }
6261 static FORCEINLINE HRESULT ISWbemQualifierSet_GetIDsOfNames(ISWbemQualifierSet* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
6262     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
6263 }
6264 static FORCEINLINE HRESULT ISWbemQualifierSet_Invoke(ISWbemQualifierSet* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
6265     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
6266 }
6267 /*** ISWbemQualifierSet methods ***/
6268 static FORCEINLINE HRESULT ISWbemQualifierSet_get__NewEnum(ISWbemQualifierSet* This,IUnknown **pUnk) {
6269     return This->lpVtbl->get__NewEnum(This,pUnk);
6270 }
6271 static FORCEINLINE HRESULT ISWbemQualifierSet_Item(ISWbemQualifierSet* This,BSTR name,LONG iFlags,ISWbemQualifier **objWbemQualifier) {
6272     return This->lpVtbl->Item(This,name,iFlags,objWbemQualifier);
6273 }
6274 static FORCEINLINE HRESULT ISWbemQualifierSet_get_Count(ISWbemQualifierSet* This,LONG *iCount) {
6275     return This->lpVtbl->get_Count(This,iCount);
6276 }
6277 static FORCEINLINE HRESULT ISWbemQualifierSet_Add(ISWbemQualifierSet* This,BSTR strName,VARIANT *varVal,VARIANT_BOOL bPropagatesToSubclass,VARIANT_BOOL bPropagatesToInstance,VARIANT_BOOL bIsOverridable,LONG iFlags,ISWbemQualifier **objWbemQualifier) {
6278     return This->lpVtbl->Add(This,strName,varVal,bPropagatesToSubclass,bPropagatesToInstance,bIsOverridable,iFlags,objWbemQualifier);
6279 }
6280 static FORCEINLINE HRESULT ISWbemQualifierSet_Remove(ISWbemQualifierSet* This,BSTR strName,LONG iFlags) {
6281     return This->lpVtbl->Remove(This,strName,iFlags);
6282 }
6283 #endif
6284 #endif
6285 
6286 #endif
6287 
6288 HRESULT STDMETHODCALLTYPE ISWbemQualifierSet_get__NewEnum_Proxy(
6289     ISWbemQualifierSet* This,
6290     IUnknown **pUnk);
6291 void __RPC_STUB ISWbemQualifierSet_get__NewEnum_Stub(
6292     IRpcStubBuffer* This,
6293     IRpcChannelBuffer* pRpcChannelBuffer,
6294     PRPC_MESSAGE pRpcMessage,
6295     DWORD* pdwStubPhase);
6296 HRESULT STDMETHODCALLTYPE ISWbemQualifierSet_Item_Proxy(
6297     ISWbemQualifierSet* This,
6298     BSTR name,
6299     LONG iFlags,
6300     ISWbemQualifier **objWbemQualifier);
6301 void __RPC_STUB ISWbemQualifierSet_Item_Stub(
6302     IRpcStubBuffer* This,
6303     IRpcChannelBuffer* pRpcChannelBuffer,
6304     PRPC_MESSAGE pRpcMessage,
6305     DWORD* pdwStubPhase);
6306 HRESULT STDMETHODCALLTYPE ISWbemQualifierSet_get_Count_Proxy(
6307     ISWbemQualifierSet* This,
6308     LONG *iCount);
6309 void __RPC_STUB ISWbemQualifierSet_get_Count_Stub(
6310     IRpcStubBuffer* This,
6311     IRpcChannelBuffer* pRpcChannelBuffer,
6312     PRPC_MESSAGE pRpcMessage,
6313     DWORD* pdwStubPhase);
6314 HRESULT STDMETHODCALLTYPE ISWbemQualifierSet_Add_Proxy(
6315     ISWbemQualifierSet* This,
6316     BSTR strName,
6317     VARIANT *varVal,
6318     VARIANT_BOOL bPropagatesToSubclass,
6319     VARIANT_BOOL bPropagatesToInstance,
6320     VARIANT_BOOL bIsOverridable,
6321     LONG iFlags,
6322     ISWbemQualifier **objWbemQualifier);
6323 void __RPC_STUB ISWbemQualifierSet_Add_Stub(
6324     IRpcStubBuffer* This,
6325     IRpcChannelBuffer* pRpcChannelBuffer,
6326     PRPC_MESSAGE pRpcMessage,
6327     DWORD* pdwStubPhase);
6328 HRESULT STDMETHODCALLTYPE ISWbemQualifierSet_Remove_Proxy(
6329     ISWbemQualifierSet* This,
6330     BSTR strName,
6331     LONG iFlags);
6332 void __RPC_STUB ISWbemQualifierSet_Remove_Stub(
6333     IRpcStubBuffer* This,
6334     IRpcChannelBuffer* pRpcChannelBuffer,
6335     PRPC_MESSAGE pRpcMessage,
6336     DWORD* pdwStubPhase);
6337 
6338 #endif  /* __ISWbemQualifierSet_INTERFACE_DEFINED__ */
6339 
6340 /*****************************************************************************
6341  * ISWbemMethod interface
6342  */
6343 #ifndef __ISWbemMethod_INTERFACE_DEFINED__
6344 #define __ISWbemMethod_INTERFACE_DEFINED__
6345 
6346 DEFINE_GUID(IID_ISWbemMethod, 0x422e8e90, 0xd955, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6);
6347 #if defined(__cplusplus) && !defined(CINTERFACE)
6348 MIDL_INTERFACE("422e8e90-d955-11d1-8b09-00600806d9b6")
6349 ISWbemMethod : public IDispatch
6350 {
6351     virtual HRESULT STDMETHODCALLTYPE get_Name(
6352         BSTR *strName) = 0;
6353 
6354     virtual HRESULT STDMETHODCALLTYPE get_Origin(
6355         BSTR *strOrigin) = 0;
6356 
6357     virtual HRESULT STDMETHODCALLTYPE get_InParameters(
6358         ISWbemObject **objWbemInParameters) = 0;
6359 
6360     virtual HRESULT STDMETHODCALLTYPE get_OutParameters(
6361         ISWbemObject **objWbemOutParameters) = 0;
6362 
6363     virtual HRESULT STDMETHODCALLTYPE get_Qualifiers_(
6364         ISWbemQualifierSet **objWbemQualifierSet) = 0;
6365 
6366 };
6367 #ifdef __CRT_UUID_DECL
6368 __CRT_UUID_DECL(ISWbemMethod, 0x422e8e90, 0xd955, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6)
6369 #endif
6370 #else
6371 typedef struct ISWbemMethodVtbl {
6372     BEGIN_INTERFACE
6373 
6374     /*** IUnknown methods ***/
6375     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6376         ISWbemMethod* This,
6377         REFIID riid,
6378         void **ppvObject);
6379 
6380     ULONG (STDMETHODCALLTYPE *AddRef)(
6381         ISWbemMethod* This);
6382 
6383     ULONG (STDMETHODCALLTYPE *Release)(
6384         ISWbemMethod* This);
6385 
6386     /*** IDispatch methods ***/
6387     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
6388         ISWbemMethod* This,
6389         UINT *pctinfo);
6390 
6391     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
6392         ISWbemMethod* This,
6393         UINT iTInfo,
6394         LCID lcid,
6395         ITypeInfo **ppTInfo);
6396 
6397     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
6398         ISWbemMethod* This,
6399         REFIID riid,
6400         LPOLESTR *rgszNames,
6401         UINT cNames,
6402         LCID lcid,
6403         DISPID *rgDispId);
6404 
6405     HRESULT (STDMETHODCALLTYPE *Invoke)(
6406         ISWbemMethod* This,
6407         DISPID dispIdMember,
6408         REFIID riid,
6409         LCID lcid,
6410         WORD wFlags,
6411         DISPPARAMS *pDispParams,
6412         VARIANT *pVarResult,
6413         EXCEPINFO *pExcepInfo,
6414         UINT *puArgErr);
6415 
6416     /*** ISWbemMethod methods ***/
6417     HRESULT (STDMETHODCALLTYPE *get_Name)(
6418         ISWbemMethod* This,
6419         BSTR *strName);
6420 
6421     HRESULT (STDMETHODCALLTYPE *get_Origin)(
6422         ISWbemMethod* This,
6423         BSTR *strOrigin);
6424 
6425     HRESULT (STDMETHODCALLTYPE *get_InParameters)(
6426         ISWbemMethod* This,
6427         ISWbemObject **objWbemInParameters);
6428 
6429     HRESULT (STDMETHODCALLTYPE *get_OutParameters)(
6430         ISWbemMethod* This,
6431         ISWbemObject **objWbemOutParameters);
6432 
6433     HRESULT (STDMETHODCALLTYPE *get_Qualifiers_)(
6434         ISWbemMethod* This,
6435         ISWbemQualifierSet **objWbemQualifierSet);
6436 
6437     END_INTERFACE
6438 } ISWbemMethodVtbl;
6439 interface ISWbemMethod {
6440     CONST_VTBL ISWbemMethodVtbl* lpVtbl;
6441 };
6442 
6443 #ifdef COBJMACROS
6444 #ifndef WIDL_C_INLINE_WRAPPERS
6445 /*** IUnknown methods ***/
6446 #define ISWbemMethod_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6447 #define ISWbemMethod_AddRef(This) (This)->lpVtbl->AddRef(This)
6448 #define ISWbemMethod_Release(This) (This)->lpVtbl->Release(This)
6449 /*** IDispatch methods ***/
6450 #define ISWbemMethod_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
6451 #define ISWbemMethod_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
6452 #define ISWbemMethod_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
6453 #define ISWbemMethod_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
6454 /*** ISWbemMethod methods ***/
6455 #define ISWbemMethod_get_Name(This,strName) (This)->lpVtbl->get_Name(This,strName)
6456 #define ISWbemMethod_get_Origin(This,strOrigin) (This)->lpVtbl->get_Origin(This,strOrigin)
6457 #define ISWbemMethod_get_InParameters(This,objWbemInParameters) (This)->lpVtbl->get_InParameters(This,objWbemInParameters)
6458 #define ISWbemMethod_get_OutParameters(This,objWbemOutParameters) (This)->lpVtbl->get_OutParameters(This,objWbemOutParameters)
6459 #define ISWbemMethod_get_Qualifiers_(This,objWbemQualifierSet) (This)->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet)
6460 #else
6461 /*** IUnknown methods ***/
6462 static FORCEINLINE HRESULT ISWbemMethod_QueryInterface(ISWbemMethod* This,REFIID riid,void **ppvObject) {
6463     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6464 }
6465 static FORCEINLINE ULONG ISWbemMethod_AddRef(ISWbemMethod* This) {
6466     return This->lpVtbl->AddRef(This);
6467 }
6468 static FORCEINLINE ULONG ISWbemMethod_Release(ISWbemMethod* This) {
6469     return This->lpVtbl->Release(This);
6470 }
6471 /*** IDispatch methods ***/
6472 static FORCEINLINE HRESULT ISWbemMethod_GetTypeInfoCount(ISWbemMethod* This,UINT *pctinfo) {
6473     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
6474 }
6475 static FORCEINLINE HRESULT ISWbemMethod_GetTypeInfo(ISWbemMethod* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
6476     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
6477 }
6478 static FORCEINLINE HRESULT ISWbemMethod_GetIDsOfNames(ISWbemMethod* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
6479     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
6480 }
6481 static FORCEINLINE HRESULT ISWbemMethod_Invoke(ISWbemMethod* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
6482     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
6483 }
6484 /*** ISWbemMethod methods ***/
6485 static FORCEINLINE HRESULT ISWbemMethod_get_Name(ISWbemMethod* This,BSTR *strName) {
6486     return This->lpVtbl->get_Name(This,strName);
6487 }
6488 static FORCEINLINE HRESULT ISWbemMethod_get_Origin(ISWbemMethod* This,BSTR *strOrigin) {
6489     return This->lpVtbl->get_Origin(This,strOrigin);
6490 }
6491 static FORCEINLINE HRESULT ISWbemMethod_get_InParameters(ISWbemMethod* This,ISWbemObject **objWbemInParameters) {
6492     return This->lpVtbl->get_InParameters(This,objWbemInParameters);
6493 }
6494 static FORCEINLINE HRESULT ISWbemMethod_get_OutParameters(ISWbemMethod* This,ISWbemObject **objWbemOutParameters) {
6495     return This->lpVtbl->get_OutParameters(This,objWbemOutParameters);
6496 }
6497 static FORCEINLINE HRESULT ISWbemMethod_get_Qualifiers_(ISWbemMethod* This,ISWbemQualifierSet **objWbemQualifierSet) {
6498     return This->lpVtbl->get_Qualifiers_(This,objWbemQualifierSet);
6499 }
6500 #endif
6501 #endif
6502 
6503 #endif
6504 
6505 HRESULT STDMETHODCALLTYPE ISWbemMethod_get_Name_Proxy(
6506     ISWbemMethod* This,
6507     BSTR *strName);
6508 void __RPC_STUB ISWbemMethod_get_Name_Stub(
6509     IRpcStubBuffer* This,
6510     IRpcChannelBuffer* pRpcChannelBuffer,
6511     PRPC_MESSAGE pRpcMessage,
6512     DWORD* pdwStubPhase);
6513 HRESULT STDMETHODCALLTYPE ISWbemMethod_get_Origin_Proxy(
6514     ISWbemMethod* This,
6515     BSTR *strOrigin);
6516 void __RPC_STUB ISWbemMethod_get_Origin_Stub(
6517     IRpcStubBuffer* This,
6518     IRpcChannelBuffer* pRpcChannelBuffer,
6519     PRPC_MESSAGE pRpcMessage,
6520     DWORD* pdwStubPhase);
6521 HRESULT STDMETHODCALLTYPE ISWbemMethod_get_InParameters_Proxy(
6522     ISWbemMethod* This,
6523     ISWbemObject **objWbemInParameters);
6524 void __RPC_STUB ISWbemMethod_get_InParameters_Stub(
6525     IRpcStubBuffer* This,
6526     IRpcChannelBuffer* pRpcChannelBuffer,
6527     PRPC_MESSAGE pRpcMessage,
6528     DWORD* pdwStubPhase);
6529 HRESULT STDMETHODCALLTYPE ISWbemMethod_get_OutParameters_Proxy(
6530     ISWbemMethod* This,
6531     ISWbemObject **objWbemOutParameters);
6532 void __RPC_STUB ISWbemMethod_get_OutParameters_Stub(
6533     IRpcStubBuffer* This,
6534     IRpcChannelBuffer* pRpcChannelBuffer,
6535     PRPC_MESSAGE pRpcMessage,
6536     DWORD* pdwStubPhase);
6537 HRESULT STDMETHODCALLTYPE ISWbemMethod_get_Qualifiers__Proxy(
6538     ISWbemMethod* This,
6539     ISWbemQualifierSet **objWbemQualifierSet);
6540 void __RPC_STUB ISWbemMethod_get_Qualifiers__Stub(
6541     IRpcStubBuffer* This,
6542     IRpcChannelBuffer* pRpcChannelBuffer,
6543     PRPC_MESSAGE pRpcMessage,
6544     DWORD* pdwStubPhase);
6545 
6546 #endif  /* __ISWbemMethod_INTERFACE_DEFINED__ */
6547 
6548 /*****************************************************************************
6549  * ISWbemMethodSet interface
6550  */
6551 #ifndef __ISWbemMethodSet_INTERFACE_DEFINED__
6552 #define __ISWbemMethodSet_INTERFACE_DEFINED__
6553 
6554 DEFINE_GUID(IID_ISWbemMethodSet, 0xc93ba292, 0xd955, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6);
6555 #if defined(__cplusplus) && !defined(CINTERFACE)
6556 MIDL_INTERFACE("c93ba292-d955-11d1-8b09-00600806d9b6")
6557 ISWbemMethodSet : public IDispatch
6558 {
6559     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
6560         IUnknown **pUnk) = 0;
6561 
6562     virtual HRESULT STDMETHODCALLTYPE Item(
6563         BSTR strName,
6564         LONG iFlags = 0,
6565         ISWbemMethod **objWbemMethod = 0) = 0;
6566 
6567     virtual HRESULT STDMETHODCALLTYPE get_Count(
6568         LONG *iCount) = 0;
6569 
6570 };
6571 #ifdef __CRT_UUID_DECL
6572 __CRT_UUID_DECL(ISWbemMethodSet, 0xc93ba292, 0xd955, 0x11d1, 0x8b,0x09, 0x00,0x60,0x08,0x06,0xd9,0xb6)
6573 #endif
6574 #else
6575 typedef struct ISWbemMethodSetVtbl {
6576     BEGIN_INTERFACE
6577 
6578     /*** IUnknown methods ***/
6579     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6580         ISWbemMethodSet* This,
6581         REFIID riid,
6582         void **ppvObject);
6583 
6584     ULONG (STDMETHODCALLTYPE *AddRef)(
6585         ISWbemMethodSet* This);
6586 
6587     ULONG (STDMETHODCALLTYPE *Release)(
6588         ISWbemMethodSet* This);
6589 
6590     /*** IDispatch methods ***/
6591     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
6592         ISWbemMethodSet* This,
6593         UINT *pctinfo);
6594 
6595     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
6596         ISWbemMethodSet* This,
6597         UINT iTInfo,
6598         LCID lcid,
6599         ITypeInfo **ppTInfo);
6600 
6601     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
6602         ISWbemMethodSet* This,
6603         REFIID riid,
6604         LPOLESTR *rgszNames,
6605         UINT cNames,
6606         LCID lcid,
6607         DISPID *rgDispId);
6608 
6609     HRESULT (STDMETHODCALLTYPE *Invoke)(
6610         ISWbemMethodSet* This,
6611         DISPID dispIdMember,
6612         REFIID riid,
6613         LCID lcid,
6614         WORD wFlags,
6615         DISPPARAMS *pDispParams,
6616         VARIANT *pVarResult,
6617         EXCEPINFO *pExcepInfo,
6618         UINT *puArgErr);
6619 
6620     /*** ISWbemMethodSet methods ***/
6621     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
6622         ISWbemMethodSet* This,
6623         IUnknown **pUnk);
6624 
6625     HRESULT (STDMETHODCALLTYPE *Item)(
6626         ISWbemMethodSet* This,
6627         BSTR strName,
6628         LONG iFlags,
6629         ISWbemMethod **objWbemMethod);
6630 
6631     HRESULT (STDMETHODCALLTYPE *get_Count)(
6632         ISWbemMethodSet* This,
6633         LONG *iCount);
6634 
6635     END_INTERFACE
6636 } ISWbemMethodSetVtbl;
6637 interface ISWbemMethodSet {
6638     CONST_VTBL ISWbemMethodSetVtbl* lpVtbl;
6639 };
6640 
6641 #ifdef COBJMACROS
6642 #ifndef WIDL_C_INLINE_WRAPPERS
6643 /*** IUnknown methods ***/
6644 #define ISWbemMethodSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6645 #define ISWbemMethodSet_AddRef(This) (This)->lpVtbl->AddRef(This)
6646 #define ISWbemMethodSet_Release(This) (This)->lpVtbl->Release(This)
6647 /*** IDispatch methods ***/
6648 #define ISWbemMethodSet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
6649 #define ISWbemMethodSet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
6650 #define ISWbemMethodSet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
6651 #define ISWbemMethodSet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
6652 /*** ISWbemMethodSet methods ***/
6653 #define ISWbemMethodSet_get__NewEnum(This,pUnk) (This)->lpVtbl->get__NewEnum(This,pUnk)
6654 #define ISWbemMethodSet_Item(This,strName,iFlags,objWbemMethod) (This)->lpVtbl->Item(This,strName,iFlags,objWbemMethod)
6655 #define ISWbemMethodSet_get_Count(This,iCount) (This)->lpVtbl->get_Count(This,iCount)
6656 #else
6657 /*** IUnknown methods ***/
6658 static FORCEINLINE HRESULT ISWbemMethodSet_QueryInterface(ISWbemMethodSet* This,REFIID riid,void **ppvObject) {
6659     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6660 }
6661 static FORCEINLINE ULONG ISWbemMethodSet_AddRef(ISWbemMethodSet* This) {
6662     return This->lpVtbl->AddRef(This);
6663 }
6664 static FORCEINLINE ULONG ISWbemMethodSet_Release(ISWbemMethodSet* This) {
6665     return This->lpVtbl->Release(This);
6666 }
6667 /*** IDispatch methods ***/
6668 static FORCEINLINE HRESULT ISWbemMethodSet_GetTypeInfoCount(ISWbemMethodSet* This,UINT *pctinfo) {
6669     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
6670 }
6671 static FORCEINLINE HRESULT ISWbemMethodSet_GetTypeInfo(ISWbemMethodSet* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
6672     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
6673 }
6674 static FORCEINLINE HRESULT ISWbemMethodSet_GetIDsOfNames(ISWbemMethodSet* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
6675     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
6676 }
6677 static FORCEINLINE HRESULT ISWbemMethodSet_Invoke(ISWbemMethodSet* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
6678     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
6679 }
6680 /*** ISWbemMethodSet methods ***/
6681 static FORCEINLINE HRESULT ISWbemMethodSet_get__NewEnum(ISWbemMethodSet* This,IUnknown **pUnk) {
6682     return This->lpVtbl->get__NewEnum(This,pUnk);
6683 }
6684 static FORCEINLINE HRESULT ISWbemMethodSet_Item(ISWbemMethodSet* This,BSTR strName,LONG iFlags,ISWbemMethod **objWbemMethod) {
6685     return This->lpVtbl->Item(This,strName,iFlags,objWbemMethod);
6686 }
6687 static FORCEINLINE HRESULT ISWbemMethodSet_get_Count(ISWbemMethodSet* This,LONG *iCount) {
6688     return This->lpVtbl->get_Count(This,iCount);
6689 }
6690 #endif
6691 #endif
6692 
6693 #endif
6694 
6695 HRESULT STDMETHODCALLTYPE ISWbemMethodSet_get__NewEnum_Proxy(
6696     ISWbemMethodSet* This,
6697     IUnknown **pUnk);
6698 void __RPC_STUB ISWbemMethodSet_get__NewEnum_Stub(
6699     IRpcStubBuffer* This,
6700     IRpcChannelBuffer* pRpcChannelBuffer,
6701     PRPC_MESSAGE pRpcMessage,
6702     DWORD* pdwStubPhase);
6703 HRESULT STDMETHODCALLTYPE ISWbemMethodSet_Item_Proxy(
6704     ISWbemMethodSet* This,
6705     BSTR strName,
6706     LONG iFlags,
6707     ISWbemMethod **objWbemMethod);
6708 void __RPC_STUB ISWbemMethodSet_Item_Stub(
6709     IRpcStubBuffer* This,
6710     IRpcChannelBuffer* pRpcChannelBuffer,
6711     PRPC_MESSAGE pRpcMessage,
6712     DWORD* pdwStubPhase);
6713 HRESULT STDMETHODCALLTYPE ISWbemMethodSet_get_Count_Proxy(
6714     ISWbemMethodSet* This,
6715     LONG *iCount);
6716 void __RPC_STUB ISWbemMethodSet_get_Count_Stub(
6717     IRpcStubBuffer* This,
6718     IRpcChannelBuffer* pRpcChannelBuffer,
6719     PRPC_MESSAGE pRpcMessage,
6720     DWORD* pdwStubPhase);
6721 
6722 #endif  /* __ISWbemMethodSet_INTERFACE_DEFINED__ */
6723 
6724 /*****************************************************************************
6725  * ISWbemSink interface
6726  */
6727 #ifndef __ISWbemSink_INTERFACE_DEFINED__
6728 #define __ISWbemSink_INTERFACE_DEFINED__
6729 
6730 DEFINE_GUID(IID_ISWbemSink, 0x75718c9f, 0xf029, 0x11d1, 0xa1,0xac, 0x00,0xc0,0x4f,0xb6,0xc2,0x23);
6731 #if defined(__cplusplus) && !defined(CINTERFACE)
6732 MIDL_INTERFACE("75718c9f-f029-11d1-a1ac-00c04fb6c223")
6733 ISWbemSink : public IDispatch
6734 {
6735     virtual HRESULT STDMETHODCALLTYPE Cancel(
6736         ) = 0;
6737 
6738 };
6739 #ifdef __CRT_UUID_DECL
6740 __CRT_UUID_DECL(ISWbemSink, 0x75718c9f, 0xf029, 0x11d1, 0xa1,0xac, 0x00,0xc0,0x4f,0xb6,0xc2,0x23)
6741 #endif
6742 #else
6743 typedef struct ISWbemSinkVtbl {
6744     BEGIN_INTERFACE
6745 
6746     /*** IUnknown methods ***/
6747     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6748         ISWbemSink* This,
6749         REFIID riid,
6750         void **ppvObject);
6751 
6752     ULONG (STDMETHODCALLTYPE *AddRef)(
6753         ISWbemSink* This);
6754 
6755     ULONG (STDMETHODCALLTYPE *Release)(
6756         ISWbemSink* This);
6757 
6758     /*** IDispatch methods ***/
6759     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
6760         ISWbemSink* This,
6761         UINT *pctinfo);
6762 
6763     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
6764         ISWbemSink* This,
6765         UINT iTInfo,
6766         LCID lcid,
6767         ITypeInfo **ppTInfo);
6768 
6769     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
6770         ISWbemSink* This,
6771         REFIID riid,
6772         LPOLESTR *rgszNames,
6773         UINT cNames,
6774         LCID lcid,
6775         DISPID *rgDispId);
6776 
6777     HRESULT (STDMETHODCALLTYPE *Invoke)(
6778         ISWbemSink* This,
6779         DISPID dispIdMember,
6780         REFIID riid,
6781         LCID lcid,
6782         WORD wFlags,
6783         DISPPARAMS *pDispParams,
6784         VARIANT *pVarResult,
6785         EXCEPINFO *pExcepInfo,
6786         UINT *puArgErr);
6787 
6788     /*** ISWbemSink methods ***/
6789     HRESULT (STDMETHODCALLTYPE *Cancel)(
6790         ISWbemSink* This);
6791 
6792     END_INTERFACE
6793 } ISWbemSinkVtbl;
6794 interface ISWbemSink {
6795     CONST_VTBL ISWbemSinkVtbl* lpVtbl;
6796 };
6797 
6798 #ifdef COBJMACROS
6799 #ifndef WIDL_C_INLINE_WRAPPERS
6800 /*** IUnknown methods ***/
6801 #define ISWbemSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6802 #define ISWbemSink_AddRef(This) (This)->lpVtbl->AddRef(This)
6803 #define ISWbemSink_Release(This) (This)->lpVtbl->Release(This)
6804 /*** IDispatch methods ***/
6805 #define ISWbemSink_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
6806 #define ISWbemSink_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
6807 #define ISWbemSink_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
6808 #define ISWbemSink_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
6809 /*** ISWbemSink methods ***/
6810 #define ISWbemSink_Cancel(This) (This)->lpVtbl->Cancel(This)
6811 #else
6812 /*** IUnknown methods ***/
6813 static FORCEINLINE HRESULT ISWbemSink_QueryInterface(ISWbemSink* This,REFIID riid,void **ppvObject) {
6814     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6815 }
6816 static FORCEINLINE ULONG ISWbemSink_AddRef(ISWbemSink* This) {
6817     return This->lpVtbl->AddRef(This);
6818 }
6819 static FORCEINLINE ULONG ISWbemSink_Release(ISWbemSink* This) {
6820     return This->lpVtbl->Release(This);
6821 }
6822 /*** IDispatch methods ***/
6823 static FORCEINLINE HRESULT ISWbemSink_GetTypeInfoCount(ISWbemSink* This,UINT *pctinfo) {
6824     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
6825 }
6826 static FORCEINLINE HRESULT ISWbemSink_GetTypeInfo(ISWbemSink* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
6827     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
6828 }
6829 static FORCEINLINE HRESULT ISWbemSink_GetIDsOfNames(ISWbemSink* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
6830     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
6831 }
6832 static FORCEINLINE HRESULT ISWbemSink_Invoke(ISWbemSink* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
6833     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
6834 }
6835 /*** ISWbemSink methods ***/
6836 static FORCEINLINE HRESULT ISWbemSink_Cancel(ISWbemSink* This) {
6837     return This->lpVtbl->Cancel(This);
6838 }
6839 #endif
6840 #endif
6841 
6842 #endif
6843 
6844 HRESULT STDMETHODCALLTYPE ISWbemSink_Cancel_Proxy(
6845     ISWbemSink* This);
6846 void __RPC_STUB ISWbemSink_Cancel_Stub(
6847     IRpcStubBuffer* This,
6848     IRpcChannelBuffer* pRpcChannelBuffer,
6849     PRPC_MESSAGE pRpcMessage,
6850     DWORD* pdwStubPhase);
6851 
6852 #endif  /* __ISWbemSink_INTERFACE_DEFINED__ */
6853 
6854 /*****************************************************************************
6855  * ISWbemSinkEvents dispinterface
6856  */
6857 #ifndef __ISWbemSinkEvents_DISPINTERFACE_DEFINED__
6858 #define __ISWbemSinkEvents_DISPINTERFACE_DEFINED__
6859 
6860 DEFINE_GUID(DIID_ISWbemSinkEvents, 0x75718ca0, 0xf029, 0x11d1, 0xa1,0xac, 0x00,0xc0,0x4f,0xb6,0xc2,0x23);
6861 #if defined(__cplusplus) && !defined(CINTERFACE)
6862 MIDL_INTERFACE("75718ca0-f029-11d1-a1ac-00c04fb6c223")
6863 ISWbemSinkEvents : public IDispatch
6864 {
6865 };
6866 #ifdef __CRT_UUID_DECL
6867 __CRT_UUID_DECL(ISWbemSinkEvents, 0x75718ca0, 0xf029, 0x11d1, 0xa1,0xac, 0x00,0xc0,0x4f,0xb6,0xc2,0x23)
6868 #endif
6869 #else
6870 typedef struct ISWbemSinkEventsVtbl {
6871     BEGIN_INTERFACE
6872 
6873     /*** IUnknown methods ***/
6874     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6875         ISWbemSinkEvents* This,
6876         REFIID riid,
6877         void **ppvObject);
6878 
6879     ULONG (STDMETHODCALLTYPE *AddRef)(
6880         ISWbemSinkEvents* This);
6881 
6882     ULONG (STDMETHODCALLTYPE *Release)(
6883         ISWbemSinkEvents* This);
6884 
6885     /*** IDispatch methods ***/
6886     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
6887         ISWbemSinkEvents* This,
6888         UINT *pctinfo);
6889 
6890     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
6891         ISWbemSinkEvents* This,
6892         UINT iTInfo,
6893         LCID lcid,
6894         ITypeInfo **ppTInfo);
6895 
6896     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
6897         ISWbemSinkEvents* This,
6898         REFIID riid,
6899         LPOLESTR *rgszNames,
6900         UINT cNames,
6901         LCID lcid,
6902         DISPID *rgDispId);
6903 
6904     HRESULT (STDMETHODCALLTYPE *Invoke)(
6905         ISWbemSinkEvents* This,
6906         DISPID dispIdMember,
6907         REFIID riid,
6908         LCID lcid,
6909         WORD wFlags,
6910         DISPPARAMS *pDispParams,
6911         VARIANT *pVarResult,
6912         EXCEPINFO *pExcepInfo,
6913         UINT *puArgErr);
6914 
6915     END_INTERFACE
6916 } ISWbemSinkEventsVtbl;
6917 interface ISWbemSinkEvents {
6918     CONST_VTBL ISWbemSinkEventsVtbl* lpVtbl;
6919 };
6920 
6921 #ifdef COBJMACROS
6922 #ifndef WIDL_C_INLINE_WRAPPERS
6923 /*** IUnknown methods ***/
6924 #define ISWbemSinkEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
6925 #define ISWbemSinkEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
6926 #define ISWbemSinkEvents_Release(This) (This)->lpVtbl->Release(This)
6927 /*** IDispatch methods ***/
6928 #define ISWbemSinkEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
6929 #define ISWbemSinkEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
6930 #define ISWbemSinkEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
6931 #define ISWbemSinkEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
6932 #else
6933 /*** IUnknown methods ***/
6934 static FORCEINLINE HRESULT ISWbemSinkEvents_QueryInterface(ISWbemSinkEvents* This,REFIID riid,void **ppvObject) {
6935     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
6936 }
6937 static FORCEINLINE ULONG ISWbemSinkEvents_AddRef(ISWbemSinkEvents* This) {
6938     return This->lpVtbl->AddRef(This);
6939 }
6940 static FORCEINLINE ULONG ISWbemSinkEvents_Release(ISWbemSinkEvents* This) {
6941     return This->lpVtbl->Release(This);
6942 }
6943 /*** IDispatch methods ***/
6944 static FORCEINLINE HRESULT ISWbemSinkEvents_GetTypeInfoCount(ISWbemSinkEvents* This,UINT *pctinfo) {
6945     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
6946 }
6947 static FORCEINLINE HRESULT ISWbemSinkEvents_GetTypeInfo(ISWbemSinkEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
6948     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
6949 }
6950 static FORCEINLINE HRESULT ISWbemSinkEvents_GetIDsOfNames(ISWbemSinkEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
6951     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
6952 }
6953 static FORCEINLINE HRESULT ISWbemSinkEvents_Invoke(ISWbemSinkEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
6954     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
6955 }
6956 #endif
6957 #endif
6958 
6959 #endif
6960 
6961 #endif  /* __ISWbemSinkEvents_DISPINTERFACE_DEFINED__ */
6962 
6963 /*****************************************************************************
6964  * ISWbemEventSource interface
6965  */
6966 #ifndef __ISWbemEventSource_INTERFACE_DEFINED__
6967 #define __ISWbemEventSource_INTERFACE_DEFINED__
6968 
6969 DEFINE_GUID(IID_ISWbemEventSource, 0x27d54d92, 0x0ebe, 0x11d2, 0x8b,0x22, 0x00,0x60,0x08,0x06,0xd9,0xb6);
6970 #if defined(__cplusplus) && !defined(CINTERFACE)
6971 MIDL_INTERFACE("27d54d92-0ebe-11d2-8b22-00600806d9b6")
6972 ISWbemEventSource : public IDispatch
6973 {
6974     virtual HRESULT STDMETHODCALLTYPE NextEvent(
6975         LONG iTimeoutMs = wbemTimeoutInfinite,
6976         ISWbemObject **objWbemObject = 0) = 0;
6977 
6978     virtual HRESULT STDMETHODCALLTYPE get_Security_(
6979         ISWbemSecurity **objWbemSecurity) = 0;
6980 
6981 };
6982 #ifdef __CRT_UUID_DECL
6983 __CRT_UUID_DECL(ISWbemEventSource, 0x27d54d92, 0x0ebe, 0x11d2, 0x8b,0x22, 0x00,0x60,0x08,0x06,0xd9,0xb6)
6984 #endif
6985 #else
6986 typedef struct ISWbemEventSourceVtbl {
6987     BEGIN_INTERFACE
6988 
6989     /*** IUnknown methods ***/
6990     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
6991         ISWbemEventSource* This,
6992         REFIID riid,
6993         void **ppvObject);
6994 
6995     ULONG (STDMETHODCALLTYPE *AddRef)(
6996         ISWbemEventSource* This);
6997 
6998     ULONG (STDMETHODCALLTYPE *Release)(
6999         ISWbemEventSource* This);
7000 
7001     /*** IDispatch methods ***/
7002     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
7003         ISWbemEventSource* This,
7004         UINT *pctinfo);
7005 
7006     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
7007         ISWbemEventSource* This,
7008         UINT iTInfo,
7009         LCID lcid,
7010         ITypeInfo **ppTInfo);
7011 
7012     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
7013         ISWbemEventSource* This,
7014         REFIID riid,
7015         LPOLESTR *rgszNames,
7016         UINT cNames,
7017         LCID lcid,
7018         DISPID *rgDispId);
7019 
7020     HRESULT (STDMETHODCALLTYPE *Invoke)(
7021         ISWbemEventSource* This,
7022         DISPID dispIdMember,
7023         REFIID riid,
7024         LCID lcid,
7025         WORD wFlags,
7026         DISPPARAMS *pDispParams,
7027         VARIANT *pVarResult,
7028         EXCEPINFO *pExcepInfo,
7029         UINT *puArgErr);
7030 
7031     /*** ISWbemEventSource methods ***/
7032     HRESULT (STDMETHODCALLTYPE *NextEvent)(
7033         ISWbemEventSource* This,
7034         LONG iTimeoutMs,
7035         ISWbemObject **objWbemObject);
7036 
7037     HRESULT (STDMETHODCALLTYPE *get_Security_)(
7038         ISWbemEventSource* This,
7039         ISWbemSecurity **objWbemSecurity);
7040 
7041     END_INTERFACE
7042 } ISWbemEventSourceVtbl;
7043 interface ISWbemEventSource {
7044     CONST_VTBL ISWbemEventSourceVtbl* lpVtbl;
7045 };
7046 
7047 #ifdef COBJMACROS
7048 #ifndef WIDL_C_INLINE_WRAPPERS
7049 /*** IUnknown methods ***/
7050 #define ISWbemEventSource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7051 #define ISWbemEventSource_AddRef(This) (This)->lpVtbl->AddRef(This)
7052 #define ISWbemEventSource_Release(This) (This)->lpVtbl->Release(This)
7053 /*** IDispatch methods ***/
7054 #define ISWbemEventSource_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
7055 #define ISWbemEventSource_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
7056 #define ISWbemEventSource_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
7057 #define ISWbemEventSource_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
7058 /*** ISWbemEventSource methods ***/
7059 #define ISWbemEventSource_NextEvent(This,iTimeoutMs,objWbemObject) (This)->lpVtbl->NextEvent(This,iTimeoutMs,objWbemObject)
7060 #define ISWbemEventSource_get_Security_(This,objWbemSecurity) (This)->lpVtbl->get_Security_(This,objWbemSecurity)
7061 #else
7062 /*** IUnknown methods ***/
7063 static FORCEINLINE HRESULT ISWbemEventSource_QueryInterface(ISWbemEventSource* This,REFIID riid,void **ppvObject) {
7064     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7065 }
7066 static FORCEINLINE ULONG ISWbemEventSource_AddRef(ISWbemEventSource* This) {
7067     return This->lpVtbl->AddRef(This);
7068 }
7069 static FORCEINLINE ULONG ISWbemEventSource_Release(ISWbemEventSource* This) {
7070     return This->lpVtbl->Release(This);
7071 }
7072 /*** IDispatch methods ***/
7073 static FORCEINLINE HRESULT ISWbemEventSource_GetTypeInfoCount(ISWbemEventSource* This,UINT *pctinfo) {
7074     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
7075 }
7076 static FORCEINLINE HRESULT ISWbemEventSource_GetTypeInfo(ISWbemEventSource* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
7077     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
7078 }
7079 static FORCEINLINE HRESULT ISWbemEventSource_GetIDsOfNames(ISWbemEventSource* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
7080     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
7081 }
7082 static FORCEINLINE HRESULT ISWbemEventSource_Invoke(ISWbemEventSource* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
7083     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
7084 }
7085 /*** ISWbemEventSource methods ***/
7086 static FORCEINLINE HRESULT ISWbemEventSource_NextEvent(ISWbemEventSource* This,LONG iTimeoutMs,ISWbemObject **objWbemObject) {
7087     return This->lpVtbl->NextEvent(This,iTimeoutMs,objWbemObject);
7088 }
7089 static FORCEINLINE HRESULT ISWbemEventSource_get_Security_(ISWbemEventSource* This,ISWbemSecurity **objWbemSecurity) {
7090     return This->lpVtbl->get_Security_(This,objWbemSecurity);
7091 }
7092 #endif
7093 #endif
7094 
7095 #endif
7096 
7097 HRESULT STDMETHODCALLTYPE ISWbemEventSource_NextEvent_Proxy(
7098     ISWbemEventSource* This,
7099     LONG iTimeoutMs,
7100     ISWbemObject **objWbemObject);
7101 void __RPC_STUB ISWbemEventSource_NextEvent_Stub(
7102     IRpcStubBuffer* This,
7103     IRpcChannelBuffer* pRpcChannelBuffer,
7104     PRPC_MESSAGE pRpcMessage,
7105     DWORD* pdwStubPhase);
7106 HRESULT STDMETHODCALLTYPE ISWbemEventSource_get_Security__Proxy(
7107     ISWbemEventSource* This,
7108     ISWbemSecurity **objWbemSecurity);
7109 void __RPC_STUB ISWbemEventSource_get_Security__Stub(
7110     IRpcStubBuffer* This,
7111     IRpcChannelBuffer* pRpcChannelBuffer,
7112     PRPC_MESSAGE pRpcMessage,
7113     DWORD* pdwStubPhase);
7114 
7115 #endif  /* __ISWbemEventSource_INTERFACE_DEFINED__ */
7116 
7117 /*****************************************************************************
7118  * ISWbemSecurity interface
7119  */
7120 #ifndef __ISWbemSecurity_INTERFACE_DEFINED__
7121 #define __ISWbemSecurity_INTERFACE_DEFINED__
7122 
7123 DEFINE_GUID(IID_ISWbemSecurity, 0xb54d66e6, 0x2287, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6);
7124 #if defined(__cplusplus) && !defined(CINTERFACE)
7125 MIDL_INTERFACE("b54d66e6-2287-11d2-8b33-00600806d9b6")
7126 ISWbemSecurity : public IDispatch
7127 {
7128     virtual HRESULT STDMETHODCALLTYPE get_ImpersonationLevel(
7129         WbemImpersonationLevelEnum *iImpersonationLevel) = 0;
7130 
7131     virtual HRESULT STDMETHODCALLTYPE put_ImpersonationLevel(
7132         WbemImpersonationLevelEnum iImpersonationLevel) = 0;
7133 
7134     virtual HRESULT STDMETHODCALLTYPE get_AuthenticationLevel(
7135         WbemAuthenticationLevelEnum *iAuthenticationLevel) = 0;
7136 
7137     virtual HRESULT STDMETHODCALLTYPE put_AuthenticationLevel(
7138         WbemAuthenticationLevelEnum iAuthenticationLevel) = 0;
7139 
7140     virtual HRESULT STDMETHODCALLTYPE get_Privileges(
7141         ISWbemPrivilegeSet **objWbemPrivilegeSet) = 0;
7142 
7143 };
7144 #ifdef __CRT_UUID_DECL
7145 __CRT_UUID_DECL(ISWbemSecurity, 0xb54d66e6, 0x2287, 0x11d2, 0x8b,0x33, 0x00,0x60,0x08,0x06,0xd9,0xb6)
7146 #endif
7147 #else
7148 typedef struct ISWbemSecurityVtbl {
7149     BEGIN_INTERFACE
7150 
7151     /*** IUnknown methods ***/
7152     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7153         ISWbemSecurity* This,
7154         REFIID riid,
7155         void **ppvObject);
7156 
7157     ULONG (STDMETHODCALLTYPE *AddRef)(
7158         ISWbemSecurity* This);
7159 
7160     ULONG (STDMETHODCALLTYPE *Release)(
7161         ISWbemSecurity* This);
7162 
7163     /*** IDispatch methods ***/
7164     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
7165         ISWbemSecurity* This,
7166         UINT *pctinfo);
7167 
7168     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
7169         ISWbemSecurity* This,
7170         UINT iTInfo,
7171         LCID lcid,
7172         ITypeInfo **ppTInfo);
7173 
7174     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
7175         ISWbemSecurity* This,
7176         REFIID riid,
7177         LPOLESTR *rgszNames,
7178         UINT cNames,
7179         LCID lcid,
7180         DISPID *rgDispId);
7181 
7182     HRESULT (STDMETHODCALLTYPE *Invoke)(
7183         ISWbemSecurity* This,
7184         DISPID dispIdMember,
7185         REFIID riid,
7186         LCID lcid,
7187         WORD wFlags,
7188         DISPPARAMS *pDispParams,
7189         VARIANT *pVarResult,
7190         EXCEPINFO *pExcepInfo,
7191         UINT *puArgErr);
7192 
7193     /*** ISWbemSecurity methods ***/
7194     HRESULT (STDMETHODCALLTYPE *get_ImpersonationLevel)(
7195         ISWbemSecurity* This,
7196         WbemImpersonationLevelEnum *iImpersonationLevel);
7197 
7198     HRESULT (STDMETHODCALLTYPE *put_ImpersonationLevel)(
7199         ISWbemSecurity* This,
7200         WbemImpersonationLevelEnum iImpersonationLevel);
7201 
7202     HRESULT (STDMETHODCALLTYPE *get_AuthenticationLevel)(
7203         ISWbemSecurity* This,
7204         WbemAuthenticationLevelEnum *iAuthenticationLevel);
7205 
7206     HRESULT (STDMETHODCALLTYPE *put_AuthenticationLevel)(
7207         ISWbemSecurity* This,
7208         WbemAuthenticationLevelEnum iAuthenticationLevel);
7209 
7210     HRESULT (STDMETHODCALLTYPE *get_Privileges)(
7211         ISWbemSecurity* This,
7212         ISWbemPrivilegeSet **objWbemPrivilegeSet);
7213 
7214     END_INTERFACE
7215 } ISWbemSecurityVtbl;
7216 interface ISWbemSecurity {
7217     CONST_VTBL ISWbemSecurityVtbl* lpVtbl;
7218 };
7219 
7220 #ifdef COBJMACROS
7221 #ifndef WIDL_C_INLINE_WRAPPERS
7222 /*** IUnknown methods ***/
7223 #define ISWbemSecurity_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7224 #define ISWbemSecurity_AddRef(This) (This)->lpVtbl->AddRef(This)
7225 #define ISWbemSecurity_Release(This) (This)->lpVtbl->Release(This)
7226 /*** IDispatch methods ***/
7227 #define ISWbemSecurity_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
7228 #define ISWbemSecurity_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
7229 #define ISWbemSecurity_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
7230 #define ISWbemSecurity_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
7231 /*** ISWbemSecurity methods ***/
7232 #define ISWbemSecurity_get_ImpersonationLevel(This,iImpersonationLevel) (This)->lpVtbl->get_ImpersonationLevel(This,iImpersonationLevel)
7233 #define ISWbemSecurity_put_ImpersonationLevel(This,iImpersonationLevel) (This)->lpVtbl->put_ImpersonationLevel(This,iImpersonationLevel)
7234 #define ISWbemSecurity_get_AuthenticationLevel(This,iAuthenticationLevel) (This)->lpVtbl->get_AuthenticationLevel(This,iAuthenticationLevel)
7235 #define ISWbemSecurity_put_AuthenticationLevel(This,iAuthenticationLevel) (This)->lpVtbl->put_AuthenticationLevel(This,iAuthenticationLevel)
7236 #define ISWbemSecurity_get_Privileges(This,objWbemPrivilegeSet) (This)->lpVtbl->get_Privileges(This,objWbemPrivilegeSet)
7237 #else
7238 /*** IUnknown methods ***/
7239 static FORCEINLINE HRESULT ISWbemSecurity_QueryInterface(ISWbemSecurity* This,REFIID riid,void **ppvObject) {
7240     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7241 }
7242 static FORCEINLINE ULONG ISWbemSecurity_AddRef(ISWbemSecurity* This) {
7243     return This->lpVtbl->AddRef(This);
7244 }
7245 static FORCEINLINE ULONG ISWbemSecurity_Release(ISWbemSecurity* This) {
7246     return This->lpVtbl->Release(This);
7247 }
7248 /*** IDispatch methods ***/
7249 static FORCEINLINE HRESULT ISWbemSecurity_GetTypeInfoCount(ISWbemSecurity* This,UINT *pctinfo) {
7250     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
7251 }
7252 static FORCEINLINE HRESULT ISWbemSecurity_GetTypeInfo(ISWbemSecurity* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
7253     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
7254 }
7255 static FORCEINLINE HRESULT ISWbemSecurity_GetIDsOfNames(ISWbemSecurity* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
7256     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
7257 }
7258 static FORCEINLINE HRESULT ISWbemSecurity_Invoke(ISWbemSecurity* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
7259     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
7260 }
7261 /*** ISWbemSecurity methods ***/
7262 static FORCEINLINE HRESULT ISWbemSecurity_get_ImpersonationLevel(ISWbemSecurity* This,WbemImpersonationLevelEnum *iImpersonationLevel) {
7263     return This->lpVtbl->get_ImpersonationLevel(This,iImpersonationLevel);
7264 }
7265 static FORCEINLINE HRESULT ISWbemSecurity_put_ImpersonationLevel(ISWbemSecurity* This,WbemImpersonationLevelEnum iImpersonationLevel) {
7266     return This->lpVtbl->put_ImpersonationLevel(This,iImpersonationLevel);
7267 }
7268 static FORCEINLINE HRESULT ISWbemSecurity_get_AuthenticationLevel(ISWbemSecurity* This,WbemAuthenticationLevelEnum *iAuthenticationLevel) {
7269     return This->lpVtbl->get_AuthenticationLevel(This,iAuthenticationLevel);
7270 }
7271 static FORCEINLINE HRESULT ISWbemSecurity_put_AuthenticationLevel(ISWbemSecurity* This,WbemAuthenticationLevelEnum iAuthenticationLevel) {
7272     return This->lpVtbl->put_AuthenticationLevel(This,iAuthenticationLevel);
7273 }
7274 static FORCEINLINE HRESULT ISWbemSecurity_get_Privileges(ISWbemSecurity* This,ISWbemPrivilegeSet **objWbemPrivilegeSet) {
7275     return This->lpVtbl->get_Privileges(This,objWbemPrivilegeSet);
7276 }
7277 #endif
7278 #endif
7279 
7280 #endif
7281 
7282 HRESULT STDMETHODCALLTYPE ISWbemSecurity_get_ImpersonationLevel_Proxy(
7283     ISWbemSecurity* This,
7284     WbemImpersonationLevelEnum *iImpersonationLevel);
7285 void __RPC_STUB ISWbemSecurity_get_ImpersonationLevel_Stub(
7286     IRpcStubBuffer* This,
7287     IRpcChannelBuffer* pRpcChannelBuffer,
7288     PRPC_MESSAGE pRpcMessage,
7289     DWORD* pdwStubPhase);
7290 HRESULT STDMETHODCALLTYPE ISWbemSecurity_put_ImpersonationLevel_Proxy(
7291     ISWbemSecurity* This,
7292     WbemImpersonationLevelEnum iImpersonationLevel);
7293 void __RPC_STUB ISWbemSecurity_put_ImpersonationLevel_Stub(
7294     IRpcStubBuffer* This,
7295     IRpcChannelBuffer* pRpcChannelBuffer,
7296     PRPC_MESSAGE pRpcMessage,
7297     DWORD* pdwStubPhase);
7298 HRESULT STDMETHODCALLTYPE ISWbemSecurity_get_AuthenticationLevel_Proxy(
7299     ISWbemSecurity* This,
7300     WbemAuthenticationLevelEnum *iAuthenticationLevel);
7301 void __RPC_STUB ISWbemSecurity_get_AuthenticationLevel_Stub(
7302     IRpcStubBuffer* This,
7303     IRpcChannelBuffer* pRpcChannelBuffer,
7304     PRPC_MESSAGE pRpcMessage,
7305     DWORD* pdwStubPhase);
7306 HRESULT STDMETHODCALLTYPE ISWbemSecurity_put_AuthenticationLevel_Proxy(
7307     ISWbemSecurity* This,
7308     WbemAuthenticationLevelEnum iAuthenticationLevel);
7309 void __RPC_STUB ISWbemSecurity_put_AuthenticationLevel_Stub(
7310     IRpcStubBuffer* This,
7311     IRpcChannelBuffer* pRpcChannelBuffer,
7312     PRPC_MESSAGE pRpcMessage,
7313     DWORD* pdwStubPhase);
7314 HRESULT STDMETHODCALLTYPE ISWbemSecurity_get_Privileges_Proxy(
7315     ISWbemSecurity* This,
7316     ISWbemPrivilegeSet **objWbemPrivilegeSet);
7317 void __RPC_STUB ISWbemSecurity_get_Privileges_Stub(
7318     IRpcStubBuffer* This,
7319     IRpcChannelBuffer* pRpcChannelBuffer,
7320     PRPC_MESSAGE pRpcMessage,
7321     DWORD* pdwStubPhase);
7322 
7323 #endif  /* __ISWbemSecurity_INTERFACE_DEFINED__ */
7324 
7325 /*****************************************************************************
7326  * ISWbemPrivilege interface
7327  */
7328 #ifndef __ISWbemPrivilege_INTERFACE_DEFINED__
7329 #define __ISWbemPrivilege_INTERFACE_DEFINED__
7330 
7331 DEFINE_GUID(IID_ISWbemPrivilege, 0x26ee67bd, 0x5804, 0x11d2, 0x8b,0x4a, 0x00,0x60,0x08,0x06,0xd9,0xb6);
7332 #if defined(__cplusplus) && !defined(CINTERFACE)
7333 MIDL_INTERFACE("26ee67bd-5804-11d2-8b4a-00600806d9b6")
7334 ISWbemPrivilege : public IDispatch
7335 {
7336     virtual HRESULT STDMETHODCALLTYPE get_IsEnabled(
7337         VARIANT_BOOL *bIsEnabled) = 0;
7338 
7339     virtual HRESULT STDMETHODCALLTYPE put_IsEnabled(
7340         VARIANT_BOOL bIsEnabled) = 0;
7341 
7342     virtual HRESULT STDMETHODCALLTYPE get_Name(
7343         BSTR *strDisplayName) = 0;
7344 
7345     virtual HRESULT STDMETHODCALLTYPE get_DisplayName(
7346         BSTR *strDisplayName) = 0;
7347 
7348     virtual HRESULT STDMETHODCALLTYPE get_Identifier(
7349         WbemPrivilegeEnum *iPrivilege) = 0;
7350 
7351 };
7352 #ifdef __CRT_UUID_DECL
7353 __CRT_UUID_DECL(ISWbemPrivilege, 0x26ee67bd, 0x5804, 0x11d2, 0x8b,0x4a, 0x00,0x60,0x08,0x06,0xd9,0xb6)
7354 #endif
7355 #else
7356 typedef struct ISWbemPrivilegeVtbl {
7357     BEGIN_INTERFACE
7358 
7359     /*** IUnknown methods ***/
7360     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7361         ISWbemPrivilege* This,
7362         REFIID riid,
7363         void **ppvObject);
7364 
7365     ULONG (STDMETHODCALLTYPE *AddRef)(
7366         ISWbemPrivilege* This);
7367 
7368     ULONG (STDMETHODCALLTYPE *Release)(
7369         ISWbemPrivilege* This);
7370 
7371     /*** IDispatch methods ***/
7372     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
7373         ISWbemPrivilege* This,
7374         UINT *pctinfo);
7375 
7376     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
7377         ISWbemPrivilege* This,
7378         UINT iTInfo,
7379         LCID lcid,
7380         ITypeInfo **ppTInfo);
7381 
7382     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
7383         ISWbemPrivilege* This,
7384         REFIID riid,
7385         LPOLESTR *rgszNames,
7386         UINT cNames,
7387         LCID lcid,
7388         DISPID *rgDispId);
7389 
7390     HRESULT (STDMETHODCALLTYPE *Invoke)(
7391         ISWbemPrivilege* This,
7392         DISPID dispIdMember,
7393         REFIID riid,
7394         LCID lcid,
7395         WORD wFlags,
7396         DISPPARAMS *pDispParams,
7397         VARIANT *pVarResult,
7398         EXCEPINFO *pExcepInfo,
7399         UINT *puArgErr);
7400 
7401     /*** ISWbemPrivilege methods ***/
7402     HRESULT (STDMETHODCALLTYPE *get_IsEnabled)(
7403         ISWbemPrivilege* This,
7404         VARIANT_BOOL *bIsEnabled);
7405 
7406     HRESULT (STDMETHODCALLTYPE *put_IsEnabled)(
7407         ISWbemPrivilege* This,
7408         VARIANT_BOOL bIsEnabled);
7409 
7410     HRESULT (STDMETHODCALLTYPE *get_Name)(
7411         ISWbemPrivilege* This,
7412         BSTR *strDisplayName);
7413 
7414     HRESULT (STDMETHODCALLTYPE *get_DisplayName)(
7415         ISWbemPrivilege* This,
7416         BSTR *strDisplayName);
7417 
7418     HRESULT (STDMETHODCALLTYPE *get_Identifier)(
7419         ISWbemPrivilege* This,
7420         WbemPrivilegeEnum *iPrivilege);
7421 
7422     END_INTERFACE
7423 } ISWbemPrivilegeVtbl;
7424 interface ISWbemPrivilege {
7425     CONST_VTBL ISWbemPrivilegeVtbl* lpVtbl;
7426 };
7427 
7428 #ifdef COBJMACROS
7429 #ifndef WIDL_C_INLINE_WRAPPERS
7430 /*** IUnknown methods ***/
7431 #define ISWbemPrivilege_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7432 #define ISWbemPrivilege_AddRef(This) (This)->lpVtbl->AddRef(This)
7433 #define ISWbemPrivilege_Release(This) (This)->lpVtbl->Release(This)
7434 /*** IDispatch methods ***/
7435 #define ISWbemPrivilege_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
7436 #define ISWbemPrivilege_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
7437 #define ISWbemPrivilege_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
7438 #define ISWbemPrivilege_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
7439 /*** ISWbemPrivilege methods ***/
7440 #define ISWbemPrivilege_get_IsEnabled(This,bIsEnabled) (This)->lpVtbl->get_IsEnabled(This,bIsEnabled)
7441 #define ISWbemPrivilege_put_IsEnabled(This,bIsEnabled) (This)->lpVtbl->put_IsEnabled(This,bIsEnabled)
7442 #define ISWbemPrivilege_get_Name(This,strDisplayName) (This)->lpVtbl->get_Name(This,strDisplayName)
7443 #define ISWbemPrivilege_get_DisplayName(This,strDisplayName) (This)->lpVtbl->get_DisplayName(This,strDisplayName)
7444 #define ISWbemPrivilege_get_Identifier(This,iPrivilege) (This)->lpVtbl->get_Identifier(This,iPrivilege)
7445 #else
7446 /*** IUnknown methods ***/
7447 static FORCEINLINE HRESULT ISWbemPrivilege_QueryInterface(ISWbemPrivilege* This,REFIID riid,void **ppvObject) {
7448     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7449 }
7450 static FORCEINLINE ULONG ISWbemPrivilege_AddRef(ISWbemPrivilege* This) {
7451     return This->lpVtbl->AddRef(This);
7452 }
7453 static FORCEINLINE ULONG ISWbemPrivilege_Release(ISWbemPrivilege* This) {
7454     return This->lpVtbl->Release(This);
7455 }
7456 /*** IDispatch methods ***/
7457 static FORCEINLINE HRESULT ISWbemPrivilege_GetTypeInfoCount(ISWbemPrivilege* This,UINT *pctinfo) {
7458     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
7459 }
7460 static FORCEINLINE HRESULT ISWbemPrivilege_GetTypeInfo(ISWbemPrivilege* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
7461     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
7462 }
7463 static FORCEINLINE HRESULT ISWbemPrivilege_GetIDsOfNames(ISWbemPrivilege* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
7464     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
7465 }
7466 static FORCEINLINE HRESULT ISWbemPrivilege_Invoke(ISWbemPrivilege* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
7467     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
7468 }
7469 /*** ISWbemPrivilege methods ***/
7470 static FORCEINLINE HRESULT ISWbemPrivilege_get_IsEnabled(ISWbemPrivilege* This,VARIANT_BOOL *bIsEnabled) {
7471     return This->lpVtbl->get_IsEnabled(This,bIsEnabled);
7472 }
7473 static FORCEINLINE HRESULT ISWbemPrivilege_put_IsEnabled(ISWbemPrivilege* This,VARIANT_BOOL bIsEnabled) {
7474     return This->lpVtbl->put_IsEnabled(This,bIsEnabled);
7475 }
7476 static FORCEINLINE HRESULT ISWbemPrivilege_get_Name(ISWbemPrivilege* This,BSTR *strDisplayName) {
7477     return This->lpVtbl->get_Name(This,strDisplayName);
7478 }
7479 static FORCEINLINE HRESULT ISWbemPrivilege_get_DisplayName(ISWbemPrivilege* This,BSTR *strDisplayName) {
7480     return This->lpVtbl->get_DisplayName(This,strDisplayName);
7481 }
7482 static FORCEINLINE HRESULT ISWbemPrivilege_get_Identifier(ISWbemPrivilege* This,WbemPrivilegeEnum *iPrivilege) {
7483     return This->lpVtbl->get_Identifier(This,iPrivilege);
7484 }
7485 #endif
7486 #endif
7487 
7488 #endif
7489 
7490 HRESULT STDMETHODCALLTYPE ISWbemPrivilege_get_IsEnabled_Proxy(
7491     ISWbemPrivilege* This,
7492     VARIANT_BOOL *bIsEnabled);
7493 void __RPC_STUB ISWbemPrivilege_get_IsEnabled_Stub(
7494     IRpcStubBuffer* This,
7495     IRpcChannelBuffer* pRpcChannelBuffer,
7496     PRPC_MESSAGE pRpcMessage,
7497     DWORD* pdwStubPhase);
7498 HRESULT STDMETHODCALLTYPE ISWbemPrivilege_put_IsEnabled_Proxy(
7499     ISWbemPrivilege* This,
7500     VARIANT_BOOL bIsEnabled);
7501 void __RPC_STUB ISWbemPrivilege_put_IsEnabled_Stub(
7502     IRpcStubBuffer* This,
7503     IRpcChannelBuffer* pRpcChannelBuffer,
7504     PRPC_MESSAGE pRpcMessage,
7505     DWORD* pdwStubPhase);
7506 HRESULT STDMETHODCALLTYPE ISWbemPrivilege_get_Name_Proxy(
7507     ISWbemPrivilege* This,
7508     BSTR *strDisplayName);
7509 void __RPC_STUB ISWbemPrivilege_get_Name_Stub(
7510     IRpcStubBuffer* This,
7511     IRpcChannelBuffer* pRpcChannelBuffer,
7512     PRPC_MESSAGE pRpcMessage,
7513     DWORD* pdwStubPhase);
7514 HRESULT STDMETHODCALLTYPE ISWbemPrivilege_get_DisplayName_Proxy(
7515     ISWbemPrivilege* This,
7516     BSTR *strDisplayName);
7517 void __RPC_STUB ISWbemPrivilege_get_DisplayName_Stub(
7518     IRpcStubBuffer* This,
7519     IRpcChannelBuffer* pRpcChannelBuffer,
7520     PRPC_MESSAGE pRpcMessage,
7521     DWORD* pdwStubPhase);
7522 HRESULT STDMETHODCALLTYPE ISWbemPrivilege_get_Identifier_Proxy(
7523     ISWbemPrivilege* This,
7524     WbemPrivilegeEnum *iPrivilege);
7525 void __RPC_STUB ISWbemPrivilege_get_Identifier_Stub(
7526     IRpcStubBuffer* This,
7527     IRpcChannelBuffer* pRpcChannelBuffer,
7528     PRPC_MESSAGE pRpcMessage,
7529     DWORD* pdwStubPhase);
7530 
7531 #endif  /* __ISWbemPrivilege_INTERFACE_DEFINED__ */
7532 
7533 /*****************************************************************************
7534  * ISWbemPrivilegeSet interface
7535  */
7536 #ifndef __ISWbemPrivilegeSet_INTERFACE_DEFINED__
7537 #define __ISWbemPrivilegeSet_INTERFACE_DEFINED__
7538 
7539 DEFINE_GUID(IID_ISWbemPrivilegeSet, 0x26ee67bf, 0x5804, 0x11d2, 0x8b,0x4a, 0x00,0x60,0x08,0x06,0xd9,0xb6);
7540 #if defined(__cplusplus) && !defined(CINTERFACE)
7541 MIDL_INTERFACE("26ee67bf-5804-11d2-8b4a-00600806d9b6")
7542 ISWbemPrivilegeSet : public IDispatch
7543 {
7544     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
7545         IUnknown **pUnk) = 0;
7546 
7547     virtual HRESULT STDMETHODCALLTYPE Item(
7548         WbemPrivilegeEnum iPrivilege,
7549         ISWbemPrivilege **objWbemPrivilege) = 0;
7550 
7551     virtual HRESULT STDMETHODCALLTYPE get_Count(
7552         LONG *iCount) = 0;
7553 
7554     virtual HRESULT STDMETHODCALLTYPE Add(
7555         WbemPrivilegeEnum iPrivilege,
7556         VARIANT_BOOL bIsEnabled = TRUE,
7557         ISWbemPrivilege **objWbemPrivilege = 0) = 0;
7558 
7559     virtual HRESULT STDMETHODCALLTYPE Remove(
7560         WbemPrivilegeEnum iPrivilege) = 0;
7561 
7562     virtual HRESULT STDMETHODCALLTYPE DeleteAll(
7563         ) = 0;
7564 
7565     virtual HRESULT STDMETHODCALLTYPE AddAsString(
7566         BSTR strPrivilege,
7567         VARIANT_BOOL bIsEnabled = TRUE,
7568         ISWbemPrivilege **objWbemPrivilege = 0) = 0;
7569 
7570 };
7571 #ifdef __CRT_UUID_DECL
7572 __CRT_UUID_DECL(ISWbemPrivilegeSet, 0x26ee67bf, 0x5804, 0x11d2, 0x8b,0x4a, 0x00,0x60,0x08,0x06,0xd9,0xb6)
7573 #endif
7574 #else
7575 typedef struct ISWbemPrivilegeSetVtbl {
7576     BEGIN_INTERFACE
7577 
7578     /*** IUnknown methods ***/
7579     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7580         ISWbemPrivilegeSet* This,
7581         REFIID riid,
7582         void **ppvObject);
7583 
7584     ULONG (STDMETHODCALLTYPE *AddRef)(
7585         ISWbemPrivilegeSet* This);
7586 
7587     ULONG (STDMETHODCALLTYPE *Release)(
7588         ISWbemPrivilegeSet* This);
7589 
7590     /*** IDispatch methods ***/
7591     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
7592         ISWbemPrivilegeSet* This,
7593         UINT *pctinfo);
7594 
7595     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
7596         ISWbemPrivilegeSet* This,
7597         UINT iTInfo,
7598         LCID lcid,
7599         ITypeInfo **ppTInfo);
7600 
7601     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
7602         ISWbemPrivilegeSet* This,
7603         REFIID riid,
7604         LPOLESTR *rgszNames,
7605         UINT cNames,
7606         LCID lcid,
7607         DISPID *rgDispId);
7608 
7609     HRESULT (STDMETHODCALLTYPE *Invoke)(
7610         ISWbemPrivilegeSet* This,
7611         DISPID dispIdMember,
7612         REFIID riid,
7613         LCID lcid,
7614         WORD wFlags,
7615         DISPPARAMS *pDispParams,
7616         VARIANT *pVarResult,
7617         EXCEPINFO *pExcepInfo,
7618         UINT *puArgErr);
7619 
7620     /*** ISWbemPrivilegeSet methods ***/
7621     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
7622         ISWbemPrivilegeSet* This,
7623         IUnknown **pUnk);
7624 
7625     HRESULT (STDMETHODCALLTYPE *Item)(
7626         ISWbemPrivilegeSet* This,
7627         WbemPrivilegeEnum iPrivilege,
7628         ISWbemPrivilege **objWbemPrivilege);
7629 
7630     HRESULT (STDMETHODCALLTYPE *get_Count)(
7631         ISWbemPrivilegeSet* This,
7632         LONG *iCount);
7633 
7634     HRESULT (STDMETHODCALLTYPE *Add)(
7635         ISWbemPrivilegeSet* This,
7636         WbemPrivilegeEnum iPrivilege,
7637         VARIANT_BOOL bIsEnabled,
7638         ISWbemPrivilege **objWbemPrivilege);
7639 
7640     HRESULT (STDMETHODCALLTYPE *Remove)(
7641         ISWbemPrivilegeSet* This,
7642         WbemPrivilegeEnum iPrivilege);
7643 
7644     HRESULT (STDMETHODCALLTYPE *DeleteAll)(
7645         ISWbemPrivilegeSet* This);
7646 
7647     HRESULT (STDMETHODCALLTYPE *AddAsString)(
7648         ISWbemPrivilegeSet* This,
7649         BSTR strPrivilege,
7650         VARIANT_BOOL bIsEnabled,
7651         ISWbemPrivilege **objWbemPrivilege);
7652 
7653     END_INTERFACE
7654 } ISWbemPrivilegeSetVtbl;
7655 interface ISWbemPrivilegeSet {
7656     CONST_VTBL ISWbemPrivilegeSetVtbl* lpVtbl;
7657 };
7658 
7659 #ifdef COBJMACROS
7660 #ifndef WIDL_C_INLINE_WRAPPERS
7661 /*** IUnknown methods ***/
7662 #define ISWbemPrivilegeSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
7663 #define ISWbemPrivilegeSet_AddRef(This) (This)->lpVtbl->AddRef(This)
7664 #define ISWbemPrivilegeSet_Release(This) (This)->lpVtbl->Release(This)
7665 /*** IDispatch methods ***/
7666 #define ISWbemPrivilegeSet_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
7667 #define ISWbemPrivilegeSet_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
7668 #define ISWbemPrivilegeSet_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
7669 #define ISWbemPrivilegeSet_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
7670 /*** ISWbemPrivilegeSet methods ***/
7671 #define ISWbemPrivilegeSet_get__NewEnum(This,pUnk) (This)->lpVtbl->get__NewEnum(This,pUnk)
7672 #define ISWbemPrivilegeSet_Item(This,iPrivilege,objWbemPrivilege) (This)->lpVtbl->Item(This,iPrivilege,objWbemPrivilege)
7673 #define ISWbemPrivilegeSet_get_Count(This,iCount) (This)->lpVtbl->get_Count(This,iCount)
7674 #define ISWbemPrivilegeSet_Add(This,iPrivilege,bIsEnabled,objWbemPrivilege) (This)->lpVtbl->Add(This,iPrivilege,bIsEnabled,objWbemPrivilege)
7675 #define ISWbemPrivilegeSet_Remove(This,iPrivilege) (This)->lpVtbl->Remove(This,iPrivilege)
7676 #define ISWbemPrivilegeSet_DeleteAll(This) (This)->lpVtbl->DeleteAll(This)
7677 #define ISWbemPrivilegeSet_AddAsString(This,strPrivilege,bIsEnabled,objWbemPrivilege) (This)->lpVtbl->AddAsString(This,strPrivilege,bIsEnabled,objWbemPrivilege)
7678 #else
7679 /*** IUnknown methods ***/
7680 static FORCEINLINE HRESULT ISWbemPrivilegeSet_QueryInterface(ISWbemPrivilegeSet* This,REFIID riid,void **ppvObject) {
7681     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
7682 }
7683 static FORCEINLINE ULONG ISWbemPrivilegeSet_AddRef(ISWbemPrivilegeSet* This) {
7684     return This->lpVtbl->AddRef(This);
7685 }
7686 static FORCEINLINE ULONG ISWbemPrivilegeSet_Release(ISWbemPrivilegeSet* This) {
7687     return This->lpVtbl->Release(This);
7688 }
7689 /*** IDispatch methods ***/
7690 static FORCEINLINE HRESULT ISWbemPrivilegeSet_GetTypeInfoCount(ISWbemPrivilegeSet* This,UINT *pctinfo) {
7691     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
7692 }
7693 static FORCEINLINE HRESULT ISWbemPrivilegeSet_GetTypeInfo(ISWbemPrivilegeSet* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
7694     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
7695 }
7696 static FORCEINLINE HRESULT ISWbemPrivilegeSet_GetIDsOfNames(ISWbemPrivilegeSet* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
7697     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
7698 }
7699 static FORCEINLINE HRESULT ISWbemPrivilegeSet_Invoke(ISWbemPrivilegeSet* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
7700     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
7701 }
7702 /*** ISWbemPrivilegeSet methods ***/
7703 static FORCEINLINE HRESULT ISWbemPrivilegeSet_get__NewEnum(ISWbemPrivilegeSet* This,IUnknown **pUnk) {
7704     return This->lpVtbl->get__NewEnum(This,pUnk);
7705 }
7706 static FORCEINLINE HRESULT ISWbemPrivilegeSet_Item(ISWbemPrivilegeSet* This,WbemPrivilegeEnum iPrivilege,ISWbemPrivilege **objWbemPrivilege) {
7707     return This->lpVtbl->Item(This,iPrivilege,objWbemPrivilege);
7708 }
7709 static FORCEINLINE HRESULT ISWbemPrivilegeSet_get_Count(ISWbemPrivilegeSet* This,LONG *iCount) {
7710     return This->lpVtbl->get_Count(This,iCount);
7711 }
7712 static FORCEINLINE HRESULT ISWbemPrivilegeSet_Add(ISWbemPrivilegeSet* This,WbemPrivilegeEnum iPrivilege,VARIANT_BOOL bIsEnabled,ISWbemPrivilege **objWbemPrivilege) {
7713     return This->lpVtbl->Add(This,iPrivilege,bIsEnabled,objWbemPrivilege);
7714 }
7715 static FORCEINLINE HRESULT ISWbemPrivilegeSet_Remove(ISWbemPrivilegeSet* This,WbemPrivilegeEnum iPrivilege) {
7716     return This->lpVtbl->Remove(This,iPrivilege);
7717 }
7718 static FORCEINLINE HRESULT ISWbemPrivilegeSet_DeleteAll(ISWbemPrivilegeSet* This) {
7719     return This->lpVtbl->DeleteAll(This);
7720 }
7721 static FORCEINLINE HRESULT ISWbemPrivilegeSet_AddAsString(ISWbemPrivilegeSet* This,BSTR strPrivilege,VARIANT_BOOL bIsEnabled,ISWbemPrivilege **objWbemPrivilege) {
7722     return This->lpVtbl->AddAsString(This,strPrivilege,bIsEnabled,objWbemPrivilege);
7723 }
7724 #endif
7725 #endif
7726 
7727 #endif
7728 
7729 HRESULT STDMETHODCALLTYPE ISWbemPrivilegeSet_get__NewEnum_Proxy(
7730     ISWbemPrivilegeSet* This,
7731     IUnknown **pUnk);
7732 void __RPC_STUB ISWbemPrivilegeSet_get__NewEnum_Stub(
7733     IRpcStubBuffer* This,
7734     IRpcChannelBuffer* pRpcChannelBuffer,
7735     PRPC_MESSAGE pRpcMessage,
7736     DWORD* pdwStubPhase);
7737 HRESULT STDMETHODCALLTYPE ISWbemPrivilegeSet_Item_Proxy(
7738     ISWbemPrivilegeSet* This,
7739     WbemPrivilegeEnum iPrivilege,
7740     ISWbemPrivilege **objWbemPrivilege);
7741 void __RPC_STUB ISWbemPrivilegeSet_Item_Stub(
7742     IRpcStubBuffer* This,
7743     IRpcChannelBuffer* pRpcChannelBuffer,
7744     PRPC_MESSAGE pRpcMessage,
7745     DWORD* pdwStubPhase);
7746 HRESULT STDMETHODCALLTYPE ISWbemPrivilegeSet_get_Count_Proxy(
7747     ISWbemPrivilegeSet* This,
7748     LONG *iCount);
7749 void __RPC_STUB ISWbemPrivilegeSet_get_Count_Stub(
7750     IRpcStubBuffer* This,
7751     IRpcChannelBuffer* pRpcChannelBuffer,
7752     PRPC_MESSAGE pRpcMessage,
7753     DWORD* pdwStubPhase);
7754 HRESULT STDMETHODCALLTYPE ISWbemPrivilegeSet_Add_Proxy(
7755     ISWbemPrivilegeSet* This,
7756     WbemPrivilegeEnum iPrivilege,
7757     VARIANT_BOOL bIsEnabled,
7758     ISWbemPrivilege **objWbemPrivilege);
7759 void __RPC_STUB ISWbemPrivilegeSet_Add_Stub(
7760     IRpcStubBuffer* This,
7761     IRpcChannelBuffer* pRpcChannelBuffer,
7762     PRPC_MESSAGE pRpcMessage,
7763     DWORD* pdwStubPhase);
7764 HRESULT STDMETHODCALLTYPE ISWbemPrivilegeSet_Remove_Proxy(
7765     ISWbemPrivilegeSet* This,
7766     WbemPrivilegeEnum iPrivilege);
7767 void __RPC_STUB ISWbemPrivilegeSet_Remove_Stub(
7768     IRpcStubBuffer* This,
7769     IRpcChannelBuffer* pRpcChannelBuffer,
7770     PRPC_MESSAGE pRpcMessage,
7771     DWORD* pdwStubPhase);
7772 HRESULT STDMETHODCALLTYPE ISWbemPrivilegeSet_DeleteAll_Proxy(
7773     ISWbemPrivilegeSet* This);
7774 void __RPC_STUB ISWbemPrivilegeSet_DeleteAll_Stub(
7775     IRpcStubBuffer* This,
7776     IRpcChannelBuffer* pRpcChannelBuffer,
7777     PRPC_MESSAGE pRpcMessage,
7778     DWORD* pdwStubPhase);
7779 HRESULT STDMETHODCALLTYPE ISWbemPrivilegeSet_AddAsString_Proxy(
7780     ISWbemPrivilegeSet* This,
7781     BSTR strPrivilege,
7782     VARIANT_BOOL bIsEnabled,
7783     ISWbemPrivilege **objWbemPrivilege);
7784 void __RPC_STUB ISWbemPrivilegeSet_AddAsString_Stub(
7785     IRpcStubBuffer* This,
7786     IRpcChannelBuffer* pRpcChannelBuffer,
7787     PRPC_MESSAGE pRpcMessage,
7788     DWORD* pdwStubPhase);
7789 
7790 #endif  /* __ISWbemPrivilegeSet_INTERFACE_DEFINED__ */
7791 
7792 /*****************************************************************************
7793  * ISWbemDateTime interface
7794  */
7795 #ifndef __ISWbemDateTime_INTERFACE_DEFINED__
7796 #define __ISWbemDateTime_INTERFACE_DEFINED__
7797 
7798 DEFINE_GUID(IID_ISWbemDateTime, 0x5e97458a, 0xcf77, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a);
7799 #if defined(__cplusplus) && !defined(CINTERFACE)
7800 MIDL_INTERFACE("5e97458a-cf77-11d3-b38f-00105a1f473a")
7801 ISWbemDateTime : public IDispatch
7802 {
7803     virtual HRESULT STDMETHODCALLTYPE get_Value(
7804         BSTR *strValue) = 0;
7805 
7806     virtual HRESULT STDMETHODCALLTYPE put_Value(
7807         BSTR strValue) = 0;
7808 
7809     virtual HRESULT STDMETHODCALLTYPE get_Year(
7810         LONG *iYear) = 0;
7811 
7812     virtual HRESULT STDMETHODCALLTYPE put_Year(
7813         LONG iYear) = 0;
7814 
7815     virtual HRESULT STDMETHODCALLTYPE get_YearSpecified(
7816         VARIANT_BOOL *bYearSpecified) = 0;
7817 
7818     virtual HRESULT STDMETHODCALLTYPE put_YearSpecified(
7819         VARIANT_BOOL bYearSpecified) = 0;
7820 
7821     virtual HRESULT STDMETHODCALLTYPE get_Month(
7822         LONG *iMonth) = 0;
7823 
7824     virtual HRESULT STDMETHODCALLTYPE put_Month(
7825         LONG iMonth) = 0;
7826 
7827     virtual HRESULT STDMETHODCALLTYPE get_MonthSpecified(
7828         VARIANT_BOOL *bMonthSpecified) = 0;
7829 
7830     virtual HRESULT STDMETHODCALLTYPE put_MonthSpecified(
7831         VARIANT_BOOL bMonthSpecified) = 0;
7832 
7833     virtual HRESULT STDMETHODCALLTYPE get_Day(
7834         LONG *iDay) = 0;
7835 
7836     virtual HRESULT STDMETHODCALLTYPE put_Day(
7837         LONG iDay) = 0;
7838 
7839     virtual HRESULT STDMETHODCALLTYPE get_DaySpecified(
7840         VARIANT_BOOL *bDaySpecified) = 0;
7841 
7842     virtual HRESULT STDMETHODCALLTYPE put_DaySpecified(
7843         VARIANT_BOOL bDaySpecified) = 0;
7844 
7845     virtual HRESULT STDMETHODCALLTYPE get_Hours(
7846         LONG *iHours) = 0;
7847 
7848     virtual HRESULT STDMETHODCALLTYPE put_Hours(
7849         LONG iHours) = 0;
7850 
7851     virtual HRESULT STDMETHODCALLTYPE get_HoursSpecified(
7852         VARIANT_BOOL *bHoursSpecified) = 0;
7853 
7854     virtual HRESULT STDMETHODCALLTYPE put_HoursSpecified(
7855         VARIANT_BOOL bHoursSpecified) = 0;
7856 
7857     virtual HRESULT STDMETHODCALLTYPE get_Minutes(
7858         LONG *iMinutes) = 0;
7859 
7860     virtual HRESULT STDMETHODCALLTYPE put_Minutes(
7861         LONG iMinutes) = 0;
7862 
7863     virtual HRESULT STDMETHODCALLTYPE get_MinutesSpecified(
7864         VARIANT_BOOL *bMinutesSpecified) = 0;
7865 
7866     virtual HRESULT STDMETHODCALLTYPE put_MinutesSpecified(
7867         VARIANT_BOOL bMinutesSpecified) = 0;
7868 
7869     virtual HRESULT STDMETHODCALLTYPE get_Seconds(
7870         LONG *iSeconds) = 0;
7871 
7872     virtual HRESULT STDMETHODCALLTYPE put_Seconds(
7873         LONG iSeconds) = 0;
7874 
7875     virtual HRESULT STDMETHODCALLTYPE get_SecondsSpecified(
7876         VARIANT_BOOL *bSecondsSpecified) = 0;
7877 
7878     virtual HRESULT STDMETHODCALLTYPE put_SecondsSpecified(
7879         VARIANT_BOOL bSecondsSpecified) = 0;
7880 
7881     virtual HRESULT STDMETHODCALLTYPE get_Microseconds(
7882         LONG *iMicroseconds) = 0;
7883 
7884     virtual HRESULT STDMETHODCALLTYPE put_Microseconds(
7885         LONG iMicroseconds) = 0;
7886 
7887     virtual HRESULT STDMETHODCALLTYPE get_MicrosecondsSpecified(
7888         VARIANT_BOOL *bMicrosecondsSpecified) = 0;
7889 
7890     virtual HRESULT STDMETHODCALLTYPE put_MicrosecondsSpecified(
7891         VARIANT_BOOL bMicrosecondsSpecified) = 0;
7892 
7893     virtual HRESULT STDMETHODCALLTYPE get_UTC(
7894         LONG *iUTC) = 0;
7895 
7896     virtual HRESULT STDMETHODCALLTYPE put_UTC(
7897         LONG iUTC) = 0;
7898 
7899     virtual HRESULT STDMETHODCALLTYPE get_UTCSpecified(
7900         VARIANT_BOOL *bUTCSpecified) = 0;
7901 
7902     virtual HRESULT STDMETHODCALLTYPE put_UTCSpecified(
7903         VARIANT_BOOL bUTCSpecified) = 0;
7904 
7905     virtual HRESULT STDMETHODCALLTYPE get_IsInterval(
7906         VARIANT_BOOL *bIsInterval) = 0;
7907 
7908     virtual HRESULT STDMETHODCALLTYPE put_IsInterval(
7909         VARIANT_BOOL bIsInterval) = 0;
7910 
7911     virtual HRESULT STDMETHODCALLTYPE GetVarDate(
7912         VARIANT_BOOL bIsLocal = TRUE,
7913         DATE *dVarDate = 0) = 0;
7914 
7915     virtual HRESULT STDMETHODCALLTYPE SetVarDate(
7916         DATE dVarDate,
7917         VARIANT_BOOL bIsLocal = TRUE) = 0;
7918 
7919     virtual HRESULT STDMETHODCALLTYPE GetFileTime(
7920         VARIANT_BOOL bIsLocal = TRUE,
7921         BSTR *strFileTime = 0) = 0;
7922 
7923     virtual HRESULT STDMETHODCALLTYPE SetFileTime(
7924         BSTR strFileTime,
7925         VARIANT_BOOL bIsLocal = TRUE) = 0;
7926 
7927 };
7928 #ifdef __CRT_UUID_DECL
7929 __CRT_UUID_DECL(ISWbemDateTime, 0x5e97458a, 0xcf77, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a)
7930 #endif
7931 #else
7932 typedef struct ISWbemDateTimeVtbl {
7933     BEGIN_INTERFACE
7934 
7935     /*** IUnknown methods ***/
7936     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
7937         ISWbemDateTime* This,
7938         REFIID riid,
7939         void **ppvObject);
7940 
7941     ULONG (STDMETHODCALLTYPE *AddRef)(
7942         ISWbemDateTime* This);
7943 
7944     ULONG (STDMETHODCALLTYPE *Release)(
7945         ISWbemDateTime* This);
7946 
7947     /*** IDispatch methods ***/
7948     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
7949         ISWbemDateTime* This,
7950         UINT *pctinfo);
7951 
7952     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
7953         ISWbemDateTime* This,
7954         UINT iTInfo,
7955         LCID lcid,
7956         ITypeInfo **ppTInfo);
7957 
7958     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
7959         ISWbemDateTime* This,
7960         REFIID riid,
7961         LPOLESTR *rgszNames,
7962         UINT cNames,
7963         LCID lcid,
7964         DISPID *rgDispId);
7965 
7966     HRESULT (STDMETHODCALLTYPE *Invoke)(
7967         ISWbemDateTime* This,
7968         DISPID dispIdMember,
7969         REFIID riid,
7970         LCID lcid,
7971         WORD wFlags,
7972         DISPPARAMS *pDispParams,
7973         VARIANT *pVarResult,
7974         EXCEPINFO *pExcepInfo,
7975         UINT *puArgErr);
7976 
7977     /*** ISWbemDateTime methods ***/
7978     HRESULT (STDMETHODCALLTYPE *get_Value)(
7979         ISWbemDateTime* This,
7980         BSTR *strValue);
7981 
7982     HRESULT (STDMETHODCALLTYPE *put_Value)(
7983         ISWbemDateTime* This,
7984         BSTR strValue);
7985 
7986     HRESULT (STDMETHODCALLTYPE *get_Year)(
7987         ISWbemDateTime* This,
7988         LONG *iYear);
7989 
7990     HRESULT (STDMETHODCALLTYPE *put_Year)(
7991         ISWbemDateTime* This,
7992         LONG iYear);
7993 
7994     HRESULT (STDMETHODCALLTYPE *get_YearSpecified)(
7995         ISWbemDateTime* This,
7996         VARIANT_BOOL *bYearSpecified);
7997 
7998     HRESULT (STDMETHODCALLTYPE *put_YearSpecified)(
7999         ISWbemDateTime* This,
8000         VARIANT_BOOL bYearSpecified);
8001 
8002     HRESULT (STDMETHODCALLTYPE *get_Month)(
8003         ISWbemDateTime* This,
8004         LONG *iMonth);
8005 
8006     HRESULT (STDMETHODCALLTYPE *put_Month)(
8007         ISWbemDateTime* This,
8008         LONG iMonth);
8009 
8010     HRESULT (STDMETHODCALLTYPE *get_MonthSpecified)(
8011         ISWbemDateTime* This,
8012         VARIANT_BOOL *bMonthSpecified);
8013 
8014     HRESULT (STDMETHODCALLTYPE *put_MonthSpecified)(
8015         ISWbemDateTime* This,
8016         VARIANT_BOOL bMonthSpecified);
8017 
8018     HRESULT (STDMETHODCALLTYPE *get_Day)(
8019         ISWbemDateTime* This,
8020         LONG *iDay);
8021 
8022     HRESULT (STDMETHODCALLTYPE *put_Day)(
8023         ISWbemDateTime* This,
8024         LONG iDay);
8025 
8026     HRESULT (STDMETHODCALLTYPE *get_DaySpecified)(
8027         ISWbemDateTime* This,
8028         VARIANT_BOOL *bDaySpecified);
8029 
8030     HRESULT (STDMETHODCALLTYPE *put_DaySpecified)(
8031         ISWbemDateTime* This,
8032         VARIANT_BOOL bDaySpecified);
8033 
8034     HRESULT (STDMETHODCALLTYPE *get_Hours)(
8035         ISWbemDateTime* This,
8036         LONG *iHours);
8037 
8038     HRESULT (STDMETHODCALLTYPE *put_Hours)(
8039         ISWbemDateTime* This,
8040         LONG iHours);
8041 
8042     HRESULT (STDMETHODCALLTYPE *get_HoursSpecified)(
8043         ISWbemDateTime* This,
8044         VARIANT_BOOL *bHoursSpecified);
8045 
8046     HRESULT (STDMETHODCALLTYPE *put_HoursSpecified)(
8047         ISWbemDateTime* This,
8048         VARIANT_BOOL bHoursSpecified);
8049 
8050     HRESULT (STDMETHODCALLTYPE *get_Minutes)(
8051         ISWbemDateTime* This,
8052         LONG *iMinutes);
8053 
8054     HRESULT (STDMETHODCALLTYPE *put_Minutes)(
8055         ISWbemDateTime* This,
8056         LONG iMinutes);
8057 
8058     HRESULT (STDMETHODCALLTYPE *get_MinutesSpecified)(
8059         ISWbemDateTime* This,
8060         VARIANT_BOOL *bMinutesSpecified);
8061 
8062     HRESULT (STDMETHODCALLTYPE *put_MinutesSpecified)(
8063         ISWbemDateTime* This,
8064         VARIANT_BOOL bMinutesSpecified);
8065 
8066     HRESULT (STDMETHODCALLTYPE *get_Seconds)(
8067         ISWbemDateTime* This,
8068         LONG *iSeconds);
8069 
8070     HRESULT (STDMETHODCALLTYPE *put_Seconds)(
8071         ISWbemDateTime* This,
8072         LONG iSeconds);
8073 
8074     HRESULT (STDMETHODCALLTYPE *get_SecondsSpecified)(
8075         ISWbemDateTime* This,
8076         VARIANT_BOOL *bSecondsSpecified);
8077 
8078     HRESULT (STDMETHODCALLTYPE *put_SecondsSpecified)(
8079         ISWbemDateTime* This,
8080         VARIANT_BOOL bSecondsSpecified);
8081 
8082     HRESULT (STDMETHODCALLTYPE *get_Microseconds)(
8083         ISWbemDateTime* This,
8084         LONG *iMicroseconds);
8085 
8086     HRESULT (STDMETHODCALLTYPE *put_Microseconds)(
8087         ISWbemDateTime* This,
8088         LONG iMicroseconds);
8089 
8090     HRESULT (STDMETHODCALLTYPE *get_MicrosecondsSpecified)(
8091         ISWbemDateTime* This,
8092         VARIANT_BOOL *bMicrosecondsSpecified);
8093 
8094     HRESULT (STDMETHODCALLTYPE *put_MicrosecondsSpecified)(
8095         ISWbemDateTime* This,
8096         VARIANT_BOOL bMicrosecondsSpecified);
8097 
8098     HRESULT (STDMETHODCALLTYPE *get_UTC)(
8099         ISWbemDateTime* This,
8100         LONG *iUTC);
8101 
8102     HRESULT (STDMETHODCALLTYPE *put_UTC)(
8103         ISWbemDateTime* This,
8104         LONG iUTC);
8105 
8106     HRESULT (STDMETHODCALLTYPE *get_UTCSpecified)(
8107         ISWbemDateTime* This,
8108         VARIANT_BOOL *bUTCSpecified);
8109 
8110     HRESULT (STDMETHODCALLTYPE *put_UTCSpecified)(
8111         ISWbemDateTime* This,
8112         VARIANT_BOOL bUTCSpecified);
8113 
8114     HRESULT (STDMETHODCALLTYPE *get_IsInterval)(
8115         ISWbemDateTime* This,
8116         VARIANT_BOOL *bIsInterval);
8117 
8118     HRESULT (STDMETHODCALLTYPE *put_IsInterval)(
8119         ISWbemDateTime* This,
8120         VARIANT_BOOL bIsInterval);
8121 
8122     HRESULT (STDMETHODCALLTYPE *GetVarDate)(
8123         ISWbemDateTime* This,
8124         VARIANT_BOOL bIsLocal,
8125         DATE *dVarDate);
8126 
8127     HRESULT (STDMETHODCALLTYPE *SetVarDate)(
8128         ISWbemDateTime* This,
8129         DATE dVarDate,
8130         VARIANT_BOOL bIsLocal);
8131 
8132     HRESULT (STDMETHODCALLTYPE *GetFileTime)(
8133         ISWbemDateTime* This,
8134         VARIANT_BOOL bIsLocal,
8135         BSTR *strFileTime);
8136 
8137     HRESULT (STDMETHODCALLTYPE *SetFileTime)(
8138         ISWbemDateTime* This,
8139         BSTR strFileTime,
8140         VARIANT_BOOL bIsLocal);
8141 
8142     END_INTERFACE
8143 } ISWbemDateTimeVtbl;
8144 interface ISWbemDateTime {
8145     CONST_VTBL ISWbemDateTimeVtbl* lpVtbl;
8146 };
8147 
8148 #ifdef COBJMACROS
8149 #ifndef WIDL_C_INLINE_WRAPPERS
8150 /*** IUnknown methods ***/
8151 #define ISWbemDateTime_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8152 #define ISWbemDateTime_AddRef(This) (This)->lpVtbl->AddRef(This)
8153 #define ISWbemDateTime_Release(This) (This)->lpVtbl->Release(This)
8154 /*** IDispatch methods ***/
8155 #define ISWbemDateTime_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
8156 #define ISWbemDateTime_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
8157 #define ISWbemDateTime_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
8158 #define ISWbemDateTime_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
8159 /*** ISWbemDateTime methods ***/
8160 #define ISWbemDateTime_get_Value(This,strValue) (This)->lpVtbl->get_Value(This,strValue)
8161 #define ISWbemDateTime_put_Value(This,strValue) (This)->lpVtbl->put_Value(This,strValue)
8162 #define ISWbemDateTime_get_Year(This,iYear) (This)->lpVtbl->get_Year(This,iYear)
8163 #define ISWbemDateTime_put_Year(This,iYear) (This)->lpVtbl->put_Year(This,iYear)
8164 #define ISWbemDateTime_get_YearSpecified(This,bYearSpecified) (This)->lpVtbl->get_YearSpecified(This,bYearSpecified)
8165 #define ISWbemDateTime_put_YearSpecified(This,bYearSpecified) (This)->lpVtbl->put_YearSpecified(This,bYearSpecified)
8166 #define ISWbemDateTime_get_Month(This,iMonth) (This)->lpVtbl->get_Month(This,iMonth)
8167 #define ISWbemDateTime_put_Month(This,iMonth) (This)->lpVtbl->put_Month(This,iMonth)
8168 #define ISWbemDateTime_get_MonthSpecified(This,bMonthSpecified) (This)->lpVtbl->get_MonthSpecified(This,bMonthSpecified)
8169 #define ISWbemDateTime_put_MonthSpecified(This,bMonthSpecified) (This)->lpVtbl->put_MonthSpecified(This,bMonthSpecified)
8170 #define ISWbemDateTime_get_Day(This,iDay) (This)->lpVtbl->get_Day(This,iDay)
8171 #define ISWbemDateTime_put_Day(This,iDay) (This)->lpVtbl->put_Day(This,iDay)
8172 #define ISWbemDateTime_get_DaySpecified(This,bDaySpecified) (This)->lpVtbl->get_DaySpecified(This,bDaySpecified)
8173 #define ISWbemDateTime_put_DaySpecified(This,bDaySpecified) (This)->lpVtbl->put_DaySpecified(This,bDaySpecified)
8174 #define ISWbemDateTime_get_Hours(This,iHours) (This)->lpVtbl->get_Hours(This,iHours)
8175 #define ISWbemDateTime_put_Hours(This,iHours) (This)->lpVtbl->put_Hours(This,iHours)
8176 #define ISWbemDateTime_get_HoursSpecified(This,bHoursSpecified) (This)->lpVtbl->get_HoursSpecified(This,bHoursSpecified)
8177 #define ISWbemDateTime_put_HoursSpecified(This,bHoursSpecified) (This)->lpVtbl->put_HoursSpecified(This,bHoursSpecified)
8178 #define ISWbemDateTime_get_Minutes(This,iMinutes) (This)->lpVtbl->get_Minutes(This,iMinutes)
8179 #define ISWbemDateTime_put_Minutes(This,iMinutes) (This)->lpVtbl->put_Minutes(This,iMinutes)
8180 #define ISWbemDateTime_get_MinutesSpecified(This,bMinutesSpecified) (This)->lpVtbl->get_MinutesSpecified(This,bMinutesSpecified)
8181 #define ISWbemDateTime_put_MinutesSpecified(This,bMinutesSpecified) (This)->lpVtbl->put_MinutesSpecified(This,bMinutesSpecified)
8182 #define ISWbemDateTime_get_Seconds(This,iSeconds) (This)->lpVtbl->get_Seconds(This,iSeconds)
8183 #define ISWbemDateTime_put_Seconds(This,iSeconds) (This)->lpVtbl->put_Seconds(This,iSeconds)
8184 #define ISWbemDateTime_get_SecondsSpecified(This,bSecondsSpecified) (This)->lpVtbl->get_SecondsSpecified(This,bSecondsSpecified)
8185 #define ISWbemDateTime_put_SecondsSpecified(This,bSecondsSpecified) (This)->lpVtbl->put_SecondsSpecified(This,bSecondsSpecified)
8186 #define ISWbemDateTime_get_Microseconds(This,iMicroseconds) (This)->lpVtbl->get_Microseconds(This,iMicroseconds)
8187 #define ISWbemDateTime_put_Microseconds(This,iMicroseconds) (This)->lpVtbl->put_Microseconds(This,iMicroseconds)
8188 #define ISWbemDateTime_get_MicrosecondsSpecified(This,bMicrosecondsSpecified) (This)->lpVtbl->get_MicrosecondsSpecified(This,bMicrosecondsSpecified)
8189 #define ISWbemDateTime_put_MicrosecondsSpecified(This,bMicrosecondsSpecified) (This)->lpVtbl->put_MicrosecondsSpecified(This,bMicrosecondsSpecified)
8190 #define ISWbemDateTime_get_UTC(This,iUTC) (This)->lpVtbl->get_UTC(This,iUTC)
8191 #define ISWbemDateTime_put_UTC(This,iUTC) (This)->lpVtbl->put_UTC(This,iUTC)
8192 #define ISWbemDateTime_get_UTCSpecified(This,bUTCSpecified) (This)->lpVtbl->get_UTCSpecified(This,bUTCSpecified)
8193 #define ISWbemDateTime_put_UTCSpecified(This,bUTCSpecified) (This)->lpVtbl->put_UTCSpecified(This,bUTCSpecified)
8194 #define ISWbemDateTime_get_IsInterval(This,bIsInterval) (This)->lpVtbl->get_IsInterval(This,bIsInterval)
8195 #define ISWbemDateTime_put_IsInterval(This,bIsInterval) (This)->lpVtbl->put_IsInterval(This,bIsInterval)
8196 #define ISWbemDateTime_GetVarDate(This,bIsLocal,dVarDate) (This)->lpVtbl->GetVarDate(This,bIsLocal,dVarDate)
8197 #define ISWbemDateTime_SetVarDate(This,dVarDate,bIsLocal) (This)->lpVtbl->SetVarDate(This,dVarDate,bIsLocal)
8198 #define ISWbemDateTime_GetFileTime(This,bIsLocal,strFileTime) (This)->lpVtbl->GetFileTime(This,bIsLocal,strFileTime)
8199 #define ISWbemDateTime_SetFileTime(This,strFileTime,bIsLocal) (This)->lpVtbl->SetFileTime(This,strFileTime,bIsLocal)
8200 #else
8201 /*** IUnknown methods ***/
8202 static FORCEINLINE HRESULT ISWbemDateTime_QueryInterface(ISWbemDateTime* This,REFIID riid,void **ppvObject) {
8203     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8204 }
8205 static FORCEINLINE ULONG ISWbemDateTime_AddRef(ISWbemDateTime* This) {
8206     return This->lpVtbl->AddRef(This);
8207 }
8208 static FORCEINLINE ULONG ISWbemDateTime_Release(ISWbemDateTime* This) {
8209     return This->lpVtbl->Release(This);
8210 }
8211 /*** IDispatch methods ***/
8212 static FORCEINLINE HRESULT ISWbemDateTime_GetTypeInfoCount(ISWbemDateTime* This,UINT *pctinfo) {
8213     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
8214 }
8215 static FORCEINLINE HRESULT ISWbemDateTime_GetTypeInfo(ISWbemDateTime* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
8216     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
8217 }
8218 static FORCEINLINE HRESULT ISWbemDateTime_GetIDsOfNames(ISWbemDateTime* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
8219     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
8220 }
8221 static FORCEINLINE HRESULT ISWbemDateTime_Invoke(ISWbemDateTime* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
8222     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
8223 }
8224 /*** ISWbemDateTime methods ***/
8225 static FORCEINLINE HRESULT ISWbemDateTime_get_Value(ISWbemDateTime* This,BSTR *strValue) {
8226     return This->lpVtbl->get_Value(This,strValue);
8227 }
8228 static FORCEINLINE HRESULT ISWbemDateTime_put_Value(ISWbemDateTime* This,BSTR strValue) {
8229     return This->lpVtbl->put_Value(This,strValue);
8230 }
8231 static FORCEINLINE HRESULT ISWbemDateTime_get_Year(ISWbemDateTime* This,LONG *iYear) {
8232     return This->lpVtbl->get_Year(This,iYear);
8233 }
8234 static FORCEINLINE HRESULT ISWbemDateTime_put_Year(ISWbemDateTime* This,LONG iYear) {
8235     return This->lpVtbl->put_Year(This,iYear);
8236 }
8237 static FORCEINLINE HRESULT ISWbemDateTime_get_YearSpecified(ISWbemDateTime* This,VARIANT_BOOL *bYearSpecified) {
8238     return This->lpVtbl->get_YearSpecified(This,bYearSpecified);
8239 }
8240 static FORCEINLINE HRESULT ISWbemDateTime_put_YearSpecified(ISWbemDateTime* This,VARIANT_BOOL bYearSpecified) {
8241     return This->lpVtbl->put_YearSpecified(This,bYearSpecified);
8242 }
8243 static FORCEINLINE HRESULT ISWbemDateTime_get_Month(ISWbemDateTime* This,LONG *iMonth) {
8244     return This->lpVtbl->get_Month(This,iMonth);
8245 }
8246 static FORCEINLINE HRESULT ISWbemDateTime_put_Month(ISWbemDateTime* This,LONG iMonth) {
8247     return This->lpVtbl->put_Month(This,iMonth);
8248 }
8249 static FORCEINLINE HRESULT ISWbemDateTime_get_MonthSpecified(ISWbemDateTime* This,VARIANT_BOOL *bMonthSpecified) {
8250     return This->lpVtbl->get_MonthSpecified(This,bMonthSpecified);
8251 }
8252 static FORCEINLINE HRESULT ISWbemDateTime_put_MonthSpecified(ISWbemDateTime* This,VARIANT_BOOL bMonthSpecified) {
8253     return This->lpVtbl->put_MonthSpecified(This,bMonthSpecified);
8254 }
8255 static FORCEINLINE HRESULT ISWbemDateTime_get_Day(ISWbemDateTime* This,LONG *iDay) {
8256     return This->lpVtbl->get_Day(This,iDay);
8257 }
8258 static FORCEINLINE HRESULT ISWbemDateTime_put_Day(ISWbemDateTime* This,LONG iDay) {
8259     return This->lpVtbl->put_Day(This,iDay);
8260 }
8261 static FORCEINLINE HRESULT ISWbemDateTime_get_DaySpecified(ISWbemDateTime* This,VARIANT_BOOL *bDaySpecified) {
8262     return This->lpVtbl->get_DaySpecified(This,bDaySpecified);
8263 }
8264 static FORCEINLINE HRESULT ISWbemDateTime_put_DaySpecified(ISWbemDateTime* This,VARIANT_BOOL bDaySpecified) {
8265     return This->lpVtbl->put_DaySpecified(This,bDaySpecified);
8266 }
8267 static FORCEINLINE HRESULT ISWbemDateTime_get_Hours(ISWbemDateTime* This,LONG *iHours) {
8268     return This->lpVtbl->get_Hours(This,iHours);
8269 }
8270 static FORCEINLINE HRESULT ISWbemDateTime_put_Hours(ISWbemDateTime* This,LONG iHours) {
8271     return This->lpVtbl->put_Hours(This,iHours);
8272 }
8273 static FORCEINLINE HRESULT ISWbemDateTime_get_HoursSpecified(ISWbemDateTime* This,VARIANT_BOOL *bHoursSpecified) {
8274     return This->lpVtbl->get_HoursSpecified(This,bHoursSpecified);
8275 }
8276 static FORCEINLINE HRESULT ISWbemDateTime_put_HoursSpecified(ISWbemDateTime* This,VARIANT_BOOL bHoursSpecified) {
8277     return This->lpVtbl->put_HoursSpecified(This,bHoursSpecified);
8278 }
8279 static FORCEINLINE HRESULT ISWbemDateTime_get_Minutes(ISWbemDateTime* This,LONG *iMinutes) {
8280     return This->lpVtbl->get_Minutes(This,iMinutes);
8281 }
8282 static FORCEINLINE HRESULT ISWbemDateTime_put_Minutes(ISWbemDateTime* This,LONG iMinutes) {
8283     return This->lpVtbl->put_Minutes(This,iMinutes);
8284 }
8285 static FORCEINLINE HRESULT ISWbemDateTime_get_MinutesSpecified(ISWbemDateTime* This,VARIANT_BOOL *bMinutesSpecified) {
8286     return This->lpVtbl->get_MinutesSpecified(This,bMinutesSpecified);
8287 }
8288 static FORCEINLINE HRESULT ISWbemDateTime_put_MinutesSpecified(ISWbemDateTime* This,VARIANT_BOOL bMinutesSpecified) {
8289     return This->lpVtbl->put_MinutesSpecified(This,bMinutesSpecified);
8290 }
8291 static FORCEINLINE HRESULT ISWbemDateTime_get_Seconds(ISWbemDateTime* This,LONG *iSeconds) {
8292     return This->lpVtbl->get_Seconds(This,iSeconds);
8293 }
8294 static FORCEINLINE HRESULT ISWbemDateTime_put_Seconds(ISWbemDateTime* This,LONG iSeconds) {
8295     return This->lpVtbl->put_Seconds(This,iSeconds);
8296 }
8297 static FORCEINLINE HRESULT ISWbemDateTime_get_SecondsSpecified(ISWbemDateTime* This,VARIANT_BOOL *bSecondsSpecified) {
8298     return This->lpVtbl->get_SecondsSpecified(This,bSecondsSpecified);
8299 }
8300 static FORCEINLINE HRESULT ISWbemDateTime_put_SecondsSpecified(ISWbemDateTime* This,VARIANT_BOOL bSecondsSpecified) {
8301     return This->lpVtbl->put_SecondsSpecified(This,bSecondsSpecified);
8302 }
8303 static FORCEINLINE HRESULT ISWbemDateTime_get_Microseconds(ISWbemDateTime* This,LONG *iMicroseconds) {
8304     return This->lpVtbl->get_Microseconds(This,iMicroseconds);
8305 }
8306 static FORCEINLINE HRESULT ISWbemDateTime_put_Microseconds(ISWbemDateTime* This,LONG iMicroseconds) {
8307     return This->lpVtbl->put_Microseconds(This,iMicroseconds);
8308 }
8309 static FORCEINLINE HRESULT ISWbemDateTime_get_MicrosecondsSpecified(ISWbemDateTime* This,VARIANT_BOOL *bMicrosecondsSpecified) {
8310     return This->lpVtbl->get_MicrosecondsSpecified(This,bMicrosecondsSpecified);
8311 }
8312 static FORCEINLINE HRESULT ISWbemDateTime_put_MicrosecondsSpecified(ISWbemDateTime* This,VARIANT_BOOL bMicrosecondsSpecified) {
8313     return This->lpVtbl->put_MicrosecondsSpecified(This,bMicrosecondsSpecified);
8314 }
8315 static FORCEINLINE HRESULT ISWbemDateTime_get_UTC(ISWbemDateTime* This,LONG *iUTC) {
8316     return This->lpVtbl->get_UTC(This,iUTC);
8317 }
8318 static FORCEINLINE HRESULT ISWbemDateTime_put_UTC(ISWbemDateTime* This,LONG iUTC) {
8319     return This->lpVtbl->put_UTC(This,iUTC);
8320 }
8321 static FORCEINLINE HRESULT ISWbemDateTime_get_UTCSpecified(ISWbemDateTime* This,VARIANT_BOOL *bUTCSpecified) {
8322     return This->lpVtbl->get_UTCSpecified(This,bUTCSpecified);
8323 }
8324 static FORCEINLINE HRESULT ISWbemDateTime_put_UTCSpecified(ISWbemDateTime* This,VARIANT_BOOL bUTCSpecified) {
8325     return This->lpVtbl->put_UTCSpecified(This,bUTCSpecified);
8326 }
8327 static FORCEINLINE HRESULT ISWbemDateTime_get_IsInterval(ISWbemDateTime* This,VARIANT_BOOL *bIsInterval) {
8328     return This->lpVtbl->get_IsInterval(This,bIsInterval);
8329 }
8330 static FORCEINLINE HRESULT ISWbemDateTime_put_IsInterval(ISWbemDateTime* This,VARIANT_BOOL bIsInterval) {
8331     return This->lpVtbl->put_IsInterval(This,bIsInterval);
8332 }
8333 static FORCEINLINE HRESULT ISWbemDateTime_GetVarDate(ISWbemDateTime* This,VARIANT_BOOL bIsLocal,DATE *dVarDate) {
8334     return This->lpVtbl->GetVarDate(This,bIsLocal,dVarDate);
8335 }
8336 static FORCEINLINE HRESULT ISWbemDateTime_SetVarDate(ISWbemDateTime* This,DATE dVarDate,VARIANT_BOOL bIsLocal) {
8337     return This->lpVtbl->SetVarDate(This,dVarDate,bIsLocal);
8338 }
8339 static FORCEINLINE HRESULT ISWbemDateTime_GetFileTime(ISWbemDateTime* This,VARIANT_BOOL bIsLocal,BSTR *strFileTime) {
8340     return This->lpVtbl->GetFileTime(This,bIsLocal,strFileTime);
8341 }
8342 static FORCEINLINE HRESULT ISWbemDateTime_SetFileTime(ISWbemDateTime* This,BSTR strFileTime,VARIANT_BOOL bIsLocal) {
8343     return This->lpVtbl->SetFileTime(This,strFileTime,bIsLocal);
8344 }
8345 #endif
8346 #endif
8347 
8348 #endif
8349 
8350 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_Value_Proxy(
8351     ISWbemDateTime* This,
8352     BSTR *strValue);
8353 void __RPC_STUB ISWbemDateTime_get_Value_Stub(
8354     IRpcStubBuffer* This,
8355     IRpcChannelBuffer* pRpcChannelBuffer,
8356     PRPC_MESSAGE pRpcMessage,
8357     DWORD* pdwStubPhase);
8358 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_Value_Proxy(
8359     ISWbemDateTime* This,
8360     BSTR strValue);
8361 void __RPC_STUB ISWbemDateTime_put_Value_Stub(
8362     IRpcStubBuffer* This,
8363     IRpcChannelBuffer* pRpcChannelBuffer,
8364     PRPC_MESSAGE pRpcMessage,
8365     DWORD* pdwStubPhase);
8366 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_Year_Proxy(
8367     ISWbemDateTime* This,
8368     LONG *iYear);
8369 void __RPC_STUB ISWbemDateTime_get_Year_Stub(
8370     IRpcStubBuffer* This,
8371     IRpcChannelBuffer* pRpcChannelBuffer,
8372     PRPC_MESSAGE pRpcMessage,
8373     DWORD* pdwStubPhase);
8374 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_Year_Proxy(
8375     ISWbemDateTime* This,
8376     LONG iYear);
8377 void __RPC_STUB ISWbemDateTime_put_Year_Stub(
8378     IRpcStubBuffer* This,
8379     IRpcChannelBuffer* pRpcChannelBuffer,
8380     PRPC_MESSAGE pRpcMessage,
8381     DWORD* pdwStubPhase);
8382 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_YearSpecified_Proxy(
8383     ISWbemDateTime* This,
8384     VARIANT_BOOL *bYearSpecified);
8385 void __RPC_STUB ISWbemDateTime_get_YearSpecified_Stub(
8386     IRpcStubBuffer* This,
8387     IRpcChannelBuffer* pRpcChannelBuffer,
8388     PRPC_MESSAGE pRpcMessage,
8389     DWORD* pdwStubPhase);
8390 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_YearSpecified_Proxy(
8391     ISWbemDateTime* This,
8392     VARIANT_BOOL bYearSpecified);
8393 void __RPC_STUB ISWbemDateTime_put_YearSpecified_Stub(
8394     IRpcStubBuffer* This,
8395     IRpcChannelBuffer* pRpcChannelBuffer,
8396     PRPC_MESSAGE pRpcMessage,
8397     DWORD* pdwStubPhase);
8398 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_Month_Proxy(
8399     ISWbemDateTime* This,
8400     LONG *iMonth);
8401 void __RPC_STUB ISWbemDateTime_get_Month_Stub(
8402     IRpcStubBuffer* This,
8403     IRpcChannelBuffer* pRpcChannelBuffer,
8404     PRPC_MESSAGE pRpcMessage,
8405     DWORD* pdwStubPhase);
8406 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_Month_Proxy(
8407     ISWbemDateTime* This,
8408     LONG iMonth);
8409 void __RPC_STUB ISWbemDateTime_put_Month_Stub(
8410     IRpcStubBuffer* This,
8411     IRpcChannelBuffer* pRpcChannelBuffer,
8412     PRPC_MESSAGE pRpcMessage,
8413     DWORD* pdwStubPhase);
8414 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_MonthSpecified_Proxy(
8415     ISWbemDateTime* This,
8416     VARIANT_BOOL *bMonthSpecified);
8417 void __RPC_STUB ISWbemDateTime_get_MonthSpecified_Stub(
8418     IRpcStubBuffer* This,
8419     IRpcChannelBuffer* pRpcChannelBuffer,
8420     PRPC_MESSAGE pRpcMessage,
8421     DWORD* pdwStubPhase);
8422 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_MonthSpecified_Proxy(
8423     ISWbemDateTime* This,
8424     VARIANT_BOOL bMonthSpecified);
8425 void __RPC_STUB ISWbemDateTime_put_MonthSpecified_Stub(
8426     IRpcStubBuffer* This,
8427     IRpcChannelBuffer* pRpcChannelBuffer,
8428     PRPC_MESSAGE pRpcMessage,
8429     DWORD* pdwStubPhase);
8430 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_Day_Proxy(
8431     ISWbemDateTime* This,
8432     LONG *iDay);
8433 void __RPC_STUB ISWbemDateTime_get_Day_Stub(
8434     IRpcStubBuffer* This,
8435     IRpcChannelBuffer* pRpcChannelBuffer,
8436     PRPC_MESSAGE pRpcMessage,
8437     DWORD* pdwStubPhase);
8438 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_Day_Proxy(
8439     ISWbemDateTime* This,
8440     LONG iDay);
8441 void __RPC_STUB ISWbemDateTime_put_Day_Stub(
8442     IRpcStubBuffer* This,
8443     IRpcChannelBuffer* pRpcChannelBuffer,
8444     PRPC_MESSAGE pRpcMessage,
8445     DWORD* pdwStubPhase);
8446 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_DaySpecified_Proxy(
8447     ISWbemDateTime* This,
8448     VARIANT_BOOL *bDaySpecified);
8449 void __RPC_STUB ISWbemDateTime_get_DaySpecified_Stub(
8450     IRpcStubBuffer* This,
8451     IRpcChannelBuffer* pRpcChannelBuffer,
8452     PRPC_MESSAGE pRpcMessage,
8453     DWORD* pdwStubPhase);
8454 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_DaySpecified_Proxy(
8455     ISWbemDateTime* This,
8456     VARIANT_BOOL bDaySpecified);
8457 void __RPC_STUB ISWbemDateTime_put_DaySpecified_Stub(
8458     IRpcStubBuffer* This,
8459     IRpcChannelBuffer* pRpcChannelBuffer,
8460     PRPC_MESSAGE pRpcMessage,
8461     DWORD* pdwStubPhase);
8462 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_Hours_Proxy(
8463     ISWbemDateTime* This,
8464     LONG *iHours);
8465 void __RPC_STUB ISWbemDateTime_get_Hours_Stub(
8466     IRpcStubBuffer* This,
8467     IRpcChannelBuffer* pRpcChannelBuffer,
8468     PRPC_MESSAGE pRpcMessage,
8469     DWORD* pdwStubPhase);
8470 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_Hours_Proxy(
8471     ISWbemDateTime* This,
8472     LONG iHours);
8473 void __RPC_STUB ISWbemDateTime_put_Hours_Stub(
8474     IRpcStubBuffer* This,
8475     IRpcChannelBuffer* pRpcChannelBuffer,
8476     PRPC_MESSAGE pRpcMessage,
8477     DWORD* pdwStubPhase);
8478 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_HoursSpecified_Proxy(
8479     ISWbemDateTime* This,
8480     VARIANT_BOOL *bHoursSpecified);
8481 void __RPC_STUB ISWbemDateTime_get_HoursSpecified_Stub(
8482     IRpcStubBuffer* This,
8483     IRpcChannelBuffer* pRpcChannelBuffer,
8484     PRPC_MESSAGE pRpcMessage,
8485     DWORD* pdwStubPhase);
8486 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_HoursSpecified_Proxy(
8487     ISWbemDateTime* This,
8488     VARIANT_BOOL bHoursSpecified);
8489 void __RPC_STUB ISWbemDateTime_put_HoursSpecified_Stub(
8490     IRpcStubBuffer* This,
8491     IRpcChannelBuffer* pRpcChannelBuffer,
8492     PRPC_MESSAGE pRpcMessage,
8493     DWORD* pdwStubPhase);
8494 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_Minutes_Proxy(
8495     ISWbemDateTime* This,
8496     LONG *iMinutes);
8497 void __RPC_STUB ISWbemDateTime_get_Minutes_Stub(
8498     IRpcStubBuffer* This,
8499     IRpcChannelBuffer* pRpcChannelBuffer,
8500     PRPC_MESSAGE pRpcMessage,
8501     DWORD* pdwStubPhase);
8502 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_Minutes_Proxy(
8503     ISWbemDateTime* This,
8504     LONG iMinutes);
8505 void __RPC_STUB ISWbemDateTime_put_Minutes_Stub(
8506     IRpcStubBuffer* This,
8507     IRpcChannelBuffer* pRpcChannelBuffer,
8508     PRPC_MESSAGE pRpcMessage,
8509     DWORD* pdwStubPhase);
8510 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_MinutesSpecified_Proxy(
8511     ISWbemDateTime* This,
8512     VARIANT_BOOL *bMinutesSpecified);
8513 void __RPC_STUB ISWbemDateTime_get_MinutesSpecified_Stub(
8514     IRpcStubBuffer* This,
8515     IRpcChannelBuffer* pRpcChannelBuffer,
8516     PRPC_MESSAGE pRpcMessage,
8517     DWORD* pdwStubPhase);
8518 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_MinutesSpecified_Proxy(
8519     ISWbemDateTime* This,
8520     VARIANT_BOOL bMinutesSpecified);
8521 void __RPC_STUB ISWbemDateTime_put_MinutesSpecified_Stub(
8522     IRpcStubBuffer* This,
8523     IRpcChannelBuffer* pRpcChannelBuffer,
8524     PRPC_MESSAGE pRpcMessage,
8525     DWORD* pdwStubPhase);
8526 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_Seconds_Proxy(
8527     ISWbemDateTime* This,
8528     LONG *iSeconds);
8529 void __RPC_STUB ISWbemDateTime_get_Seconds_Stub(
8530     IRpcStubBuffer* This,
8531     IRpcChannelBuffer* pRpcChannelBuffer,
8532     PRPC_MESSAGE pRpcMessage,
8533     DWORD* pdwStubPhase);
8534 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_Seconds_Proxy(
8535     ISWbemDateTime* This,
8536     LONG iSeconds);
8537 void __RPC_STUB ISWbemDateTime_put_Seconds_Stub(
8538     IRpcStubBuffer* This,
8539     IRpcChannelBuffer* pRpcChannelBuffer,
8540     PRPC_MESSAGE pRpcMessage,
8541     DWORD* pdwStubPhase);
8542 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_SecondsSpecified_Proxy(
8543     ISWbemDateTime* This,
8544     VARIANT_BOOL *bSecondsSpecified);
8545 void __RPC_STUB ISWbemDateTime_get_SecondsSpecified_Stub(
8546     IRpcStubBuffer* This,
8547     IRpcChannelBuffer* pRpcChannelBuffer,
8548     PRPC_MESSAGE pRpcMessage,
8549     DWORD* pdwStubPhase);
8550 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_SecondsSpecified_Proxy(
8551     ISWbemDateTime* This,
8552     VARIANT_BOOL bSecondsSpecified);
8553 void __RPC_STUB ISWbemDateTime_put_SecondsSpecified_Stub(
8554     IRpcStubBuffer* This,
8555     IRpcChannelBuffer* pRpcChannelBuffer,
8556     PRPC_MESSAGE pRpcMessage,
8557     DWORD* pdwStubPhase);
8558 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_Microseconds_Proxy(
8559     ISWbemDateTime* This,
8560     LONG *iMicroseconds);
8561 void __RPC_STUB ISWbemDateTime_get_Microseconds_Stub(
8562     IRpcStubBuffer* This,
8563     IRpcChannelBuffer* pRpcChannelBuffer,
8564     PRPC_MESSAGE pRpcMessage,
8565     DWORD* pdwStubPhase);
8566 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_Microseconds_Proxy(
8567     ISWbemDateTime* This,
8568     LONG iMicroseconds);
8569 void __RPC_STUB ISWbemDateTime_put_Microseconds_Stub(
8570     IRpcStubBuffer* This,
8571     IRpcChannelBuffer* pRpcChannelBuffer,
8572     PRPC_MESSAGE pRpcMessage,
8573     DWORD* pdwStubPhase);
8574 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_MicrosecondsSpecified_Proxy(
8575     ISWbemDateTime* This,
8576     VARIANT_BOOL *bMicrosecondsSpecified);
8577 void __RPC_STUB ISWbemDateTime_get_MicrosecondsSpecified_Stub(
8578     IRpcStubBuffer* This,
8579     IRpcChannelBuffer* pRpcChannelBuffer,
8580     PRPC_MESSAGE pRpcMessage,
8581     DWORD* pdwStubPhase);
8582 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_MicrosecondsSpecified_Proxy(
8583     ISWbemDateTime* This,
8584     VARIANT_BOOL bMicrosecondsSpecified);
8585 void __RPC_STUB ISWbemDateTime_put_MicrosecondsSpecified_Stub(
8586     IRpcStubBuffer* This,
8587     IRpcChannelBuffer* pRpcChannelBuffer,
8588     PRPC_MESSAGE pRpcMessage,
8589     DWORD* pdwStubPhase);
8590 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_UTC_Proxy(
8591     ISWbemDateTime* This,
8592     LONG *iUTC);
8593 void __RPC_STUB ISWbemDateTime_get_UTC_Stub(
8594     IRpcStubBuffer* This,
8595     IRpcChannelBuffer* pRpcChannelBuffer,
8596     PRPC_MESSAGE pRpcMessage,
8597     DWORD* pdwStubPhase);
8598 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_UTC_Proxy(
8599     ISWbemDateTime* This,
8600     LONG iUTC);
8601 void __RPC_STUB ISWbemDateTime_put_UTC_Stub(
8602     IRpcStubBuffer* This,
8603     IRpcChannelBuffer* pRpcChannelBuffer,
8604     PRPC_MESSAGE pRpcMessage,
8605     DWORD* pdwStubPhase);
8606 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_UTCSpecified_Proxy(
8607     ISWbemDateTime* This,
8608     VARIANT_BOOL *bUTCSpecified);
8609 void __RPC_STUB ISWbemDateTime_get_UTCSpecified_Stub(
8610     IRpcStubBuffer* This,
8611     IRpcChannelBuffer* pRpcChannelBuffer,
8612     PRPC_MESSAGE pRpcMessage,
8613     DWORD* pdwStubPhase);
8614 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_UTCSpecified_Proxy(
8615     ISWbemDateTime* This,
8616     VARIANT_BOOL bUTCSpecified);
8617 void __RPC_STUB ISWbemDateTime_put_UTCSpecified_Stub(
8618     IRpcStubBuffer* This,
8619     IRpcChannelBuffer* pRpcChannelBuffer,
8620     PRPC_MESSAGE pRpcMessage,
8621     DWORD* pdwStubPhase);
8622 HRESULT STDMETHODCALLTYPE ISWbemDateTime_get_IsInterval_Proxy(
8623     ISWbemDateTime* This,
8624     VARIANT_BOOL *bIsInterval);
8625 void __RPC_STUB ISWbemDateTime_get_IsInterval_Stub(
8626     IRpcStubBuffer* This,
8627     IRpcChannelBuffer* pRpcChannelBuffer,
8628     PRPC_MESSAGE pRpcMessage,
8629     DWORD* pdwStubPhase);
8630 HRESULT STDMETHODCALLTYPE ISWbemDateTime_put_IsInterval_Proxy(
8631     ISWbemDateTime* This,
8632     VARIANT_BOOL bIsInterval);
8633 void __RPC_STUB ISWbemDateTime_put_IsInterval_Stub(
8634     IRpcStubBuffer* This,
8635     IRpcChannelBuffer* pRpcChannelBuffer,
8636     PRPC_MESSAGE pRpcMessage,
8637     DWORD* pdwStubPhase);
8638 HRESULT STDMETHODCALLTYPE ISWbemDateTime_GetVarDate_Proxy(
8639     ISWbemDateTime* This,
8640     VARIANT_BOOL bIsLocal,
8641     DATE *dVarDate);
8642 void __RPC_STUB ISWbemDateTime_GetVarDate_Stub(
8643     IRpcStubBuffer* This,
8644     IRpcChannelBuffer* pRpcChannelBuffer,
8645     PRPC_MESSAGE pRpcMessage,
8646     DWORD* pdwStubPhase);
8647 HRESULT STDMETHODCALLTYPE ISWbemDateTime_SetVarDate_Proxy(
8648     ISWbemDateTime* This,
8649     DATE dVarDate,
8650     VARIANT_BOOL bIsLocal);
8651 void __RPC_STUB ISWbemDateTime_SetVarDate_Stub(
8652     IRpcStubBuffer* This,
8653     IRpcChannelBuffer* pRpcChannelBuffer,
8654     PRPC_MESSAGE pRpcMessage,
8655     DWORD* pdwStubPhase);
8656 HRESULT STDMETHODCALLTYPE ISWbemDateTime_GetFileTime_Proxy(
8657     ISWbemDateTime* This,
8658     VARIANT_BOOL bIsLocal,
8659     BSTR *strFileTime);
8660 void __RPC_STUB ISWbemDateTime_GetFileTime_Stub(
8661     IRpcStubBuffer* This,
8662     IRpcChannelBuffer* pRpcChannelBuffer,
8663     PRPC_MESSAGE pRpcMessage,
8664     DWORD* pdwStubPhase);
8665 HRESULT STDMETHODCALLTYPE ISWbemDateTime_SetFileTime_Proxy(
8666     ISWbemDateTime* This,
8667     BSTR strFileTime,
8668     VARIANT_BOOL bIsLocal);
8669 void __RPC_STUB ISWbemDateTime_SetFileTime_Stub(
8670     IRpcStubBuffer* This,
8671     IRpcChannelBuffer* pRpcChannelBuffer,
8672     PRPC_MESSAGE pRpcMessage,
8673     DWORD* pdwStubPhase);
8674 
8675 #endif  /* __ISWbemDateTime_INTERFACE_DEFINED__ */
8676 
8677 /*****************************************************************************
8678  * ISWbemRefreshableItem interface
8679  */
8680 #ifndef __ISWbemRefreshableItem_INTERFACE_DEFINED__
8681 #define __ISWbemRefreshableItem_INTERFACE_DEFINED__
8682 
8683 DEFINE_GUID(IID_ISWbemRefreshableItem, 0x5ad4bf92, 0xdaab, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a);
8684 #if defined(__cplusplus) && !defined(CINTERFACE)
8685 MIDL_INTERFACE("5ad4bf92-daab-11d3-b38f-00105a1f473a")
8686 ISWbemRefreshableItem : public IDispatch
8687 {
8688     virtual HRESULT STDMETHODCALLTYPE get_Index(
8689         LONG *iIndex) = 0;
8690 
8691     virtual HRESULT STDMETHODCALLTYPE get_Refresher(
8692         ISWbemRefresher **objWbemRefresher) = 0;
8693 
8694     virtual HRESULT STDMETHODCALLTYPE get_IsSet(
8695         VARIANT_BOOL *bIsSet) = 0;
8696 
8697     virtual HRESULT STDMETHODCALLTYPE get_Object(
8698         ISWbemObjectEx **objWbemObject) = 0;
8699 
8700     virtual HRESULT STDMETHODCALLTYPE get_ObjectSet(
8701         ISWbemObjectSet **objWbemObjectSet) = 0;
8702 
8703     virtual HRESULT STDMETHODCALLTYPE Remove(
8704         LONG iFlags = 0) = 0;
8705 
8706 };
8707 #ifdef __CRT_UUID_DECL
8708 __CRT_UUID_DECL(ISWbemRefreshableItem, 0x5ad4bf92, 0xdaab, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a)
8709 #endif
8710 #else
8711 typedef struct ISWbemRefreshableItemVtbl {
8712     BEGIN_INTERFACE
8713 
8714     /*** IUnknown methods ***/
8715     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8716         ISWbemRefreshableItem* This,
8717         REFIID riid,
8718         void **ppvObject);
8719 
8720     ULONG (STDMETHODCALLTYPE *AddRef)(
8721         ISWbemRefreshableItem* This);
8722 
8723     ULONG (STDMETHODCALLTYPE *Release)(
8724         ISWbemRefreshableItem* This);
8725 
8726     /*** IDispatch methods ***/
8727     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
8728         ISWbemRefreshableItem* This,
8729         UINT *pctinfo);
8730 
8731     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
8732         ISWbemRefreshableItem* This,
8733         UINT iTInfo,
8734         LCID lcid,
8735         ITypeInfo **ppTInfo);
8736 
8737     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
8738         ISWbemRefreshableItem* This,
8739         REFIID riid,
8740         LPOLESTR *rgszNames,
8741         UINT cNames,
8742         LCID lcid,
8743         DISPID *rgDispId);
8744 
8745     HRESULT (STDMETHODCALLTYPE *Invoke)(
8746         ISWbemRefreshableItem* This,
8747         DISPID dispIdMember,
8748         REFIID riid,
8749         LCID lcid,
8750         WORD wFlags,
8751         DISPPARAMS *pDispParams,
8752         VARIANT *pVarResult,
8753         EXCEPINFO *pExcepInfo,
8754         UINT *puArgErr);
8755 
8756     /*** ISWbemRefreshableItem methods ***/
8757     HRESULT (STDMETHODCALLTYPE *get_Index)(
8758         ISWbemRefreshableItem* This,
8759         LONG *iIndex);
8760 
8761     HRESULT (STDMETHODCALLTYPE *get_Refresher)(
8762         ISWbemRefreshableItem* This,
8763         ISWbemRefresher **objWbemRefresher);
8764 
8765     HRESULT (STDMETHODCALLTYPE *get_IsSet)(
8766         ISWbemRefreshableItem* This,
8767         VARIANT_BOOL *bIsSet);
8768 
8769     HRESULT (STDMETHODCALLTYPE *get_Object)(
8770         ISWbemRefreshableItem* This,
8771         ISWbemObjectEx **objWbemObject);
8772 
8773     HRESULT (STDMETHODCALLTYPE *get_ObjectSet)(
8774         ISWbemRefreshableItem* This,
8775         ISWbemObjectSet **objWbemObjectSet);
8776 
8777     HRESULT (STDMETHODCALLTYPE *Remove)(
8778         ISWbemRefreshableItem* This,
8779         LONG iFlags);
8780 
8781     END_INTERFACE
8782 } ISWbemRefreshableItemVtbl;
8783 interface ISWbemRefreshableItem {
8784     CONST_VTBL ISWbemRefreshableItemVtbl* lpVtbl;
8785 };
8786 
8787 #ifdef COBJMACROS
8788 #ifndef WIDL_C_INLINE_WRAPPERS
8789 /*** IUnknown methods ***/
8790 #define ISWbemRefreshableItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
8791 #define ISWbemRefreshableItem_AddRef(This) (This)->lpVtbl->AddRef(This)
8792 #define ISWbemRefreshableItem_Release(This) (This)->lpVtbl->Release(This)
8793 /*** IDispatch methods ***/
8794 #define ISWbemRefreshableItem_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
8795 #define ISWbemRefreshableItem_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
8796 #define ISWbemRefreshableItem_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
8797 #define ISWbemRefreshableItem_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
8798 /*** ISWbemRefreshableItem methods ***/
8799 #define ISWbemRefreshableItem_get_Index(This,iIndex) (This)->lpVtbl->get_Index(This,iIndex)
8800 #define ISWbemRefreshableItem_get_Refresher(This,objWbemRefresher) (This)->lpVtbl->get_Refresher(This,objWbemRefresher)
8801 #define ISWbemRefreshableItem_get_IsSet(This,bIsSet) (This)->lpVtbl->get_IsSet(This,bIsSet)
8802 #define ISWbemRefreshableItem_get_Object(This,objWbemObject) (This)->lpVtbl->get_Object(This,objWbemObject)
8803 #define ISWbemRefreshableItem_get_ObjectSet(This,objWbemObjectSet) (This)->lpVtbl->get_ObjectSet(This,objWbemObjectSet)
8804 #define ISWbemRefreshableItem_Remove(This,iFlags) (This)->lpVtbl->Remove(This,iFlags)
8805 #else
8806 /*** IUnknown methods ***/
8807 static FORCEINLINE HRESULT ISWbemRefreshableItem_QueryInterface(ISWbemRefreshableItem* This,REFIID riid,void **ppvObject) {
8808     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
8809 }
8810 static FORCEINLINE ULONG ISWbemRefreshableItem_AddRef(ISWbemRefreshableItem* This) {
8811     return This->lpVtbl->AddRef(This);
8812 }
8813 static FORCEINLINE ULONG ISWbemRefreshableItem_Release(ISWbemRefreshableItem* This) {
8814     return This->lpVtbl->Release(This);
8815 }
8816 /*** IDispatch methods ***/
8817 static FORCEINLINE HRESULT ISWbemRefreshableItem_GetTypeInfoCount(ISWbemRefreshableItem* This,UINT *pctinfo) {
8818     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
8819 }
8820 static FORCEINLINE HRESULT ISWbemRefreshableItem_GetTypeInfo(ISWbemRefreshableItem* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
8821     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
8822 }
8823 static FORCEINLINE HRESULT ISWbemRefreshableItem_GetIDsOfNames(ISWbemRefreshableItem* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
8824     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
8825 }
8826 static FORCEINLINE HRESULT ISWbemRefreshableItem_Invoke(ISWbemRefreshableItem* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
8827     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
8828 }
8829 /*** ISWbemRefreshableItem methods ***/
8830 static FORCEINLINE HRESULT ISWbemRefreshableItem_get_Index(ISWbemRefreshableItem* This,LONG *iIndex) {
8831     return This->lpVtbl->get_Index(This,iIndex);
8832 }
8833 static FORCEINLINE HRESULT ISWbemRefreshableItem_get_Refresher(ISWbemRefreshableItem* This,ISWbemRefresher **objWbemRefresher) {
8834     return This->lpVtbl->get_Refresher(This,objWbemRefresher);
8835 }
8836 static FORCEINLINE HRESULT ISWbemRefreshableItem_get_IsSet(ISWbemRefreshableItem* This,VARIANT_BOOL *bIsSet) {
8837     return This->lpVtbl->get_IsSet(This,bIsSet);
8838 }
8839 static FORCEINLINE HRESULT ISWbemRefreshableItem_get_Object(ISWbemRefreshableItem* This,ISWbemObjectEx **objWbemObject) {
8840     return This->lpVtbl->get_Object(This,objWbemObject);
8841 }
8842 static FORCEINLINE HRESULT ISWbemRefreshableItem_get_ObjectSet(ISWbemRefreshableItem* This,ISWbemObjectSet **objWbemObjectSet) {
8843     return This->lpVtbl->get_ObjectSet(This,objWbemObjectSet);
8844 }
8845 static FORCEINLINE HRESULT ISWbemRefreshableItem_Remove(ISWbemRefreshableItem* This,LONG iFlags) {
8846     return This->lpVtbl->Remove(This,iFlags);
8847 }
8848 #endif
8849 #endif
8850 
8851 #endif
8852 
8853 HRESULT STDMETHODCALLTYPE ISWbemRefreshableItem_get_Index_Proxy(
8854     ISWbemRefreshableItem* This,
8855     LONG *iIndex);
8856 void __RPC_STUB ISWbemRefreshableItem_get_Index_Stub(
8857     IRpcStubBuffer* This,
8858     IRpcChannelBuffer* pRpcChannelBuffer,
8859     PRPC_MESSAGE pRpcMessage,
8860     DWORD* pdwStubPhase);
8861 HRESULT STDMETHODCALLTYPE ISWbemRefreshableItem_get_Refresher_Proxy(
8862     ISWbemRefreshableItem* This,
8863     ISWbemRefresher **objWbemRefresher);
8864 void __RPC_STUB ISWbemRefreshableItem_get_Refresher_Stub(
8865     IRpcStubBuffer* This,
8866     IRpcChannelBuffer* pRpcChannelBuffer,
8867     PRPC_MESSAGE pRpcMessage,
8868     DWORD* pdwStubPhase);
8869 HRESULT STDMETHODCALLTYPE ISWbemRefreshableItem_get_IsSet_Proxy(
8870     ISWbemRefreshableItem* This,
8871     VARIANT_BOOL *bIsSet);
8872 void __RPC_STUB ISWbemRefreshableItem_get_IsSet_Stub(
8873     IRpcStubBuffer* This,
8874     IRpcChannelBuffer* pRpcChannelBuffer,
8875     PRPC_MESSAGE pRpcMessage,
8876     DWORD* pdwStubPhase);
8877 HRESULT STDMETHODCALLTYPE ISWbemRefreshableItem_get_Object_Proxy(
8878     ISWbemRefreshableItem* This,
8879     ISWbemObjectEx **objWbemObject);
8880 void __RPC_STUB ISWbemRefreshableItem_get_Object_Stub(
8881     IRpcStubBuffer* This,
8882     IRpcChannelBuffer* pRpcChannelBuffer,
8883     PRPC_MESSAGE pRpcMessage,
8884     DWORD* pdwStubPhase);
8885 HRESULT STDMETHODCALLTYPE ISWbemRefreshableItem_get_ObjectSet_Proxy(
8886     ISWbemRefreshableItem* This,
8887     ISWbemObjectSet **objWbemObjectSet);
8888 void __RPC_STUB ISWbemRefreshableItem_get_ObjectSet_Stub(
8889     IRpcStubBuffer* This,
8890     IRpcChannelBuffer* pRpcChannelBuffer,
8891     PRPC_MESSAGE pRpcMessage,
8892     DWORD* pdwStubPhase);
8893 HRESULT STDMETHODCALLTYPE ISWbemRefreshableItem_Remove_Proxy(
8894     ISWbemRefreshableItem* This,
8895     LONG iFlags);
8896 void __RPC_STUB ISWbemRefreshableItem_Remove_Stub(
8897     IRpcStubBuffer* This,
8898     IRpcChannelBuffer* pRpcChannelBuffer,
8899     PRPC_MESSAGE pRpcMessage,
8900     DWORD* pdwStubPhase);
8901 
8902 #endif  /* __ISWbemRefreshableItem_INTERFACE_DEFINED__ */
8903 
8904 /*****************************************************************************
8905  * ISWbemRefresher interface
8906  */
8907 #ifndef __ISWbemRefresher_INTERFACE_DEFINED__
8908 #define __ISWbemRefresher_INTERFACE_DEFINED__
8909 
8910 DEFINE_GUID(IID_ISWbemRefresher, 0x14d8250e, 0xd9c2, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a);
8911 #if defined(__cplusplus) && !defined(CINTERFACE)
8912 MIDL_INTERFACE("14d8250e-d9c2-11d3-b38f-00105a1f473a")
8913 ISWbemRefresher : public IDispatch
8914 {
8915     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
8916         IUnknown **pUnk) = 0;
8917 
8918     virtual HRESULT STDMETHODCALLTYPE Item(
8919         LONG iIndex,
8920         ISWbemRefreshableItem **objWbemRefreshableItem) = 0;
8921 
8922     virtual HRESULT STDMETHODCALLTYPE get_Count(
8923         LONG *iCount) = 0;
8924 
8925     virtual HRESULT STDMETHODCALLTYPE Add(
8926         ISWbemServicesEx *objWbemServices,
8927         BSTR bsInstancePath,
8928         LONG iFlags = 0,
8929         IDispatch *objWbemNamedValueSet = 0,
8930         ISWbemRefreshableItem **objWbemRefreshableItem = 0) = 0;
8931 
8932     virtual HRESULT STDMETHODCALLTYPE AddEnum(
8933         ISWbemServicesEx *objWbemServices,
8934         BSTR bsClassName,
8935         LONG iFlags = 0,
8936         IDispatch *objWbemNamedValueSet = 0,
8937         ISWbemRefreshableItem **objWbemRefreshableItem = 0) = 0;
8938 
8939     virtual HRESULT STDMETHODCALLTYPE Remove(
8940         LONG iIndex,
8941         LONG iFlags = 0) = 0;
8942 
8943     virtual HRESULT STDMETHODCALLTYPE Refresh(
8944         LONG iFlags = 0) = 0;
8945 
8946     virtual HRESULT STDMETHODCALLTYPE get_AutoReconnect(
8947         VARIANT_BOOL *bCount) = 0;
8948 
8949     virtual HRESULT STDMETHODCALLTYPE put_AutoReconnect(
8950         VARIANT_BOOL bCount) = 0;
8951 
8952     virtual HRESULT STDMETHODCALLTYPE DeleteAll(
8953         ) = 0;
8954 
8955 };
8956 #ifdef __CRT_UUID_DECL
8957 __CRT_UUID_DECL(ISWbemRefresher, 0x14d8250e, 0xd9c2, 0x11d3, 0xb3,0x8f, 0x00,0x10,0x5a,0x1f,0x47,0x3a)
8958 #endif
8959 #else
8960 typedef struct ISWbemRefresherVtbl {
8961     BEGIN_INTERFACE
8962 
8963     /*** IUnknown methods ***/
8964     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
8965         ISWbemRefresher* This,
8966         REFIID riid,
8967         void **ppvObject);
8968 
8969     ULONG (STDMETHODCALLTYPE *AddRef)(
8970         ISWbemRefresher* This);
8971 
8972     ULONG (STDMETHODCALLTYPE *Release)(
8973         ISWbemRefresher* This);
8974 
8975     /*** IDispatch methods ***/
8976     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
8977         ISWbemRefresher* This,
8978         UINT *pctinfo);
8979 
8980     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
8981         ISWbemRefresher* This,
8982         UINT iTInfo,
8983         LCID lcid,
8984         ITypeInfo **ppTInfo);
8985 
8986     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
8987         ISWbemRefresher* This,
8988         REFIID riid,
8989         LPOLESTR *rgszNames,
8990         UINT cNames,
8991         LCID lcid,
8992         DISPID *rgDispId);
8993 
8994     HRESULT (STDMETHODCALLTYPE *Invoke)(
8995         ISWbemRefresher* This,
8996         DISPID dispIdMember,
8997         REFIID riid,
8998         LCID lcid,
8999         WORD wFlags,
9000         DISPPARAMS *pDispParams,
9001         VARIANT *pVarResult,
9002         EXCEPINFO *pExcepInfo,
9003         UINT *puArgErr);
9004 
9005     /*** ISWbemRefresher methods ***/
9006     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
9007         ISWbemRefresher* This,
9008         IUnknown **pUnk);
9009 
9010     HRESULT (STDMETHODCALLTYPE *Item)(
9011         ISWbemRefresher* This,
9012         LONG iIndex,
9013         ISWbemRefreshableItem **objWbemRefreshableItem);
9014 
9015     HRESULT (STDMETHODCALLTYPE *get_Count)(
9016         ISWbemRefresher* This,
9017         LONG *iCount);
9018 
9019     HRESULT (STDMETHODCALLTYPE *Add)(
9020         ISWbemRefresher* This,
9021         ISWbemServicesEx *objWbemServices,
9022         BSTR bsInstancePath,
9023         LONG iFlags,
9024         IDispatch *objWbemNamedValueSet,
9025         ISWbemRefreshableItem **objWbemRefreshableItem);
9026 
9027     HRESULT (STDMETHODCALLTYPE *AddEnum)(
9028         ISWbemRefresher* This,
9029         ISWbemServicesEx *objWbemServices,
9030         BSTR bsClassName,
9031         LONG iFlags,
9032         IDispatch *objWbemNamedValueSet,
9033         ISWbemRefreshableItem **objWbemRefreshableItem);
9034 
9035     HRESULT (STDMETHODCALLTYPE *Remove)(
9036         ISWbemRefresher* This,
9037         LONG iIndex,
9038         LONG iFlags);
9039 
9040     HRESULT (STDMETHODCALLTYPE *Refresh)(
9041         ISWbemRefresher* This,
9042         LONG iFlags);
9043 
9044     HRESULT (STDMETHODCALLTYPE *get_AutoReconnect)(
9045         ISWbemRefresher* This,
9046         VARIANT_BOOL *bCount);
9047 
9048     HRESULT (STDMETHODCALLTYPE *put_AutoReconnect)(
9049         ISWbemRefresher* This,
9050         VARIANT_BOOL bCount);
9051 
9052     HRESULT (STDMETHODCALLTYPE *DeleteAll)(
9053         ISWbemRefresher* This);
9054 
9055     END_INTERFACE
9056 } ISWbemRefresherVtbl;
9057 interface ISWbemRefresher {
9058     CONST_VTBL ISWbemRefresherVtbl* lpVtbl;
9059 };
9060 
9061 #ifdef COBJMACROS
9062 #ifndef WIDL_C_INLINE_WRAPPERS
9063 /*** IUnknown methods ***/
9064 #define ISWbemRefresher_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
9065 #define ISWbemRefresher_AddRef(This) (This)->lpVtbl->AddRef(This)
9066 #define ISWbemRefresher_Release(This) (This)->lpVtbl->Release(This)
9067 /*** IDispatch methods ***/
9068 #define ISWbemRefresher_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
9069 #define ISWbemRefresher_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
9070 #define ISWbemRefresher_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
9071 #define ISWbemRefresher_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
9072 /*** ISWbemRefresher methods ***/
9073 #define ISWbemRefresher_get__NewEnum(This,pUnk) (This)->lpVtbl->get__NewEnum(This,pUnk)
9074 #define ISWbemRefresher_Item(This,iIndex,objWbemRefreshableItem) (This)->lpVtbl->Item(This,iIndex,objWbemRefreshableItem)
9075 #define ISWbemRefresher_get_Count(This,iCount) (This)->lpVtbl->get_Count(This,iCount)
9076 #define ISWbemRefresher_Add(This,objWbemServices,bsInstancePath,iFlags,objWbemNamedValueSet,objWbemRefreshableItem) (This)->lpVtbl->Add(This,objWbemServices,bsInstancePath,iFlags,objWbemNamedValueSet,objWbemRefreshableItem)
9077 #define ISWbemRefresher_AddEnum(This,objWbemServices,bsClassName,iFlags,objWbemNamedValueSet,objWbemRefreshableItem) (This)->lpVtbl->AddEnum(This,objWbemServices,bsClassName,iFlags,objWbemNamedValueSet,objWbemRefreshableItem)
9078 #define ISWbemRefresher_Remove(This,iIndex,iFlags) (This)->lpVtbl->Remove(This,iIndex,iFlags)
9079 #define ISWbemRefresher_Refresh(This,iFlags) (This)->lpVtbl->Refresh(This,iFlags)
9080 #define ISWbemRefresher_get_AutoReconnect(This,bCount) (This)->lpVtbl->get_AutoReconnect(This,bCount)
9081 #define ISWbemRefresher_put_AutoReconnect(This,bCount) (This)->lpVtbl->put_AutoReconnect(This,bCount)
9082 #define ISWbemRefresher_DeleteAll(This) (This)->lpVtbl->DeleteAll(This)
9083 #else
9084 /*** IUnknown methods ***/
9085 static FORCEINLINE HRESULT ISWbemRefresher_QueryInterface(ISWbemRefresher* This,REFIID riid,void **ppvObject) {
9086     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
9087 }
9088 static FORCEINLINE ULONG ISWbemRefresher_AddRef(ISWbemRefresher* This) {
9089     return This->lpVtbl->AddRef(This);
9090 }
9091 static FORCEINLINE ULONG ISWbemRefresher_Release(ISWbemRefresher* This) {
9092     return This->lpVtbl->Release(This);
9093 }
9094 /*** IDispatch methods ***/
9095 static FORCEINLINE HRESULT ISWbemRefresher_GetTypeInfoCount(ISWbemRefresher* This,UINT *pctinfo) {
9096     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
9097 }
9098 static FORCEINLINE HRESULT ISWbemRefresher_GetTypeInfo(ISWbemRefresher* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
9099     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
9100 }
9101 static FORCEINLINE HRESULT ISWbemRefresher_GetIDsOfNames(ISWbemRefresher* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
9102     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
9103 }
9104 static FORCEINLINE HRESULT ISWbemRefresher_Invoke(ISWbemRefresher* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
9105     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
9106 }
9107 /*** ISWbemRefresher methods ***/
9108 static FORCEINLINE HRESULT ISWbemRefresher_get__NewEnum(ISWbemRefresher* This,IUnknown **pUnk) {
9109     return This->lpVtbl->get__NewEnum(This,pUnk);
9110 }
9111 static FORCEINLINE HRESULT ISWbemRefresher_Item(ISWbemRefresher* This,LONG iIndex,ISWbemRefreshableItem **objWbemRefreshableItem) {
9112     return This->lpVtbl->Item(This,iIndex,objWbemRefreshableItem);
9113 }
9114 static FORCEINLINE HRESULT ISWbemRefresher_get_Count(ISWbemRefresher* This,LONG *iCount) {
9115     return This->lpVtbl->get_Count(This,iCount);
9116 }
9117 static FORCEINLINE HRESULT ISWbemRefresher_Add(ISWbemRefresher* This,ISWbemServicesEx *objWbemServices,BSTR bsInstancePath,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemRefreshableItem **objWbemRefreshableItem) {
9118     return This->lpVtbl->Add(This,objWbemServices,bsInstancePath,iFlags,objWbemNamedValueSet,objWbemRefreshableItem);
9119 }
9120 static FORCEINLINE HRESULT ISWbemRefresher_AddEnum(ISWbemRefresher* This,ISWbemServicesEx *objWbemServices,BSTR bsClassName,LONG iFlags,IDispatch *objWbemNamedValueSet,ISWbemRefreshableItem **objWbemRefreshableItem) {
9121     return This->lpVtbl->AddEnum(This,objWbemServices,bsClassName,iFlags,objWbemNamedValueSet,objWbemRefreshableItem);
9122 }
9123 static FORCEINLINE HRESULT ISWbemRefresher_Remove(ISWbemRefresher* This,LONG iIndex,LONG iFlags) {
9124     return This->lpVtbl->Remove(This,iIndex,iFlags);
9125 }
9126 static FORCEINLINE HRESULT ISWbemRefresher_Refresh(ISWbemRefresher* This,LONG iFlags) {
9127     return This->lpVtbl->Refresh(This,iFlags);
9128 }
9129 static FORCEINLINE HRESULT ISWbemRefresher_get_AutoReconnect(ISWbemRefresher* This,VARIANT_BOOL *bCount) {
9130     return This->lpVtbl->get_AutoReconnect(This,bCount);
9131 }
9132 static FORCEINLINE HRESULT ISWbemRefresher_put_AutoReconnect(ISWbemRefresher* This,VARIANT_BOOL bCount) {
9133     return This->lpVtbl->put_AutoReconnect(This,bCount);
9134 }
9135 static FORCEINLINE HRESULT ISWbemRefresher_DeleteAll(ISWbemRefresher* This) {
9136     return This->lpVtbl->DeleteAll(This);
9137 }
9138 #endif
9139 #endif
9140 
9141 #endif
9142 
9143 HRESULT STDMETHODCALLTYPE ISWbemRefresher_get__NewEnum_Proxy(
9144     ISWbemRefresher* This,
9145     IUnknown **pUnk);
9146 void __RPC_STUB ISWbemRefresher_get__NewEnum_Stub(
9147     IRpcStubBuffer* This,
9148     IRpcChannelBuffer* pRpcChannelBuffer,
9149     PRPC_MESSAGE pRpcMessage,
9150     DWORD* pdwStubPhase);
9151 HRESULT STDMETHODCALLTYPE ISWbemRefresher_Item_Proxy(
9152     ISWbemRefresher* This,
9153     LONG iIndex,
9154     ISWbemRefreshableItem **objWbemRefreshableItem);
9155 void __RPC_STUB ISWbemRefresher_Item_Stub(
9156     IRpcStubBuffer* This,
9157     IRpcChannelBuffer* pRpcChannelBuffer,
9158     PRPC_MESSAGE pRpcMessage,
9159     DWORD* pdwStubPhase);
9160 HRESULT STDMETHODCALLTYPE ISWbemRefresher_get_Count_Proxy(
9161     ISWbemRefresher* This,
9162     LONG *iCount);
9163 void __RPC_STUB ISWbemRefresher_get_Count_Stub(
9164     IRpcStubBuffer* This,
9165     IRpcChannelBuffer* pRpcChannelBuffer,
9166     PRPC_MESSAGE pRpcMessage,
9167     DWORD* pdwStubPhase);
9168 HRESULT STDMETHODCALLTYPE ISWbemRefresher_Add_Proxy(
9169     ISWbemRefresher* This,
9170     ISWbemServicesEx *objWbemServices,
9171     BSTR bsInstancePath,
9172     LONG iFlags,
9173     IDispatch *objWbemNamedValueSet,
9174     ISWbemRefreshableItem **objWbemRefreshableItem);
9175 void __RPC_STUB ISWbemRefresher_Add_Stub(
9176     IRpcStubBuffer* This,
9177     IRpcChannelBuffer* pRpcChannelBuffer,
9178     PRPC_MESSAGE pRpcMessage,
9179     DWORD* pdwStubPhase);
9180 HRESULT STDMETHODCALLTYPE ISWbemRefresher_AddEnum_Proxy(
9181     ISWbemRefresher* This,
9182     ISWbemServicesEx *objWbemServices,
9183     BSTR bsClassName,
9184     LONG iFlags,
9185     IDispatch *objWbemNamedValueSet,
9186     ISWbemRefreshableItem **objWbemRefreshableItem);
9187 void __RPC_STUB ISWbemRefresher_AddEnum_Stub(
9188     IRpcStubBuffer* This,
9189     IRpcChannelBuffer* pRpcChannelBuffer,
9190     PRPC_MESSAGE pRpcMessage,
9191     DWORD* pdwStubPhase);
9192 HRESULT STDMETHODCALLTYPE ISWbemRefresher_Remove_Proxy(
9193     ISWbemRefresher* This,
9194     LONG iIndex,
9195     LONG iFlags);
9196 void __RPC_STUB ISWbemRefresher_Remove_Stub(
9197     IRpcStubBuffer* This,
9198     IRpcChannelBuffer* pRpcChannelBuffer,
9199     PRPC_MESSAGE pRpcMessage,
9200     DWORD* pdwStubPhase);
9201 HRESULT STDMETHODCALLTYPE ISWbemRefresher_Refresh_Proxy(
9202     ISWbemRefresher* This,
9203     LONG iFlags);
9204 void __RPC_STUB ISWbemRefresher_Refresh_Stub(
9205     IRpcStubBuffer* This,
9206     IRpcChannelBuffer* pRpcChannelBuffer,
9207     PRPC_MESSAGE pRpcMessage,
9208     DWORD* pdwStubPhase);
9209 HRESULT STDMETHODCALLTYPE ISWbemRefresher_get_AutoReconnect_Proxy(
9210     ISWbemRefresher* This,
9211     VARIANT_BOOL *bCount);
9212 void __RPC_STUB ISWbemRefresher_get_AutoReconnect_Stub(
9213     IRpcStubBuffer* This,
9214     IRpcChannelBuffer* pRpcChannelBuffer,
9215     PRPC_MESSAGE pRpcMessage,
9216     DWORD* pdwStubPhase);
9217 HRESULT STDMETHODCALLTYPE ISWbemRefresher_put_AutoReconnect_Proxy(
9218     ISWbemRefresher* This,
9219     VARIANT_BOOL bCount);
9220 void __RPC_STUB ISWbemRefresher_put_AutoReconnect_Stub(
9221     IRpcStubBuffer* This,
9222     IRpcChannelBuffer* pRpcChannelBuffer,
9223     PRPC_MESSAGE pRpcMessage,
9224     DWORD* pdwStubPhase);
9225 HRESULT STDMETHODCALLTYPE ISWbemRefresher_DeleteAll_Proxy(
9226     ISWbemRefresher* This);
9227 void __RPC_STUB ISWbemRefresher_DeleteAll_Stub(
9228     IRpcStubBuffer* This,
9229     IRpcChannelBuffer* pRpcChannelBuffer,
9230     PRPC_MESSAGE pRpcMessage,
9231     DWORD* pdwStubPhase);
9232 
9233 #endif  /* __ISWbemRefresher_INTERFACE_DEFINED__ */
9234 
9235 #endif
9236 /* Begin additional prototypes for all interfaces */
9237 
9238 
9239 /* End additional prototypes */
9240 
9241 #ifdef __cplusplus
9242 }
9243 #endif
9244 
9245 #endif /* __wbemdisp_h__ */
9246