Home | History | Annotate | Download | only in include
      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