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