master
   1/*** Autogenerated by WIDL 10.4 from include/netcfgx.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 __netcfgx_h__
  17#define __netcfgx_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __IEnumNetCfgBindingInterface_FWD_DEFINED__
  22#define __IEnumNetCfgBindingInterface_FWD_DEFINED__
  23typedef interface IEnumNetCfgBindingInterface IEnumNetCfgBindingInterface;
  24#ifdef __cplusplus
  25interface IEnumNetCfgBindingInterface;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __IEnumNetCfgBindingPath_FWD_DEFINED__
  30#define __IEnumNetCfgBindingPath_FWD_DEFINED__
  31typedef interface IEnumNetCfgBindingPath IEnumNetCfgBindingPath;
  32#ifdef __cplusplus
  33interface IEnumNetCfgBindingPath;
  34#endif /* __cplusplus */
  35#endif
  36
  37#ifndef __IEnumNetCfgComponent_FWD_DEFINED__
  38#define __IEnumNetCfgComponent_FWD_DEFINED__
  39typedef interface IEnumNetCfgComponent IEnumNetCfgComponent;
  40#ifdef __cplusplus
  41interface IEnumNetCfgComponent;
  42#endif /* __cplusplus */
  43#endif
  44
  45#ifndef __INetCfg_FWD_DEFINED__
  46#define __INetCfg_FWD_DEFINED__
  47typedef interface INetCfg INetCfg;
  48#ifdef __cplusplus
  49interface INetCfg;
  50#endif /* __cplusplus */
  51#endif
  52
  53#ifndef __CNetCfg_FWD_DEFINED__
  54#define __CNetCfg_FWD_DEFINED__
  55#ifdef __cplusplus
  56typedef class CNetCfg CNetCfg;
  57#else
  58typedef struct CNetCfg CNetCfg;
  59#endif /* defined __cplusplus */
  60#endif /* defined __CNetCfg_FWD_DEFINED__ */
  61
  62#ifndef __INetCfgLock_FWD_DEFINED__
  63#define __INetCfgLock_FWD_DEFINED__
  64typedef interface INetCfgLock INetCfgLock;
  65#ifdef __cplusplus
  66interface INetCfgLock;
  67#endif /* __cplusplus */
  68#endif
  69
  70#ifndef __INetCfgBindingInterface_FWD_DEFINED__
  71#define __INetCfgBindingInterface_FWD_DEFINED__
  72typedef interface INetCfgBindingInterface INetCfgBindingInterface;
  73#ifdef __cplusplus
  74interface INetCfgBindingInterface;
  75#endif /* __cplusplus */
  76#endif
  77
  78#ifndef __INetCfgBindingPath_FWD_DEFINED__
  79#define __INetCfgBindingPath_FWD_DEFINED__
  80typedef interface INetCfgBindingPath INetCfgBindingPath;
  81#ifdef __cplusplus
  82interface INetCfgBindingPath;
  83#endif /* __cplusplus */
  84#endif
  85
  86#ifndef __INetCfgClass_FWD_DEFINED__
  87#define __INetCfgClass_FWD_DEFINED__
  88typedef interface INetCfgClass INetCfgClass;
  89#ifdef __cplusplus
  90interface INetCfgClass;
  91#endif /* __cplusplus */
  92#endif
  93
  94#ifndef __INetCfgClassSetup_FWD_DEFINED__
  95#define __INetCfgClassSetup_FWD_DEFINED__
  96typedef interface INetCfgClassSetup INetCfgClassSetup;
  97#ifdef __cplusplus
  98interface INetCfgClassSetup;
  99#endif /* __cplusplus */
 100#endif
 101
 102#ifndef __INetCfgClassSetup2_FWD_DEFINED__
 103#define __INetCfgClassSetup2_FWD_DEFINED__
 104typedef interface INetCfgClassSetup2 INetCfgClassSetup2;
 105#ifdef __cplusplus
 106interface INetCfgClassSetup2;
 107#endif /* __cplusplus */
 108#endif
 109
 110#ifndef __INetCfgComponent_FWD_DEFINED__
 111#define __INetCfgComponent_FWD_DEFINED__
 112typedef interface INetCfgComponent INetCfgComponent;
 113#ifdef __cplusplus
 114interface INetCfgComponent;
 115#endif /* __cplusplus */
 116#endif
 117
 118#ifndef __INetCfgComponentBindings_FWD_DEFINED__
 119#define __INetCfgComponentBindings_FWD_DEFINED__
 120typedef interface INetCfgComponentBindings INetCfgComponentBindings;
 121#ifdef __cplusplus
 122interface INetCfgComponentBindings;
 123#endif /* __cplusplus */
 124#endif
 125
 126#ifndef __INetCfgSysPrep_FWD_DEFINED__
 127#define __INetCfgSysPrep_FWD_DEFINED__
 128typedef interface INetCfgSysPrep INetCfgSysPrep;
 129#ifdef __cplusplus
 130interface INetCfgSysPrep;
 131#endif /* __cplusplus */
 132#endif
 133
 134/* Headers for imported files */
 135
 136#include <unknwn.h>
 137#include <wtypes.h>
 138#include <prsht.h>
 139
 140#ifdef __cplusplus
 141extern "C" {
 142#endif
 143
 144#include <winapifamily.h>
 145#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
 146
 147#define NETCFG_E_ALREADY_INITIALIZED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa020)
 148#define NETCFG_E_NOT_INITIALIZED MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa021)
 149#define NETCFG_E_IN_USE MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa022)
 150#define NETCFG_E_NO_WRITE_LOCK MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa024)
 151#define NETCFG_E_NEED_REBOOT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa025)
 152#define NETCFG_E_ACTIVE_RAS_CONNECTIONS MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa026)
 153#define NETCFG_E_ADAPTER_NOT_FOUND MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa027)
 154#define NETCFG_E_COMPONENT_REMOVED_PENDING_REBOOT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa028)
 155#define NETCFG_E_MAX_FILTER_LIMIT MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa029)
 156#define NETCFG_E_VMSWITCH_ACTIVE_OVER_ADAPTER MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa02a)
 157#define NETCFG_E_DUPLICATE_INSTANCEID MAKE_HRESULT(SEVERITY_ERROR, FACILITY_ITF, 0xa02b)
 158
 159#define NETCFG_S_REBOOT MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0xa020)
 160#define NETCFG_S_DISABLE_QUERY MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0xa022)
 161#define NETCFG_S_STILL_REFERENCED MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0xa023)
 162#define NETCFG_S_CAUSED_SETUP_CHANGE MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0xa024)
 163#define NETCFG_S_COMMIT_NOW MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0xa025)
 164
 165#define NETCFG_CLIENT_CID_MS_MSClient TEXT("ms_msclient")
 166#define NETCFG_SERVICE_CID_MS_SERVER TEXT("ms_server")
 167#define NETCFG_SERVICE_CID_MS_NETBIOS TEXT("ms_netbios")
 168#define NETCFG_SERVICE_CID_MS_PSCHED TEXT("ms_pschedpc")
 169#define NETCFG_SERVICE_CID_MS_WLBS TEXT("ms_wlbs")
 170#define NETCFG_TRANS_CID_MS_APPLETALK TEXT("ms_appletalk")
 171#define NETCFG_TRANS_CID_MS_NETBEUI TEXT("ms_netbeui")
 172#define NETCFG_TRANS_CID_MS_NETMON TEXT("ms_netmon")
 173#define NETCFG_TRANS_CID_MS_NWIPX TEXT("ms_nwipx")
 174#define NETCFG_TRANS_CID_MS_NWSPX TEXT("ms_nwspx")
 175#define NETCFG_TRANS_CID_MS_TCPIP TEXT("ms_tcpip")
 176
 177#ifndef __IEnumNetCfgBindingInterface_FWD_DEFINED__
 178#define __IEnumNetCfgBindingInterface_FWD_DEFINED__
 179typedef interface IEnumNetCfgBindingInterface IEnumNetCfgBindingInterface;
 180#ifdef __cplusplus
 181interface IEnumNetCfgBindingInterface;
 182#endif /* __cplusplus */
 183#endif
 184
 185#ifndef __IEnumNetCfgBindingPath_FWD_DEFINED__
 186#define __IEnumNetCfgBindingPath_FWD_DEFINED__
 187typedef interface IEnumNetCfgBindingPath IEnumNetCfgBindingPath;
 188#ifdef __cplusplus
 189interface IEnumNetCfgBindingPath;
 190#endif /* __cplusplus */
 191#endif
 192
 193#ifndef __IEnumNetCfgComponent_FWD_DEFINED__
 194#define __IEnumNetCfgComponent_FWD_DEFINED__
 195typedef interface IEnumNetCfgComponent IEnumNetCfgComponent;
 196#ifdef __cplusplus
 197interface IEnumNetCfgComponent;
 198#endif /* __cplusplus */
 199#endif
 200
 201#ifndef __INetCfg_FWD_DEFINED__
 202#define __INetCfg_FWD_DEFINED__
 203typedef interface INetCfg INetCfg;
 204#ifdef __cplusplus
 205interface INetCfg;
 206#endif /* __cplusplus */
 207#endif
 208
 209#ifndef __INetCfgProperties_FWD_DEFINED__
 210#define __INetCfgProperties_FWD_DEFINED__
 211typedef interface INetCfgProperties INetCfgProperties;
 212#ifdef __cplusplus
 213interface INetCfgProperties;
 214#endif /* __cplusplus */
 215#endif
 216
 217#ifndef __INetCfgLock_FWD_DEFINED__
 218#define __INetCfgLock_FWD_DEFINED__
 219typedef interface INetCfgLock INetCfgLock;
 220#ifdef __cplusplus
 221interface INetCfgLock;
 222#endif /* __cplusplus */
 223#endif
 224
 225#ifndef __INetCfgBindingInterface_FWD_DEFINED__
 226#define __INetCfgBindingInterface_FWD_DEFINED__
 227typedef interface INetCfgBindingInterface INetCfgBindingInterface;
 228#ifdef __cplusplus
 229interface INetCfgBindingInterface;
 230#endif /* __cplusplus */
 231#endif
 232
 233#ifndef __INetCfgBindingPath_FWD_DEFINED__
 234#define __INetCfgBindingPath_FWD_DEFINED__
 235typedef interface INetCfgBindingPath INetCfgBindingPath;
 236#ifdef __cplusplus
 237interface INetCfgBindingPath;
 238#endif /* __cplusplus */
 239#endif
 240
 241#ifndef __INetCfgComponentBindings_FWD_DEFINED__
 242#define __INetCfgComponentBindings_FWD_DEFINED__
 243typedef interface INetCfgComponentBindings INetCfgComponentBindings;
 244#ifdef __cplusplus
 245interface INetCfgComponentBindings;
 246#endif /* __cplusplus */
 247#endif
 248
 249#ifndef __INetCfgBindingPath_FWD_DEFINED__
 250#define __INetCfgBindingPath_FWD_DEFINED__
 251typedef interface INetCfgBindingPath INetCfgBindingPath;
 252#ifdef __cplusplus
 253interface INetCfgBindingPath;
 254#endif /* __cplusplus */
 255#endif
 256
 257#ifndef __INetCfgClass_FWD_DEFINED__
 258#define __INetCfgClass_FWD_DEFINED__
 259typedef interface INetCfgClass INetCfgClass;
 260#ifdef __cplusplus
 261interface INetCfgClass;
 262#endif /* __cplusplus */
 263#endif
 264
 265#ifndef __INetCfgComponent_FWD_DEFINED__
 266#define __INetCfgComponent_FWD_DEFINED__
 267typedef interface INetCfgComponent INetCfgComponent;
 268#ifdef __cplusplus
 269interface INetCfgComponent;
 270#endif /* __cplusplus */
 271#endif
 272
 273#ifndef __INetCfgIdentification_FWD_DEFINED__
 274#define __INetCfgIdentification_FWD_DEFINED__
 275typedef interface INetCfgIdentification INetCfgIdentification;
 276#ifdef __cplusplus
 277interface INetCfgIdentification;
 278#endif /* __cplusplus */
 279#endif
 280
 281#ifndef __INetCfgClassSetup_FWD_DEFINED__
 282#define __INetCfgClassSetup_FWD_DEFINED__
 283typedef interface INetCfgClassSetup INetCfgClassSetup;
 284#ifdef __cplusplus
 285interface INetCfgClassSetup;
 286#endif /* __cplusplus */
 287#endif
 288
 289#ifndef __INetCfgClassSetup2_FWD_DEFINED__
 290#define __INetCfgClassSetup2_FWD_DEFINED__
 291typedef interface INetCfgClassSetup2 INetCfgClassSetup2;
 292#ifdef __cplusplus
 293interface INetCfgClassSetup2;
 294#endif /* __cplusplus */
 295#endif
 296
 297
 298/*****************************************************************************
 299 * IEnumNetCfgBindingInterface interface
 300 */
 301#ifndef __IEnumNetCfgBindingInterface_INTERFACE_DEFINED__
 302#define __IEnumNetCfgBindingInterface_INTERFACE_DEFINED__
 303
 304DEFINE_GUID(IID_IEnumNetCfgBindingInterface, 0xc0e8ae90, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
 305#if defined(__cplusplus) && !defined(CINTERFACE)
 306MIDL_INTERFACE("c0e8ae90-306e-11d1-aacf-00805fc1270e")
 307IEnumNetCfgBindingInterface : public IUnknown
 308{
 309    virtual HRESULT STDMETHODCALLTYPE Next(
 310        ULONG celt,
 311        INetCfgBindingInterface **rgelt,
 312        ULONG *pceltFetched) = 0;
 313
 314    virtual HRESULT STDMETHODCALLTYPE Skip(
 315        ULONG celt) = 0;
 316
 317    virtual HRESULT STDMETHODCALLTYPE Reset(
 318        ) = 0;
 319
 320    virtual HRESULT STDMETHODCALLTYPE Clone(
 321        IEnumNetCfgBindingInterface **ppenum) = 0;
 322
 323};
 324#ifdef __CRT_UUID_DECL
 325__CRT_UUID_DECL(IEnumNetCfgBindingInterface, 0xc0e8ae90, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
 326#endif
 327#else
 328typedef struct IEnumNetCfgBindingInterfaceVtbl {
 329    BEGIN_INTERFACE
 330
 331    /*** IUnknown methods ***/
 332    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 333        IEnumNetCfgBindingInterface *This,
 334        REFIID riid,
 335        void **ppvObject);
 336
 337    ULONG (STDMETHODCALLTYPE *AddRef)(
 338        IEnumNetCfgBindingInterface *This);
 339
 340    ULONG (STDMETHODCALLTYPE *Release)(
 341        IEnumNetCfgBindingInterface *This);
 342
 343    /*** IEnumNetCfgBindingInterface methods ***/
 344    HRESULT (STDMETHODCALLTYPE *Next)(
 345        IEnumNetCfgBindingInterface *This,
 346        ULONG celt,
 347        INetCfgBindingInterface **rgelt,
 348        ULONG *pceltFetched);
 349
 350    HRESULT (STDMETHODCALLTYPE *Skip)(
 351        IEnumNetCfgBindingInterface *This,
 352        ULONG celt);
 353
 354    HRESULT (STDMETHODCALLTYPE *Reset)(
 355        IEnumNetCfgBindingInterface *This);
 356
 357    HRESULT (STDMETHODCALLTYPE *Clone)(
 358        IEnumNetCfgBindingInterface *This,
 359        IEnumNetCfgBindingInterface **ppenum);
 360
 361    END_INTERFACE
 362} IEnumNetCfgBindingInterfaceVtbl;
 363
 364interface IEnumNetCfgBindingInterface {
 365    CONST_VTBL IEnumNetCfgBindingInterfaceVtbl* lpVtbl;
 366};
 367
 368#ifdef COBJMACROS
 369#ifndef WIDL_C_INLINE_WRAPPERS
 370/*** IUnknown methods ***/
 371#define IEnumNetCfgBindingInterface_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 372#define IEnumNetCfgBindingInterface_AddRef(This) (This)->lpVtbl->AddRef(This)
 373#define IEnumNetCfgBindingInterface_Release(This) (This)->lpVtbl->Release(This)
 374/*** IEnumNetCfgBindingInterface methods ***/
 375#define IEnumNetCfgBindingInterface_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
 376#define IEnumNetCfgBindingInterface_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
 377#define IEnumNetCfgBindingInterface_Reset(This) (This)->lpVtbl->Reset(This)
 378#define IEnumNetCfgBindingInterface_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
 379#else
 380/*** IUnknown methods ***/
 381static inline HRESULT IEnumNetCfgBindingInterface_QueryInterface(IEnumNetCfgBindingInterface* This,REFIID riid,void **ppvObject) {
 382    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 383}
 384static inline ULONG IEnumNetCfgBindingInterface_AddRef(IEnumNetCfgBindingInterface* This) {
 385    return This->lpVtbl->AddRef(This);
 386}
 387static inline ULONG IEnumNetCfgBindingInterface_Release(IEnumNetCfgBindingInterface* This) {
 388    return This->lpVtbl->Release(This);
 389}
 390/*** IEnumNetCfgBindingInterface methods ***/
 391static inline HRESULT IEnumNetCfgBindingInterface_Next(IEnumNetCfgBindingInterface* This,ULONG celt,INetCfgBindingInterface **rgelt,ULONG *pceltFetched) {
 392    return This->lpVtbl->Next(This,celt,rgelt,pceltFetched);
 393}
 394static inline HRESULT IEnumNetCfgBindingInterface_Skip(IEnumNetCfgBindingInterface* This,ULONG celt) {
 395    return This->lpVtbl->Skip(This,celt);
 396}
 397static inline HRESULT IEnumNetCfgBindingInterface_Reset(IEnumNetCfgBindingInterface* This) {
 398    return This->lpVtbl->Reset(This);
 399}
 400static inline HRESULT IEnumNetCfgBindingInterface_Clone(IEnumNetCfgBindingInterface* This,IEnumNetCfgBindingInterface **ppenum) {
 401    return This->lpVtbl->Clone(This,ppenum);
 402}
 403#endif
 404#endif
 405
 406#endif
 407
 408
 409#endif  /* __IEnumNetCfgBindingInterface_INTERFACE_DEFINED__ */
 410
 411
 412/*****************************************************************************
 413 * IEnumNetCfgBindingPath interface
 414 */
 415#ifndef __IEnumNetCfgBindingPath_INTERFACE_DEFINED__
 416#define __IEnumNetCfgBindingPath_INTERFACE_DEFINED__
 417
 418DEFINE_GUID(IID_IEnumNetCfgBindingPath, 0xc0e8ae91, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
 419#if defined(__cplusplus) && !defined(CINTERFACE)
 420MIDL_INTERFACE("c0e8ae91-306e-11d1-aacf-00805fc1270e")
 421IEnumNetCfgBindingPath : public IUnknown
 422{
 423    virtual HRESULT STDMETHODCALLTYPE Next(
 424        ULONG celt,
 425        INetCfgBindingPath **rgelt,
 426        ULONG *pceltFetched) = 0;
 427
 428    virtual HRESULT STDMETHODCALLTYPE Skip(
 429        ULONG celt) = 0;
 430
 431    virtual HRESULT STDMETHODCALLTYPE Reset(
 432        ) = 0;
 433
 434    virtual HRESULT STDMETHODCALLTYPE Clone(
 435        IEnumNetCfgBindingPath **ppenum) = 0;
 436
 437};
 438#ifdef __CRT_UUID_DECL
 439__CRT_UUID_DECL(IEnumNetCfgBindingPath, 0xc0e8ae91, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
 440#endif
 441#else
 442typedef struct IEnumNetCfgBindingPathVtbl {
 443    BEGIN_INTERFACE
 444
 445    /*** IUnknown methods ***/
 446    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 447        IEnumNetCfgBindingPath *This,
 448        REFIID riid,
 449        void **ppvObject);
 450
 451    ULONG (STDMETHODCALLTYPE *AddRef)(
 452        IEnumNetCfgBindingPath *This);
 453
 454    ULONG (STDMETHODCALLTYPE *Release)(
 455        IEnumNetCfgBindingPath *This);
 456
 457    /*** IEnumNetCfgBindingPath methods ***/
 458    HRESULT (STDMETHODCALLTYPE *Next)(
 459        IEnumNetCfgBindingPath *This,
 460        ULONG celt,
 461        INetCfgBindingPath **rgelt,
 462        ULONG *pceltFetched);
 463
 464    HRESULT (STDMETHODCALLTYPE *Skip)(
 465        IEnumNetCfgBindingPath *This,
 466        ULONG celt);
 467
 468    HRESULT (STDMETHODCALLTYPE *Reset)(
 469        IEnumNetCfgBindingPath *This);
 470
 471    HRESULT (STDMETHODCALLTYPE *Clone)(
 472        IEnumNetCfgBindingPath *This,
 473        IEnumNetCfgBindingPath **ppenum);
 474
 475    END_INTERFACE
 476} IEnumNetCfgBindingPathVtbl;
 477
 478interface IEnumNetCfgBindingPath {
 479    CONST_VTBL IEnumNetCfgBindingPathVtbl* lpVtbl;
 480};
 481
 482#ifdef COBJMACROS
 483#ifndef WIDL_C_INLINE_WRAPPERS
 484/*** IUnknown methods ***/
 485#define IEnumNetCfgBindingPath_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 486#define IEnumNetCfgBindingPath_AddRef(This) (This)->lpVtbl->AddRef(This)
 487#define IEnumNetCfgBindingPath_Release(This) (This)->lpVtbl->Release(This)
 488/*** IEnumNetCfgBindingPath methods ***/
 489#define IEnumNetCfgBindingPath_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
 490#define IEnumNetCfgBindingPath_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
 491#define IEnumNetCfgBindingPath_Reset(This) (This)->lpVtbl->Reset(This)
 492#define IEnumNetCfgBindingPath_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
 493#else
 494/*** IUnknown methods ***/
 495static inline HRESULT IEnumNetCfgBindingPath_QueryInterface(IEnumNetCfgBindingPath* This,REFIID riid,void **ppvObject) {
 496    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 497}
 498static inline ULONG IEnumNetCfgBindingPath_AddRef(IEnumNetCfgBindingPath* This) {
 499    return This->lpVtbl->AddRef(This);
 500}
 501static inline ULONG IEnumNetCfgBindingPath_Release(IEnumNetCfgBindingPath* This) {
 502    return This->lpVtbl->Release(This);
 503}
 504/*** IEnumNetCfgBindingPath methods ***/
 505static inline HRESULT IEnumNetCfgBindingPath_Next(IEnumNetCfgBindingPath* This,ULONG celt,INetCfgBindingPath **rgelt,ULONG *pceltFetched) {
 506    return This->lpVtbl->Next(This,celt,rgelt,pceltFetched);
 507}
 508static inline HRESULT IEnumNetCfgBindingPath_Skip(IEnumNetCfgBindingPath* This,ULONG celt) {
 509    return This->lpVtbl->Skip(This,celt);
 510}
 511static inline HRESULT IEnumNetCfgBindingPath_Reset(IEnumNetCfgBindingPath* This) {
 512    return This->lpVtbl->Reset(This);
 513}
 514static inline HRESULT IEnumNetCfgBindingPath_Clone(IEnumNetCfgBindingPath* This,IEnumNetCfgBindingPath **ppenum) {
 515    return This->lpVtbl->Clone(This,ppenum);
 516}
 517#endif
 518#endif
 519
 520#endif
 521
 522
 523#endif  /* __IEnumNetCfgBindingPath_INTERFACE_DEFINED__ */
 524
 525
 526/*****************************************************************************
 527 * IEnumNetCfgComponent interface
 528 */
 529#ifndef __IEnumNetCfgComponent_INTERFACE_DEFINED__
 530#define __IEnumNetCfgComponent_INTERFACE_DEFINED__
 531
 532DEFINE_GUID(IID_IEnumNetCfgComponent, 0xc0e8ae92, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
 533#if defined(__cplusplus) && !defined(CINTERFACE)
 534MIDL_INTERFACE("c0e8ae92-306e-11d1-aacf-00805fc1270e")
 535IEnumNetCfgComponent : public IUnknown
 536{
 537    virtual HRESULT STDMETHODCALLTYPE Next(
 538        ULONG celt,
 539        INetCfgComponent **rgelt,
 540        ULONG *pceltFetched) = 0;
 541
 542    virtual HRESULT STDMETHODCALLTYPE Skip(
 543        ULONG celt) = 0;
 544
 545    virtual HRESULT STDMETHODCALLTYPE Reset(
 546        ) = 0;
 547
 548    virtual HRESULT STDMETHODCALLTYPE Clone(
 549        IEnumNetCfgComponent **ppenum) = 0;
 550
 551};
 552#ifdef __CRT_UUID_DECL
 553__CRT_UUID_DECL(IEnumNetCfgComponent, 0xc0e8ae92, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
 554#endif
 555#else
 556typedef struct IEnumNetCfgComponentVtbl {
 557    BEGIN_INTERFACE
 558
 559    /*** IUnknown methods ***/
 560    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 561        IEnumNetCfgComponent *This,
 562        REFIID riid,
 563        void **ppvObject);
 564
 565    ULONG (STDMETHODCALLTYPE *AddRef)(
 566        IEnumNetCfgComponent *This);
 567
 568    ULONG (STDMETHODCALLTYPE *Release)(
 569        IEnumNetCfgComponent *This);
 570
 571    /*** IEnumNetCfgComponent methods ***/
 572    HRESULT (STDMETHODCALLTYPE *Next)(
 573        IEnumNetCfgComponent *This,
 574        ULONG celt,
 575        INetCfgComponent **rgelt,
 576        ULONG *pceltFetched);
 577
 578    HRESULT (STDMETHODCALLTYPE *Skip)(
 579        IEnumNetCfgComponent *This,
 580        ULONG celt);
 581
 582    HRESULT (STDMETHODCALLTYPE *Reset)(
 583        IEnumNetCfgComponent *This);
 584
 585    HRESULT (STDMETHODCALLTYPE *Clone)(
 586        IEnumNetCfgComponent *This,
 587        IEnumNetCfgComponent **ppenum);
 588
 589    END_INTERFACE
 590} IEnumNetCfgComponentVtbl;
 591
 592interface IEnumNetCfgComponent {
 593    CONST_VTBL IEnumNetCfgComponentVtbl* lpVtbl;
 594};
 595
 596#ifdef COBJMACROS
 597#ifndef WIDL_C_INLINE_WRAPPERS
 598/*** IUnknown methods ***/
 599#define IEnumNetCfgComponent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 600#define IEnumNetCfgComponent_AddRef(This) (This)->lpVtbl->AddRef(This)
 601#define IEnumNetCfgComponent_Release(This) (This)->lpVtbl->Release(This)
 602/*** IEnumNetCfgComponent methods ***/
 603#define IEnumNetCfgComponent_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched)
 604#define IEnumNetCfgComponent_Skip(This,celt) (This)->lpVtbl->Skip(This,celt)
 605#define IEnumNetCfgComponent_Reset(This) (This)->lpVtbl->Reset(This)
 606#define IEnumNetCfgComponent_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum)
 607#else
 608/*** IUnknown methods ***/
 609static inline HRESULT IEnumNetCfgComponent_QueryInterface(IEnumNetCfgComponent* This,REFIID riid,void **ppvObject) {
 610    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 611}
 612static inline ULONG IEnumNetCfgComponent_AddRef(IEnumNetCfgComponent* This) {
 613    return This->lpVtbl->AddRef(This);
 614}
 615static inline ULONG IEnumNetCfgComponent_Release(IEnumNetCfgComponent* This) {
 616    return This->lpVtbl->Release(This);
 617}
 618/*** IEnumNetCfgComponent methods ***/
 619static inline HRESULT IEnumNetCfgComponent_Next(IEnumNetCfgComponent* This,ULONG celt,INetCfgComponent **rgelt,ULONG *pceltFetched) {
 620    return This->lpVtbl->Next(This,celt,rgelt,pceltFetched);
 621}
 622static inline HRESULT IEnumNetCfgComponent_Skip(IEnumNetCfgComponent* This,ULONG celt) {
 623    return This->lpVtbl->Skip(This,celt);
 624}
 625static inline HRESULT IEnumNetCfgComponent_Reset(IEnumNetCfgComponent* This) {
 626    return This->lpVtbl->Reset(This);
 627}
 628static inline HRESULT IEnumNetCfgComponent_Clone(IEnumNetCfgComponent* This,IEnumNetCfgComponent **ppenum) {
 629    return This->lpVtbl->Clone(This,ppenum);
 630}
 631#endif
 632#endif
 633
 634#endif
 635
 636
 637#endif  /* __IEnumNetCfgComponent_INTERFACE_DEFINED__ */
 638
 639
 640/*****************************************************************************
 641 * INetCfg interface
 642 */
 643#ifndef __INetCfg_INTERFACE_DEFINED__
 644#define __INetCfg_INTERFACE_DEFINED__
 645
 646DEFINE_GUID(IID_INetCfg, 0xc0e8ae93, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
 647#if defined(__cplusplus) && !defined(CINTERFACE)
 648MIDL_INTERFACE("c0e8ae93-306e-11d1-aacf-00805fc1270e")
 649INetCfg : public IUnknown
 650{
 651    virtual HRESULT STDMETHODCALLTYPE Initialize(
 652        PVOID pvReserved) = 0;
 653
 654    virtual HRESULT STDMETHODCALLTYPE Uninitialize(
 655        ) = 0;
 656
 657    virtual HRESULT STDMETHODCALLTYPE Apply(
 658        ) = 0;
 659
 660    virtual HRESULT STDMETHODCALLTYPE Cancel(
 661        ) = 0;
 662
 663    virtual HRESULT STDMETHODCALLTYPE EnumComponents(
 664        const GUID *pguidClass,
 665        IEnumNetCfgComponent **ppenumComponent) = 0;
 666
 667    virtual HRESULT STDMETHODCALLTYPE FindComponent(
 668        LPCWSTR pszwInfId,
 669        INetCfgComponent **pComponent) = 0;
 670
 671    virtual HRESULT STDMETHODCALLTYPE QueryNetCfgClass(
 672        const GUID *pguidClass,
 673        REFIID riid,
 674        void **ppvObject) = 0;
 675
 676};
 677#ifdef __CRT_UUID_DECL
 678__CRT_UUID_DECL(INetCfg, 0xc0e8ae93, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
 679#endif
 680#else
 681typedef struct INetCfgVtbl {
 682    BEGIN_INTERFACE
 683
 684    /*** IUnknown methods ***/
 685    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 686        INetCfg *This,
 687        REFIID riid,
 688        void **ppvObject);
 689
 690    ULONG (STDMETHODCALLTYPE *AddRef)(
 691        INetCfg *This);
 692
 693    ULONG (STDMETHODCALLTYPE *Release)(
 694        INetCfg *This);
 695
 696    /*** INetCfg methods ***/
 697    HRESULT (STDMETHODCALLTYPE *Initialize)(
 698        INetCfg *This,
 699        PVOID pvReserved);
 700
 701    HRESULT (STDMETHODCALLTYPE *Uninitialize)(
 702        INetCfg *This);
 703
 704    HRESULT (STDMETHODCALLTYPE *Apply)(
 705        INetCfg *This);
 706
 707    HRESULT (STDMETHODCALLTYPE *Cancel)(
 708        INetCfg *This);
 709
 710    HRESULT (STDMETHODCALLTYPE *EnumComponents)(
 711        INetCfg *This,
 712        const GUID *pguidClass,
 713        IEnumNetCfgComponent **ppenumComponent);
 714
 715    HRESULT (STDMETHODCALLTYPE *FindComponent)(
 716        INetCfg *This,
 717        LPCWSTR pszwInfId,
 718        INetCfgComponent **pComponent);
 719
 720    HRESULT (STDMETHODCALLTYPE *QueryNetCfgClass)(
 721        INetCfg *This,
 722        const GUID *pguidClass,
 723        REFIID riid,
 724        void **ppvObject);
 725
 726    END_INTERFACE
 727} INetCfgVtbl;
 728
 729interface INetCfg {
 730    CONST_VTBL INetCfgVtbl* lpVtbl;
 731};
 732
 733#ifdef COBJMACROS
 734#ifndef WIDL_C_INLINE_WRAPPERS
 735/*** IUnknown methods ***/
 736#define INetCfg_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 737#define INetCfg_AddRef(This) (This)->lpVtbl->AddRef(This)
 738#define INetCfg_Release(This) (This)->lpVtbl->Release(This)
 739/*** INetCfg methods ***/
 740#define INetCfg_Initialize(This,pvReserved) (This)->lpVtbl->Initialize(This,pvReserved)
 741#define INetCfg_Uninitialize(This) (This)->lpVtbl->Uninitialize(This)
 742#define INetCfg_Apply(This) (This)->lpVtbl->Apply(This)
 743#define INetCfg_Cancel(This) (This)->lpVtbl->Cancel(This)
 744#define INetCfg_EnumComponents(This,pguidClass,ppenumComponent) (This)->lpVtbl->EnumComponents(This,pguidClass,ppenumComponent)
 745#define INetCfg_FindComponent(This,pszwInfId,pComponent) (This)->lpVtbl->FindComponent(This,pszwInfId,pComponent)
 746#define INetCfg_QueryNetCfgClass(This,pguidClass,riid,ppvObject) (This)->lpVtbl->QueryNetCfgClass(This,pguidClass,riid,ppvObject)
 747#else
 748/*** IUnknown methods ***/
 749static inline HRESULT INetCfg_QueryInterface(INetCfg* This,REFIID riid,void **ppvObject) {
 750    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 751}
 752static inline ULONG INetCfg_AddRef(INetCfg* This) {
 753    return This->lpVtbl->AddRef(This);
 754}
 755static inline ULONG INetCfg_Release(INetCfg* This) {
 756    return This->lpVtbl->Release(This);
 757}
 758/*** INetCfg methods ***/
 759static inline HRESULT INetCfg_Initialize(INetCfg* This,PVOID pvReserved) {
 760    return This->lpVtbl->Initialize(This,pvReserved);
 761}
 762static inline HRESULT INetCfg_Uninitialize(INetCfg* This) {
 763    return This->lpVtbl->Uninitialize(This);
 764}
 765static inline HRESULT INetCfg_Apply(INetCfg* This) {
 766    return This->lpVtbl->Apply(This);
 767}
 768static inline HRESULT INetCfg_Cancel(INetCfg* This) {
 769    return This->lpVtbl->Cancel(This);
 770}
 771static inline HRESULT INetCfg_EnumComponents(INetCfg* This,const GUID *pguidClass,IEnumNetCfgComponent **ppenumComponent) {
 772    return This->lpVtbl->EnumComponents(This,pguidClass,ppenumComponent);
 773}
 774static inline HRESULT INetCfg_FindComponent(INetCfg* This,LPCWSTR pszwInfId,INetCfgComponent **pComponent) {
 775    return This->lpVtbl->FindComponent(This,pszwInfId,pComponent);
 776}
 777static inline HRESULT INetCfg_QueryNetCfgClass(INetCfg* This,const GUID *pguidClass,REFIID riid,void **ppvObject) {
 778    return This->lpVtbl->QueryNetCfgClass(This,pguidClass,riid,ppvObject);
 779}
 780#endif
 781#endif
 782
 783#endif
 784
 785
 786#endif  /* __INetCfg_INTERFACE_DEFINED__ */
 787
 788
 789/*****************************************************************************
 790 * CNetCfg coclass
 791 */
 792
 793DEFINE_GUID(CLSID_CNetCfg, 0x5b035261, 0x40f9, 0x11d1, 0xaa,0xec, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
 794
 795#ifdef __cplusplus
 796class DECLSPEC_UUID("5b035261-40f9-11d1-aaec-00805fc1270e") CNetCfg;
 797#ifdef __CRT_UUID_DECL
 798__CRT_UUID_DECL(CNetCfg, 0x5b035261, 0x40f9, 0x11d1, 0xaa,0xec, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
 799#endif
 800#endif
 801
 802
 803/*****************************************************************************
 804 * INetCfgLock interface
 805 */
 806#ifndef __INetCfgLock_INTERFACE_DEFINED__
 807#define __INetCfgLock_INTERFACE_DEFINED__
 808
 809DEFINE_GUID(IID_INetCfgLock, 0xc0e8ae9f, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
 810#if defined(__cplusplus) && !defined(CINTERFACE)
 811MIDL_INTERFACE("c0e8ae9f-306e-11d1-aacf-00805fc1270e")
 812INetCfgLock : public IUnknown
 813{
 814    virtual HRESULT STDMETHODCALLTYPE AcquireWriteLock(
 815        DWORD cmsTimeout,
 816        LPCWSTR pszwClientDescription,
 817        LPWSTR *ppszwClientDescription) = 0;
 818
 819    virtual HRESULT STDMETHODCALLTYPE ReleaseWriteLock(
 820        ) = 0;
 821
 822    virtual HRESULT STDMETHODCALLTYPE IsWriteLocked(
 823        LPWSTR *ppszwClientDescription) = 0;
 824
 825};
 826#ifdef __CRT_UUID_DECL
 827__CRT_UUID_DECL(INetCfgLock, 0xc0e8ae9f, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
 828#endif
 829#else
 830typedef struct INetCfgLockVtbl {
 831    BEGIN_INTERFACE
 832
 833    /*** IUnknown methods ***/
 834    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 835        INetCfgLock *This,
 836        REFIID riid,
 837        void **ppvObject);
 838
 839    ULONG (STDMETHODCALLTYPE *AddRef)(
 840        INetCfgLock *This);
 841
 842    ULONG (STDMETHODCALLTYPE *Release)(
 843        INetCfgLock *This);
 844
 845    /*** INetCfgLock methods ***/
 846    HRESULT (STDMETHODCALLTYPE *AcquireWriteLock)(
 847        INetCfgLock *This,
 848        DWORD cmsTimeout,
 849        LPCWSTR pszwClientDescription,
 850        LPWSTR *ppszwClientDescription);
 851
 852    HRESULT (STDMETHODCALLTYPE *ReleaseWriteLock)(
 853        INetCfgLock *This);
 854
 855    HRESULT (STDMETHODCALLTYPE *IsWriteLocked)(
 856        INetCfgLock *This,
 857        LPWSTR *ppszwClientDescription);
 858
 859    END_INTERFACE
 860} INetCfgLockVtbl;
 861
 862interface INetCfgLock {
 863    CONST_VTBL INetCfgLockVtbl* lpVtbl;
 864};
 865
 866#ifdef COBJMACROS
 867#ifndef WIDL_C_INLINE_WRAPPERS
 868/*** IUnknown methods ***/
 869#define INetCfgLock_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 870#define INetCfgLock_AddRef(This) (This)->lpVtbl->AddRef(This)
 871#define INetCfgLock_Release(This) (This)->lpVtbl->Release(This)
 872/*** INetCfgLock methods ***/
 873#define INetCfgLock_AcquireWriteLock(This,cmsTimeout,pszwClientDescription,ppszwClientDescription) (This)->lpVtbl->AcquireWriteLock(This,cmsTimeout,pszwClientDescription,ppszwClientDescription)
 874#define INetCfgLock_ReleaseWriteLock(This) (This)->lpVtbl->ReleaseWriteLock(This)
 875#define INetCfgLock_IsWriteLocked(This,ppszwClientDescription) (This)->lpVtbl->IsWriteLocked(This,ppszwClientDescription)
 876#else
 877/*** IUnknown methods ***/
 878static inline HRESULT INetCfgLock_QueryInterface(INetCfgLock* This,REFIID riid,void **ppvObject) {
 879    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 880}
 881static inline ULONG INetCfgLock_AddRef(INetCfgLock* This) {
 882    return This->lpVtbl->AddRef(This);
 883}
 884static inline ULONG INetCfgLock_Release(INetCfgLock* This) {
 885    return This->lpVtbl->Release(This);
 886}
 887/*** INetCfgLock methods ***/
 888static inline HRESULT INetCfgLock_AcquireWriteLock(INetCfgLock* This,DWORD cmsTimeout,LPCWSTR pszwClientDescription,LPWSTR *ppszwClientDescription) {
 889    return This->lpVtbl->AcquireWriteLock(This,cmsTimeout,pszwClientDescription,ppszwClientDescription);
 890}
 891static inline HRESULT INetCfgLock_ReleaseWriteLock(INetCfgLock* This) {
 892    return This->lpVtbl->ReleaseWriteLock(This);
 893}
 894static inline HRESULT INetCfgLock_IsWriteLocked(INetCfgLock* This,LPWSTR *ppszwClientDescription) {
 895    return This->lpVtbl->IsWriteLocked(This,ppszwClientDescription);
 896}
 897#endif
 898#endif
 899
 900#endif
 901
 902
 903#endif  /* __INetCfgLock_INTERFACE_DEFINED__ */
 904
 905
 906/*****************************************************************************
 907 * INetCfgBindingInterface interface
 908 */
 909#ifndef __INetCfgBindingInterface_INTERFACE_DEFINED__
 910#define __INetCfgBindingInterface_INTERFACE_DEFINED__
 911
 912DEFINE_GUID(IID_INetCfgBindingInterface, 0xc0e8ae94, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
 913#if defined(__cplusplus) && !defined(CINTERFACE)
 914MIDL_INTERFACE("c0e8ae94-306e-11d1-aacf-00805fc1270e")
 915INetCfgBindingInterface : public IUnknown
 916{
 917    virtual HRESULT STDMETHODCALLTYPE GetName(
 918        LPWSTR *ppszwInterfaceName) = 0;
 919
 920    virtual HRESULT STDMETHODCALLTYPE GetUpperComponent(
 921        INetCfgComponent **ppnccItem) = 0;
 922
 923    virtual HRESULT STDMETHODCALLTYPE GetLowerComponent(
 924        INetCfgComponent **ppnccItem) = 0;
 925
 926};
 927#ifdef __CRT_UUID_DECL
 928__CRT_UUID_DECL(INetCfgBindingInterface, 0xc0e8ae94, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
 929#endif
 930#else
 931typedef struct INetCfgBindingInterfaceVtbl {
 932    BEGIN_INTERFACE
 933
 934    /*** IUnknown methods ***/
 935    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 936        INetCfgBindingInterface *This,
 937        REFIID riid,
 938        void **ppvObject);
 939
 940    ULONG (STDMETHODCALLTYPE *AddRef)(
 941        INetCfgBindingInterface *This);
 942
 943    ULONG (STDMETHODCALLTYPE *Release)(
 944        INetCfgBindingInterface *This);
 945
 946    /*** INetCfgBindingInterface methods ***/
 947    HRESULT (STDMETHODCALLTYPE *GetName)(
 948        INetCfgBindingInterface *This,
 949        LPWSTR *ppszwInterfaceName);
 950
 951    HRESULT (STDMETHODCALLTYPE *GetUpperComponent)(
 952        INetCfgBindingInterface *This,
 953        INetCfgComponent **ppnccItem);
 954
 955    HRESULT (STDMETHODCALLTYPE *GetLowerComponent)(
 956        INetCfgBindingInterface *This,
 957        INetCfgComponent **ppnccItem);
 958
 959    END_INTERFACE
 960} INetCfgBindingInterfaceVtbl;
 961
 962interface INetCfgBindingInterface {
 963    CONST_VTBL INetCfgBindingInterfaceVtbl* lpVtbl;
 964};
 965
 966#ifdef COBJMACROS
 967#ifndef WIDL_C_INLINE_WRAPPERS
 968/*** IUnknown methods ***/
 969#define INetCfgBindingInterface_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 970#define INetCfgBindingInterface_AddRef(This) (This)->lpVtbl->AddRef(This)
 971#define INetCfgBindingInterface_Release(This) (This)->lpVtbl->Release(This)
 972/*** INetCfgBindingInterface methods ***/
 973#define INetCfgBindingInterface_GetName(This,ppszwInterfaceName) (This)->lpVtbl->GetName(This,ppszwInterfaceName)
 974#define INetCfgBindingInterface_GetUpperComponent(This,ppnccItem) (This)->lpVtbl->GetUpperComponent(This,ppnccItem)
 975#define INetCfgBindingInterface_GetLowerComponent(This,ppnccItem) (This)->lpVtbl->GetLowerComponent(This,ppnccItem)
 976#else
 977/*** IUnknown methods ***/
 978static inline HRESULT INetCfgBindingInterface_QueryInterface(INetCfgBindingInterface* This,REFIID riid,void **ppvObject) {
 979    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 980}
 981static inline ULONG INetCfgBindingInterface_AddRef(INetCfgBindingInterface* This) {
 982    return This->lpVtbl->AddRef(This);
 983}
 984static inline ULONG INetCfgBindingInterface_Release(INetCfgBindingInterface* This) {
 985    return This->lpVtbl->Release(This);
 986}
 987/*** INetCfgBindingInterface methods ***/
 988static inline HRESULT INetCfgBindingInterface_GetName(INetCfgBindingInterface* This,LPWSTR *ppszwInterfaceName) {
 989    return This->lpVtbl->GetName(This,ppszwInterfaceName);
 990}
 991static inline HRESULT INetCfgBindingInterface_GetUpperComponent(INetCfgBindingInterface* This,INetCfgComponent **ppnccItem) {
 992    return This->lpVtbl->GetUpperComponent(This,ppnccItem);
 993}
 994static inline HRESULT INetCfgBindingInterface_GetLowerComponent(INetCfgBindingInterface* This,INetCfgComponent **ppnccItem) {
 995    return This->lpVtbl->GetLowerComponent(This,ppnccItem);
 996}
 997#endif
 998#endif
 999
1000#endif
1001
1002
1003#endif  /* __INetCfgBindingInterface_INTERFACE_DEFINED__ */
1004
1005
1006/*****************************************************************************
1007 * INetCfgBindingPath interface
1008 */
1009#ifndef __INetCfgBindingPath_INTERFACE_DEFINED__
1010#define __INetCfgBindingPath_INTERFACE_DEFINED__
1011
1012DEFINE_GUID(IID_INetCfgBindingPath, 0xc0e8ae96, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
1013#if defined(__cplusplus) && !defined(CINTERFACE)
1014MIDL_INTERFACE("c0e8ae96-306e-11d1-aacf-00805fc1270e")
1015INetCfgBindingPath : public IUnknown
1016{
1017    virtual HRESULT STDMETHODCALLTYPE IsSamePathAs(
1018        INetCfgBindingPath *pPath) = 0;
1019
1020    virtual HRESULT STDMETHODCALLTYPE IsSubPathOf(
1021        INetCfgBindingPath *pPath) = 0;
1022
1023    virtual HRESULT STDMETHODCALLTYPE IsEnabled(
1024        ) = 0;
1025
1026    virtual HRESULT STDMETHODCALLTYPE Enable(
1027        WINBOOL fEnable) = 0;
1028
1029    virtual HRESULT STDMETHODCALLTYPE GetPathToken(
1030        LPWSTR *ppszwPathToken) = 0;
1031
1032    virtual HRESULT STDMETHODCALLTYPE GetOwner(
1033        INetCfgComponent **ppComponent) = 0;
1034
1035    virtual HRESULT STDMETHODCALLTYPE GetDepth(
1036        ULONG *pcInterfaces) = 0;
1037
1038    virtual HRESULT STDMETHODCALLTYPE EnumBindingInterfaces(
1039        IEnumNetCfgBindingInterface **ppenumInterface) = 0;
1040
1041};
1042#ifdef __CRT_UUID_DECL
1043__CRT_UUID_DECL(INetCfgBindingPath, 0xc0e8ae96, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
1044#endif
1045#else
1046typedef struct INetCfgBindingPathVtbl {
1047    BEGIN_INTERFACE
1048
1049    /*** IUnknown methods ***/
1050    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1051        INetCfgBindingPath *This,
1052        REFIID riid,
1053        void **ppvObject);
1054
1055    ULONG (STDMETHODCALLTYPE *AddRef)(
1056        INetCfgBindingPath *This);
1057
1058    ULONG (STDMETHODCALLTYPE *Release)(
1059        INetCfgBindingPath *This);
1060
1061    /*** INetCfgBindingPath methods ***/
1062    HRESULT (STDMETHODCALLTYPE *IsSamePathAs)(
1063        INetCfgBindingPath *This,
1064        INetCfgBindingPath *pPath);
1065
1066    HRESULT (STDMETHODCALLTYPE *IsSubPathOf)(
1067        INetCfgBindingPath *This,
1068        INetCfgBindingPath *pPath);
1069
1070    HRESULT (STDMETHODCALLTYPE *IsEnabled)(
1071        INetCfgBindingPath *This);
1072
1073    HRESULT (STDMETHODCALLTYPE *Enable)(
1074        INetCfgBindingPath *This,
1075        WINBOOL fEnable);
1076
1077    HRESULT (STDMETHODCALLTYPE *GetPathToken)(
1078        INetCfgBindingPath *This,
1079        LPWSTR *ppszwPathToken);
1080
1081    HRESULT (STDMETHODCALLTYPE *GetOwner)(
1082        INetCfgBindingPath *This,
1083        INetCfgComponent **ppComponent);
1084
1085    HRESULT (STDMETHODCALLTYPE *GetDepth)(
1086        INetCfgBindingPath *This,
1087        ULONG *pcInterfaces);
1088
1089    HRESULT (STDMETHODCALLTYPE *EnumBindingInterfaces)(
1090        INetCfgBindingPath *This,
1091        IEnumNetCfgBindingInterface **ppenumInterface);
1092
1093    END_INTERFACE
1094} INetCfgBindingPathVtbl;
1095
1096interface INetCfgBindingPath {
1097    CONST_VTBL INetCfgBindingPathVtbl* lpVtbl;
1098};
1099
1100#ifdef COBJMACROS
1101#ifndef WIDL_C_INLINE_WRAPPERS
1102/*** IUnknown methods ***/
1103#define INetCfgBindingPath_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1104#define INetCfgBindingPath_AddRef(This) (This)->lpVtbl->AddRef(This)
1105#define INetCfgBindingPath_Release(This) (This)->lpVtbl->Release(This)
1106/*** INetCfgBindingPath methods ***/
1107#define INetCfgBindingPath_IsSamePathAs(This,pPath) (This)->lpVtbl->IsSamePathAs(This,pPath)
1108#define INetCfgBindingPath_IsSubPathOf(This,pPath) (This)->lpVtbl->IsSubPathOf(This,pPath)
1109#define INetCfgBindingPath_IsEnabled(This) (This)->lpVtbl->IsEnabled(This)
1110#define INetCfgBindingPath_Enable(This,fEnable) (This)->lpVtbl->Enable(This,fEnable)
1111#define INetCfgBindingPath_GetPathToken(This,ppszwPathToken) (This)->lpVtbl->GetPathToken(This,ppszwPathToken)
1112#define INetCfgBindingPath_GetOwner(This,ppComponent) (This)->lpVtbl->GetOwner(This,ppComponent)
1113#define INetCfgBindingPath_GetDepth(This,pcInterfaces) (This)->lpVtbl->GetDepth(This,pcInterfaces)
1114#define INetCfgBindingPath_EnumBindingInterfaces(This,ppenumInterface) (This)->lpVtbl->EnumBindingInterfaces(This,ppenumInterface)
1115#else
1116/*** IUnknown methods ***/
1117static inline HRESULT INetCfgBindingPath_QueryInterface(INetCfgBindingPath* This,REFIID riid,void **ppvObject) {
1118    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1119}
1120static inline ULONG INetCfgBindingPath_AddRef(INetCfgBindingPath* This) {
1121    return This->lpVtbl->AddRef(This);
1122}
1123static inline ULONG INetCfgBindingPath_Release(INetCfgBindingPath* This) {
1124    return This->lpVtbl->Release(This);
1125}
1126/*** INetCfgBindingPath methods ***/
1127static inline HRESULT INetCfgBindingPath_IsSamePathAs(INetCfgBindingPath* This,INetCfgBindingPath *pPath) {
1128    return This->lpVtbl->IsSamePathAs(This,pPath);
1129}
1130static inline HRESULT INetCfgBindingPath_IsSubPathOf(INetCfgBindingPath* This,INetCfgBindingPath *pPath) {
1131    return This->lpVtbl->IsSubPathOf(This,pPath);
1132}
1133static inline HRESULT INetCfgBindingPath_IsEnabled(INetCfgBindingPath* This) {
1134    return This->lpVtbl->IsEnabled(This);
1135}
1136static inline HRESULT INetCfgBindingPath_Enable(INetCfgBindingPath* This,WINBOOL fEnable) {
1137    return This->lpVtbl->Enable(This,fEnable);
1138}
1139static inline HRESULT INetCfgBindingPath_GetPathToken(INetCfgBindingPath* This,LPWSTR *ppszwPathToken) {
1140    return This->lpVtbl->GetPathToken(This,ppszwPathToken);
1141}
1142static inline HRESULT INetCfgBindingPath_GetOwner(INetCfgBindingPath* This,INetCfgComponent **ppComponent) {
1143    return This->lpVtbl->GetOwner(This,ppComponent);
1144}
1145static inline HRESULT INetCfgBindingPath_GetDepth(INetCfgBindingPath* This,ULONG *pcInterfaces) {
1146    return This->lpVtbl->GetDepth(This,pcInterfaces);
1147}
1148static inline HRESULT INetCfgBindingPath_EnumBindingInterfaces(INetCfgBindingPath* This,IEnumNetCfgBindingInterface **ppenumInterface) {
1149    return This->lpVtbl->EnumBindingInterfaces(This,ppenumInterface);
1150}
1151#endif
1152#endif
1153
1154#endif
1155
1156
1157#endif  /* __INetCfgBindingPath_INTERFACE_DEFINED__ */
1158
1159
1160/*****************************************************************************
1161 * INetCfgClass interface
1162 */
1163#ifndef __INetCfgClass_INTERFACE_DEFINED__
1164#define __INetCfgClass_INTERFACE_DEFINED__
1165
1166DEFINE_GUID(IID_INetCfgClass, 0xc0e8ae97, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
1167#if defined(__cplusplus) && !defined(CINTERFACE)
1168MIDL_INTERFACE("c0e8ae97-306e-11d1-aacf-00805fc1270e")
1169INetCfgClass : public IUnknown
1170{
1171    virtual HRESULT STDMETHODCALLTYPE FindComponent(
1172        LPCWSTR pszwInfId,
1173        INetCfgComponent **ppnccItem) = 0;
1174
1175    virtual HRESULT STDMETHODCALLTYPE EnumComponents(
1176        IEnumNetCfgComponent **ppenumComponent) = 0;
1177
1178};
1179#ifdef __CRT_UUID_DECL
1180__CRT_UUID_DECL(INetCfgClass, 0xc0e8ae97, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
1181#endif
1182#else
1183typedef struct INetCfgClassVtbl {
1184    BEGIN_INTERFACE
1185
1186    /*** IUnknown methods ***/
1187    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1188        INetCfgClass *This,
1189        REFIID riid,
1190        void **ppvObject);
1191
1192    ULONG (STDMETHODCALLTYPE *AddRef)(
1193        INetCfgClass *This);
1194
1195    ULONG (STDMETHODCALLTYPE *Release)(
1196        INetCfgClass *This);
1197
1198    /*** INetCfgClass methods ***/
1199    HRESULT (STDMETHODCALLTYPE *FindComponent)(
1200        INetCfgClass *This,
1201        LPCWSTR pszwInfId,
1202        INetCfgComponent **ppnccItem);
1203
1204    HRESULT (STDMETHODCALLTYPE *EnumComponents)(
1205        INetCfgClass *This,
1206        IEnumNetCfgComponent **ppenumComponent);
1207
1208    END_INTERFACE
1209} INetCfgClassVtbl;
1210
1211interface INetCfgClass {
1212    CONST_VTBL INetCfgClassVtbl* lpVtbl;
1213};
1214
1215#ifdef COBJMACROS
1216#ifndef WIDL_C_INLINE_WRAPPERS
1217/*** IUnknown methods ***/
1218#define INetCfgClass_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1219#define INetCfgClass_AddRef(This) (This)->lpVtbl->AddRef(This)
1220#define INetCfgClass_Release(This) (This)->lpVtbl->Release(This)
1221/*** INetCfgClass methods ***/
1222#define INetCfgClass_FindComponent(This,pszwInfId,ppnccItem) (This)->lpVtbl->FindComponent(This,pszwInfId,ppnccItem)
1223#define INetCfgClass_EnumComponents(This,ppenumComponent) (This)->lpVtbl->EnumComponents(This,ppenumComponent)
1224#else
1225/*** IUnknown methods ***/
1226static inline HRESULT INetCfgClass_QueryInterface(INetCfgClass* This,REFIID riid,void **ppvObject) {
1227    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1228}
1229static inline ULONG INetCfgClass_AddRef(INetCfgClass* This) {
1230    return This->lpVtbl->AddRef(This);
1231}
1232static inline ULONG INetCfgClass_Release(INetCfgClass* This) {
1233    return This->lpVtbl->Release(This);
1234}
1235/*** INetCfgClass methods ***/
1236static inline HRESULT INetCfgClass_FindComponent(INetCfgClass* This,LPCWSTR pszwInfId,INetCfgComponent **ppnccItem) {
1237    return This->lpVtbl->FindComponent(This,pszwInfId,ppnccItem);
1238}
1239static inline HRESULT INetCfgClass_EnumComponents(INetCfgClass* This,IEnumNetCfgComponent **ppenumComponent) {
1240    return This->lpVtbl->EnumComponents(This,ppenumComponent);
1241}
1242#endif
1243#endif
1244
1245#endif
1246
1247
1248#endif  /* __INetCfgClass_INTERFACE_DEFINED__ */
1249
1250
1251/*****************************************************************************
1252 * INetCfgClassSetup interface
1253 */
1254#ifndef __INetCfgClassSetup_INTERFACE_DEFINED__
1255#define __INetCfgClassSetup_INTERFACE_DEFINED__
1256
1257typedef enum tagOBO_TOKEN_TYPE {
1258    OBO_USER = 1,
1259    OBO_COMPONENT = 2,
1260    OBO_SOFTWARE = 3
1261} OBO_TOKEN_TYPE;
1262typedef struct tagOBO_TOKEN {
1263    OBO_TOKEN_TYPE Type;
1264    INetCfgComponent *pncc;
1265    LPCWSTR pszwManufacturer;
1266    LPCWSTR pszwProduct;
1267    LPCWSTR pszwDisplayName;
1268    WINBOOL fRegistered;
1269} OBO_TOKEN;
1270DEFINE_GUID(IID_INetCfgClassSetup, 0xc0e8ae9d, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
1271#if defined(__cplusplus) && !defined(CINTERFACE)
1272MIDL_INTERFACE("c0e8ae9d-306e-11d1-aacf-00805fc1270e")
1273INetCfgClassSetup : public IUnknown
1274{
1275    virtual HRESULT STDMETHODCALLTYPE SelectAndInstall(
1276        HWND hwndParent,
1277        OBO_TOKEN *pOboToken,
1278        INetCfgComponent **ppnccItem) = 0;
1279
1280    virtual HRESULT STDMETHODCALLTYPE Install(
1281        LPCWSTR pszwInfId,
1282        OBO_TOKEN *pOboToken,
1283        DWORD dwSetupFlags,
1284        DWORD dwUpgradeFromBuildNo,
1285        LPCWSTR pszwAnswerFile,
1286        LPCWSTR pszwAnswerSections,
1287        INetCfgComponent **ppnccItem) = 0;
1288
1289    virtual HRESULT STDMETHODCALLTYPE DeInstall(
1290        INetCfgComponent *pComponent,
1291        OBO_TOKEN *pOboToken,
1292        LPWSTR *pmszwRefs) = 0;
1293
1294};
1295#ifdef __CRT_UUID_DECL
1296__CRT_UUID_DECL(INetCfgClassSetup, 0xc0e8ae9d, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
1297#endif
1298#else
1299typedef struct INetCfgClassSetupVtbl {
1300    BEGIN_INTERFACE
1301
1302    /*** IUnknown methods ***/
1303    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1304        INetCfgClassSetup *This,
1305        REFIID riid,
1306        void **ppvObject);
1307
1308    ULONG (STDMETHODCALLTYPE *AddRef)(
1309        INetCfgClassSetup *This);
1310
1311    ULONG (STDMETHODCALLTYPE *Release)(
1312        INetCfgClassSetup *This);
1313
1314    /*** INetCfgClassSetup methods ***/
1315    HRESULT (STDMETHODCALLTYPE *SelectAndInstall)(
1316        INetCfgClassSetup *This,
1317        HWND hwndParent,
1318        OBO_TOKEN *pOboToken,
1319        INetCfgComponent **ppnccItem);
1320
1321    HRESULT (STDMETHODCALLTYPE *Install)(
1322        INetCfgClassSetup *This,
1323        LPCWSTR pszwInfId,
1324        OBO_TOKEN *pOboToken,
1325        DWORD dwSetupFlags,
1326        DWORD dwUpgradeFromBuildNo,
1327        LPCWSTR pszwAnswerFile,
1328        LPCWSTR pszwAnswerSections,
1329        INetCfgComponent **ppnccItem);
1330
1331    HRESULT (STDMETHODCALLTYPE *DeInstall)(
1332        INetCfgClassSetup *This,
1333        INetCfgComponent *pComponent,
1334        OBO_TOKEN *pOboToken,
1335        LPWSTR *pmszwRefs);
1336
1337    END_INTERFACE
1338} INetCfgClassSetupVtbl;
1339
1340interface INetCfgClassSetup {
1341    CONST_VTBL INetCfgClassSetupVtbl* lpVtbl;
1342};
1343
1344#ifdef COBJMACROS
1345#ifndef WIDL_C_INLINE_WRAPPERS
1346/*** IUnknown methods ***/
1347#define INetCfgClassSetup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1348#define INetCfgClassSetup_AddRef(This) (This)->lpVtbl->AddRef(This)
1349#define INetCfgClassSetup_Release(This) (This)->lpVtbl->Release(This)
1350/*** INetCfgClassSetup methods ***/
1351#define INetCfgClassSetup_SelectAndInstall(This,hwndParent,pOboToken,ppnccItem) (This)->lpVtbl->SelectAndInstall(This,hwndParent,pOboToken,ppnccItem)
1352#define INetCfgClassSetup_Install(This,pszwInfId,pOboToken,dwSetupFlags,dwUpgradeFromBuildNo,pszwAnswerFile,pszwAnswerSections,ppnccItem) (This)->lpVtbl->Install(This,pszwInfId,pOboToken,dwSetupFlags,dwUpgradeFromBuildNo,pszwAnswerFile,pszwAnswerSections,ppnccItem)
1353#define INetCfgClassSetup_DeInstall(This,pComponent,pOboToken,pmszwRefs) (This)->lpVtbl->DeInstall(This,pComponent,pOboToken,pmszwRefs)
1354#else
1355/*** IUnknown methods ***/
1356static inline HRESULT INetCfgClassSetup_QueryInterface(INetCfgClassSetup* This,REFIID riid,void **ppvObject) {
1357    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1358}
1359static inline ULONG INetCfgClassSetup_AddRef(INetCfgClassSetup* This) {
1360    return This->lpVtbl->AddRef(This);
1361}
1362static inline ULONG INetCfgClassSetup_Release(INetCfgClassSetup* This) {
1363    return This->lpVtbl->Release(This);
1364}
1365/*** INetCfgClassSetup methods ***/
1366static inline HRESULT INetCfgClassSetup_SelectAndInstall(INetCfgClassSetup* This,HWND hwndParent,OBO_TOKEN *pOboToken,INetCfgComponent **ppnccItem) {
1367    return This->lpVtbl->SelectAndInstall(This,hwndParent,pOboToken,ppnccItem);
1368}
1369static inline HRESULT INetCfgClassSetup_Install(INetCfgClassSetup* This,LPCWSTR pszwInfId,OBO_TOKEN *pOboToken,DWORD dwSetupFlags,DWORD dwUpgradeFromBuildNo,LPCWSTR pszwAnswerFile,LPCWSTR pszwAnswerSections,INetCfgComponent **ppnccItem) {
1370    return This->lpVtbl->Install(This,pszwInfId,pOboToken,dwSetupFlags,dwUpgradeFromBuildNo,pszwAnswerFile,pszwAnswerSections,ppnccItem);
1371}
1372static inline HRESULT INetCfgClassSetup_DeInstall(INetCfgClassSetup* This,INetCfgComponent *pComponent,OBO_TOKEN *pOboToken,LPWSTR *pmszwRefs) {
1373    return This->lpVtbl->DeInstall(This,pComponent,pOboToken,pmszwRefs);
1374}
1375#endif
1376#endif
1377
1378#endif
1379
1380
1381#endif  /* __INetCfgClassSetup_INTERFACE_DEFINED__ */
1382
1383
1384/*****************************************************************************
1385 * INetCfgClassSetup2 interface
1386 */
1387#ifndef __INetCfgClassSetup2_INTERFACE_DEFINED__
1388#define __INetCfgClassSetup2_INTERFACE_DEFINED__
1389
1390DEFINE_GUID(IID_INetCfgClassSetup2, 0xc0e8aea0, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
1391#if defined(__cplusplus) && !defined(CINTERFACE)
1392MIDL_INTERFACE("c0e8aea0-306e-11d1-aacf-00805fc1270e")
1393INetCfgClassSetup2 : public INetCfgClassSetup
1394{
1395    virtual HRESULT STDMETHODCALLTYPE UpdateNonEnumeratedComponent(
1396        INetCfgComponent *pIComp,
1397        DWORD dwSetupFlags,
1398        DWORD dwUpgradeFromBuildNo) = 0;
1399
1400};
1401#ifdef __CRT_UUID_DECL
1402__CRT_UUID_DECL(INetCfgClassSetup2, 0xc0e8aea0, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
1403#endif
1404#else
1405typedef struct INetCfgClassSetup2Vtbl {
1406    BEGIN_INTERFACE
1407
1408    /*** IUnknown methods ***/
1409    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1410        INetCfgClassSetup2 *This,
1411        REFIID riid,
1412        void **ppvObject);
1413
1414    ULONG (STDMETHODCALLTYPE *AddRef)(
1415        INetCfgClassSetup2 *This);
1416
1417    ULONG (STDMETHODCALLTYPE *Release)(
1418        INetCfgClassSetup2 *This);
1419
1420    /*** INetCfgClassSetup methods ***/
1421    HRESULT (STDMETHODCALLTYPE *SelectAndInstall)(
1422        INetCfgClassSetup2 *This,
1423        HWND hwndParent,
1424        OBO_TOKEN *pOboToken,
1425        INetCfgComponent **ppnccItem);
1426
1427    HRESULT (STDMETHODCALLTYPE *Install)(
1428        INetCfgClassSetup2 *This,
1429        LPCWSTR pszwInfId,
1430        OBO_TOKEN *pOboToken,
1431        DWORD dwSetupFlags,
1432        DWORD dwUpgradeFromBuildNo,
1433        LPCWSTR pszwAnswerFile,
1434        LPCWSTR pszwAnswerSections,
1435        INetCfgComponent **ppnccItem);
1436
1437    HRESULT (STDMETHODCALLTYPE *DeInstall)(
1438        INetCfgClassSetup2 *This,
1439        INetCfgComponent *pComponent,
1440        OBO_TOKEN *pOboToken,
1441        LPWSTR *pmszwRefs);
1442
1443    /*** INetCfgClassSetup2 methods ***/
1444    HRESULT (STDMETHODCALLTYPE *UpdateNonEnumeratedComponent)(
1445        INetCfgClassSetup2 *This,
1446        INetCfgComponent *pIComp,
1447        DWORD dwSetupFlags,
1448        DWORD dwUpgradeFromBuildNo);
1449
1450    END_INTERFACE
1451} INetCfgClassSetup2Vtbl;
1452
1453interface INetCfgClassSetup2 {
1454    CONST_VTBL INetCfgClassSetup2Vtbl* lpVtbl;
1455};
1456
1457#ifdef COBJMACROS
1458#ifndef WIDL_C_INLINE_WRAPPERS
1459/*** IUnknown methods ***/
1460#define INetCfgClassSetup2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1461#define INetCfgClassSetup2_AddRef(This) (This)->lpVtbl->AddRef(This)
1462#define INetCfgClassSetup2_Release(This) (This)->lpVtbl->Release(This)
1463/*** INetCfgClassSetup methods ***/
1464#define INetCfgClassSetup2_SelectAndInstall(This,hwndParent,pOboToken,ppnccItem) (This)->lpVtbl->SelectAndInstall(This,hwndParent,pOboToken,ppnccItem)
1465#define INetCfgClassSetup2_Install(This,pszwInfId,pOboToken,dwSetupFlags,dwUpgradeFromBuildNo,pszwAnswerFile,pszwAnswerSections,ppnccItem) (This)->lpVtbl->Install(This,pszwInfId,pOboToken,dwSetupFlags,dwUpgradeFromBuildNo,pszwAnswerFile,pszwAnswerSections,ppnccItem)
1466#define INetCfgClassSetup2_DeInstall(This,pComponent,pOboToken,pmszwRefs) (This)->lpVtbl->DeInstall(This,pComponent,pOboToken,pmszwRefs)
1467/*** INetCfgClassSetup2 methods ***/
1468#define INetCfgClassSetup2_UpdateNonEnumeratedComponent(This,pIComp,dwSetupFlags,dwUpgradeFromBuildNo) (This)->lpVtbl->UpdateNonEnumeratedComponent(This,pIComp,dwSetupFlags,dwUpgradeFromBuildNo)
1469#else
1470/*** IUnknown methods ***/
1471static inline HRESULT INetCfgClassSetup2_QueryInterface(INetCfgClassSetup2* This,REFIID riid,void **ppvObject) {
1472    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1473}
1474static inline ULONG INetCfgClassSetup2_AddRef(INetCfgClassSetup2* This) {
1475    return This->lpVtbl->AddRef(This);
1476}
1477static inline ULONG INetCfgClassSetup2_Release(INetCfgClassSetup2* This) {
1478    return This->lpVtbl->Release(This);
1479}
1480/*** INetCfgClassSetup methods ***/
1481static inline HRESULT INetCfgClassSetup2_SelectAndInstall(INetCfgClassSetup2* This,HWND hwndParent,OBO_TOKEN *pOboToken,INetCfgComponent **ppnccItem) {
1482    return This->lpVtbl->SelectAndInstall(This,hwndParent,pOboToken,ppnccItem);
1483}
1484static inline HRESULT INetCfgClassSetup2_Install(INetCfgClassSetup2* This,LPCWSTR pszwInfId,OBO_TOKEN *pOboToken,DWORD dwSetupFlags,DWORD dwUpgradeFromBuildNo,LPCWSTR pszwAnswerFile,LPCWSTR pszwAnswerSections,INetCfgComponent **ppnccItem) {
1485    return This->lpVtbl->Install(This,pszwInfId,pOboToken,dwSetupFlags,dwUpgradeFromBuildNo,pszwAnswerFile,pszwAnswerSections,ppnccItem);
1486}
1487static inline HRESULT INetCfgClassSetup2_DeInstall(INetCfgClassSetup2* This,INetCfgComponent *pComponent,OBO_TOKEN *pOboToken,LPWSTR *pmszwRefs) {
1488    return This->lpVtbl->DeInstall(This,pComponent,pOboToken,pmszwRefs);
1489}
1490/*** INetCfgClassSetup2 methods ***/
1491static inline HRESULT INetCfgClassSetup2_UpdateNonEnumeratedComponent(INetCfgClassSetup2* This,INetCfgComponent *pIComp,DWORD dwSetupFlags,DWORD dwUpgradeFromBuildNo) {
1492    return This->lpVtbl->UpdateNonEnumeratedComponent(This,pIComp,dwSetupFlags,dwUpgradeFromBuildNo);
1493}
1494#endif
1495#endif
1496
1497#endif
1498
1499
1500#endif  /* __INetCfgClassSetup2_INTERFACE_DEFINED__ */
1501
1502
1503/*****************************************************************************
1504 * INetCfgComponent interface
1505 */
1506#ifndef __INetCfgComponent_INTERFACE_DEFINED__
1507#define __INetCfgComponent_INTERFACE_DEFINED__
1508
1509typedef enum tagCOMPONENT_CHARACTERISTICS {
1510    NCF_VIRTUAL = 0x1,
1511    NCF_SOFTWARE_ENUMERATED = 0x2,
1512    NCF_PHYSICAL = 0x4,
1513    NCF_HIDDEN = 0x8,
1514    NCF_NO_SERVICE = 0x10,
1515    NCF_NOT_USER_REMOVABLE = 0x20,
1516    NCF_MULTIPORT_INSTANCED_ADAPTER = 0x40,
1517    NCF_HAS_UI = 0x80,
1518    NCF_SINGLE_INSTANCE = 0x100,
1519    NCF_FILTER = 0x400,
1520    NCF_DONTEXPOSELOWER = 0x1000,
1521    NCF_HIDE_BINDING = 0x2000,
1522    NCF_NDIS_PROTOCOL = 0x4000,
1523    NCF_FIXED_BINDING = 0x20000,
1524    NCF_LW_FILTER = 0x40000
1525} COMPONENT_CHARACTERISTICS;
1526typedef enum tagNCRP_FLAGS {
1527    NCRP_QUERY_PROPERTY_UI = 0x1,
1528    NCRP_SHOW_PROPERTY_UI = 0x2
1529} NCRP_FLAGS;
1530DEFINE_GUID(IID_INetCfgComponent, 0xc0e8ae99, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
1531#if defined(__cplusplus) && !defined(CINTERFACE)
1532MIDL_INTERFACE("c0e8ae99-306e-11d1-aacf-00805fc1270e")
1533INetCfgComponent : public IUnknown
1534{
1535    virtual HRESULT STDMETHODCALLTYPE GetDisplayName(
1536        LPWSTR *ppszwDisplayName) = 0;
1537
1538    virtual HRESULT STDMETHODCALLTYPE SetDisplayName(
1539        LPCWSTR pszwDisplayName) = 0;
1540
1541    virtual HRESULT STDMETHODCALLTYPE GetHelpText(
1542        LPWSTR *pszwHelpText) = 0;
1543
1544    virtual HRESULT STDMETHODCALLTYPE GetId(
1545        LPWSTR *ppszwId) = 0;
1546
1547    virtual HRESULT STDMETHODCALLTYPE GetCharacteristics(
1548        LPDWORD pdwCharacteristics) = 0;
1549
1550    virtual HRESULT STDMETHODCALLTYPE GetInstanceGuid(
1551        GUID *pGuid) = 0;
1552
1553    virtual HRESULT STDMETHODCALLTYPE GetPnpDevNodeId(
1554        LPWSTR *ppszwDevNodeId) = 0;
1555
1556    virtual HRESULT STDMETHODCALLTYPE GetClassGuid(
1557        GUID *pGuid) = 0;
1558
1559    virtual HRESULT STDMETHODCALLTYPE GetBindName(
1560        LPWSTR *ppszwBindName) = 0;
1561
1562    virtual HRESULT STDMETHODCALLTYPE GetDeviceStatus(
1563        ULONG *pulStatus) = 0;
1564
1565    virtual HRESULT STDMETHODCALLTYPE OpenParamKey(
1566        HKEY *phkey) = 0;
1567
1568    virtual HRESULT STDMETHODCALLTYPE RaisePropertyUi(
1569        HWND hwndParent,
1570        DWORD dwFlags,
1571        IUnknown *punkContext) = 0;
1572
1573};
1574#ifdef __CRT_UUID_DECL
1575__CRT_UUID_DECL(INetCfgComponent, 0xc0e8ae99, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
1576#endif
1577#else
1578typedef struct INetCfgComponentVtbl {
1579    BEGIN_INTERFACE
1580
1581    /*** IUnknown methods ***/
1582    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1583        INetCfgComponent *This,
1584        REFIID riid,
1585        void **ppvObject);
1586
1587    ULONG (STDMETHODCALLTYPE *AddRef)(
1588        INetCfgComponent *This);
1589
1590    ULONG (STDMETHODCALLTYPE *Release)(
1591        INetCfgComponent *This);
1592
1593    /*** INetCfgComponent methods ***/
1594    HRESULT (STDMETHODCALLTYPE *GetDisplayName)(
1595        INetCfgComponent *This,
1596        LPWSTR *ppszwDisplayName);
1597
1598    HRESULT (STDMETHODCALLTYPE *SetDisplayName)(
1599        INetCfgComponent *This,
1600        LPCWSTR pszwDisplayName);
1601
1602    HRESULT (STDMETHODCALLTYPE *GetHelpText)(
1603        INetCfgComponent *This,
1604        LPWSTR *pszwHelpText);
1605
1606    HRESULT (STDMETHODCALLTYPE *GetId)(
1607        INetCfgComponent *This,
1608        LPWSTR *ppszwId);
1609
1610    HRESULT (STDMETHODCALLTYPE *GetCharacteristics)(
1611        INetCfgComponent *This,
1612        LPDWORD pdwCharacteristics);
1613
1614    HRESULT (STDMETHODCALLTYPE *GetInstanceGuid)(
1615        INetCfgComponent *This,
1616        GUID *pGuid);
1617
1618    HRESULT (STDMETHODCALLTYPE *GetPnpDevNodeId)(
1619        INetCfgComponent *This,
1620        LPWSTR *ppszwDevNodeId);
1621
1622    HRESULT (STDMETHODCALLTYPE *GetClassGuid)(
1623        INetCfgComponent *This,
1624        GUID *pGuid);
1625
1626    HRESULT (STDMETHODCALLTYPE *GetBindName)(
1627        INetCfgComponent *This,
1628        LPWSTR *ppszwBindName);
1629
1630    HRESULT (STDMETHODCALLTYPE *GetDeviceStatus)(
1631        INetCfgComponent *This,
1632        ULONG *pulStatus);
1633
1634    HRESULT (STDMETHODCALLTYPE *OpenParamKey)(
1635        INetCfgComponent *This,
1636        HKEY *phkey);
1637
1638    HRESULT (STDMETHODCALLTYPE *RaisePropertyUi)(
1639        INetCfgComponent *This,
1640        HWND hwndParent,
1641        DWORD dwFlags,
1642        IUnknown *punkContext);
1643
1644    END_INTERFACE
1645} INetCfgComponentVtbl;
1646
1647interface INetCfgComponent {
1648    CONST_VTBL INetCfgComponentVtbl* lpVtbl;
1649};
1650
1651#ifdef COBJMACROS
1652#ifndef WIDL_C_INLINE_WRAPPERS
1653/*** IUnknown methods ***/
1654#define INetCfgComponent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1655#define INetCfgComponent_AddRef(This) (This)->lpVtbl->AddRef(This)
1656#define INetCfgComponent_Release(This) (This)->lpVtbl->Release(This)
1657/*** INetCfgComponent methods ***/
1658#define INetCfgComponent_GetDisplayName(This,ppszwDisplayName) (This)->lpVtbl->GetDisplayName(This,ppszwDisplayName)
1659#define INetCfgComponent_SetDisplayName(This,pszwDisplayName) (This)->lpVtbl->SetDisplayName(This,pszwDisplayName)
1660#define INetCfgComponent_GetHelpText(This,pszwHelpText) (This)->lpVtbl->GetHelpText(This,pszwHelpText)
1661#define INetCfgComponent_GetId(This,ppszwId) (This)->lpVtbl->GetId(This,ppszwId)
1662#define INetCfgComponent_GetCharacteristics(This,pdwCharacteristics) (This)->lpVtbl->GetCharacteristics(This,pdwCharacteristics)
1663#define INetCfgComponent_GetInstanceGuid(This,pGuid) (This)->lpVtbl->GetInstanceGuid(This,pGuid)
1664#define INetCfgComponent_GetPnpDevNodeId(This,ppszwDevNodeId) (This)->lpVtbl->GetPnpDevNodeId(This,ppszwDevNodeId)
1665#define INetCfgComponent_GetClassGuid(This,pGuid) (This)->lpVtbl->GetClassGuid(This,pGuid)
1666#define INetCfgComponent_GetBindName(This,ppszwBindName) (This)->lpVtbl->GetBindName(This,ppszwBindName)
1667#define INetCfgComponent_GetDeviceStatus(This,pulStatus) (This)->lpVtbl->GetDeviceStatus(This,pulStatus)
1668#define INetCfgComponent_OpenParamKey(This,phkey) (This)->lpVtbl->OpenParamKey(This,phkey)
1669#define INetCfgComponent_RaisePropertyUi(This,hwndParent,dwFlags,punkContext) (This)->lpVtbl->RaisePropertyUi(This,hwndParent,dwFlags,punkContext)
1670#else
1671/*** IUnknown methods ***/
1672static inline HRESULT INetCfgComponent_QueryInterface(INetCfgComponent* This,REFIID riid,void **ppvObject) {
1673    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1674}
1675static inline ULONG INetCfgComponent_AddRef(INetCfgComponent* This) {
1676    return This->lpVtbl->AddRef(This);
1677}
1678static inline ULONG INetCfgComponent_Release(INetCfgComponent* This) {
1679    return This->lpVtbl->Release(This);
1680}
1681/*** INetCfgComponent methods ***/
1682static inline HRESULT INetCfgComponent_GetDisplayName(INetCfgComponent* This,LPWSTR *ppszwDisplayName) {
1683    return This->lpVtbl->GetDisplayName(This,ppszwDisplayName);
1684}
1685static inline HRESULT INetCfgComponent_SetDisplayName(INetCfgComponent* This,LPCWSTR pszwDisplayName) {
1686    return This->lpVtbl->SetDisplayName(This,pszwDisplayName);
1687}
1688static inline HRESULT INetCfgComponent_GetHelpText(INetCfgComponent* This,LPWSTR *pszwHelpText) {
1689    return This->lpVtbl->GetHelpText(This,pszwHelpText);
1690}
1691static inline HRESULT INetCfgComponent_GetId(INetCfgComponent* This,LPWSTR *ppszwId) {
1692    return This->lpVtbl->GetId(This,ppszwId);
1693}
1694static inline HRESULT INetCfgComponent_GetCharacteristics(INetCfgComponent* This,LPDWORD pdwCharacteristics) {
1695    return This->lpVtbl->GetCharacteristics(This,pdwCharacteristics);
1696}
1697static inline HRESULT INetCfgComponent_GetInstanceGuid(INetCfgComponent* This,GUID *pGuid) {
1698    return This->lpVtbl->GetInstanceGuid(This,pGuid);
1699}
1700static inline HRESULT INetCfgComponent_GetPnpDevNodeId(INetCfgComponent* This,LPWSTR *ppszwDevNodeId) {
1701    return This->lpVtbl->GetPnpDevNodeId(This,ppszwDevNodeId);
1702}
1703static inline HRESULT INetCfgComponent_GetClassGuid(INetCfgComponent* This,GUID *pGuid) {
1704    return This->lpVtbl->GetClassGuid(This,pGuid);
1705}
1706static inline HRESULT INetCfgComponent_GetBindName(INetCfgComponent* This,LPWSTR *ppszwBindName) {
1707    return This->lpVtbl->GetBindName(This,ppszwBindName);
1708}
1709static inline HRESULT INetCfgComponent_GetDeviceStatus(INetCfgComponent* This,ULONG *pulStatus) {
1710    return This->lpVtbl->GetDeviceStatus(This,pulStatus);
1711}
1712static inline HRESULT INetCfgComponent_OpenParamKey(INetCfgComponent* This,HKEY *phkey) {
1713    return This->lpVtbl->OpenParamKey(This,phkey);
1714}
1715static inline HRESULT INetCfgComponent_RaisePropertyUi(INetCfgComponent* This,HWND hwndParent,DWORD dwFlags,IUnknown *punkContext) {
1716    return This->lpVtbl->RaisePropertyUi(This,hwndParent,dwFlags,punkContext);
1717}
1718#endif
1719#endif
1720
1721#endif
1722
1723
1724#endif  /* __INetCfgComponent_INTERFACE_DEFINED__ */
1725
1726
1727/*****************************************************************************
1728 * INetCfgComponentBindings interface
1729 */
1730#ifndef __INetCfgComponentBindings_INTERFACE_DEFINED__
1731#define __INetCfgComponentBindings_INTERFACE_DEFINED__
1732
1733typedef enum tagSUPPORTS_BINDING_INTERFACE_FLAGS {
1734    NCF_LOWER = 0x1,
1735    NCF_UPPER = 0x2
1736} SUPPORTS_BINDING_INTERFACE_FLAGS;
1737typedef enum tagENUM_BINDING_PATHS_FLAGS {
1738    EBP_ABOVE = 0x1,
1739    EBP_BELOW = 0x2
1740} ENUM_BINDING_PATHS_FLAGS;
1741DEFINE_GUID(IID_INetCfgComponentBindings, 0xc0e8ae9e, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
1742#if defined(__cplusplus) && !defined(CINTERFACE)
1743MIDL_INTERFACE("c0e8ae9e-306e-11d1-aacf-00805fc1270e")
1744INetCfgComponentBindings : public IUnknown
1745{
1746    virtual HRESULT STDMETHODCALLTYPE BindTo(
1747        INetCfgComponent *pnccItem) = 0;
1748
1749    virtual HRESULT STDMETHODCALLTYPE UnbindFrom(
1750        INetCfgComponent *pnccItem) = 0;
1751
1752    virtual HRESULT STDMETHODCALLTYPE SupportsBindingInterface(
1753        DWORD dwFlags,
1754        LPCWSTR pszwInterfaceName) = 0;
1755
1756    virtual HRESULT STDMETHODCALLTYPE IsBoundTo(
1757        INetCfgComponent *pnccItem) = 0;
1758
1759    virtual HRESULT STDMETHODCALLTYPE IsBindableTo(
1760        INetCfgComponent *pnccItem) = 0;
1761
1762    virtual HRESULT STDMETHODCALLTYPE EnumBindingPaths(
1763        DWORD dwFlags,
1764        IEnumNetCfgBindingPath **ppIEnum) = 0;
1765
1766    virtual HRESULT STDMETHODCALLTYPE MoveBefore(
1767        INetCfgBindingPath *pncbItemSrc,
1768        INetCfgBindingPath *pncbItemDest) = 0;
1769
1770    virtual HRESULT STDMETHODCALLTYPE MoveAfter(
1771        INetCfgBindingPath *pncbItemSrc,
1772        INetCfgBindingPath *pncbItemDest) = 0;
1773
1774};
1775#ifdef __CRT_UUID_DECL
1776__CRT_UUID_DECL(INetCfgComponentBindings, 0xc0e8ae9e, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
1777#endif
1778#else
1779typedef struct INetCfgComponentBindingsVtbl {
1780    BEGIN_INTERFACE
1781
1782    /*** IUnknown methods ***/
1783    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1784        INetCfgComponentBindings *This,
1785        REFIID riid,
1786        void **ppvObject);
1787
1788    ULONG (STDMETHODCALLTYPE *AddRef)(
1789        INetCfgComponentBindings *This);
1790
1791    ULONG (STDMETHODCALLTYPE *Release)(
1792        INetCfgComponentBindings *This);
1793
1794    /*** INetCfgComponentBindings methods ***/
1795    HRESULT (STDMETHODCALLTYPE *BindTo)(
1796        INetCfgComponentBindings *This,
1797        INetCfgComponent *pnccItem);
1798
1799    HRESULT (STDMETHODCALLTYPE *UnbindFrom)(
1800        INetCfgComponentBindings *This,
1801        INetCfgComponent *pnccItem);
1802
1803    HRESULT (STDMETHODCALLTYPE *SupportsBindingInterface)(
1804        INetCfgComponentBindings *This,
1805        DWORD dwFlags,
1806        LPCWSTR pszwInterfaceName);
1807
1808    HRESULT (STDMETHODCALLTYPE *IsBoundTo)(
1809        INetCfgComponentBindings *This,
1810        INetCfgComponent *pnccItem);
1811
1812    HRESULT (STDMETHODCALLTYPE *IsBindableTo)(
1813        INetCfgComponentBindings *This,
1814        INetCfgComponent *pnccItem);
1815
1816    HRESULT (STDMETHODCALLTYPE *EnumBindingPaths)(
1817        INetCfgComponentBindings *This,
1818        DWORD dwFlags,
1819        IEnumNetCfgBindingPath **ppIEnum);
1820
1821    HRESULT (STDMETHODCALLTYPE *MoveBefore)(
1822        INetCfgComponentBindings *This,
1823        INetCfgBindingPath *pncbItemSrc,
1824        INetCfgBindingPath *pncbItemDest);
1825
1826    HRESULT (STDMETHODCALLTYPE *MoveAfter)(
1827        INetCfgComponentBindings *This,
1828        INetCfgBindingPath *pncbItemSrc,
1829        INetCfgBindingPath *pncbItemDest);
1830
1831    END_INTERFACE
1832} INetCfgComponentBindingsVtbl;
1833
1834interface INetCfgComponentBindings {
1835    CONST_VTBL INetCfgComponentBindingsVtbl* lpVtbl;
1836};
1837
1838#ifdef COBJMACROS
1839#ifndef WIDL_C_INLINE_WRAPPERS
1840/*** IUnknown methods ***/
1841#define INetCfgComponentBindings_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1842#define INetCfgComponentBindings_AddRef(This) (This)->lpVtbl->AddRef(This)
1843#define INetCfgComponentBindings_Release(This) (This)->lpVtbl->Release(This)
1844/*** INetCfgComponentBindings methods ***/
1845#define INetCfgComponentBindings_BindTo(This,pnccItem) (This)->lpVtbl->BindTo(This,pnccItem)
1846#define INetCfgComponentBindings_UnbindFrom(This,pnccItem) (This)->lpVtbl->UnbindFrom(This,pnccItem)
1847#define INetCfgComponentBindings_SupportsBindingInterface(This,dwFlags,pszwInterfaceName) (This)->lpVtbl->SupportsBindingInterface(This,dwFlags,pszwInterfaceName)
1848#define INetCfgComponentBindings_IsBoundTo(This,pnccItem) (This)->lpVtbl->IsBoundTo(This,pnccItem)
1849#define INetCfgComponentBindings_IsBindableTo(This,pnccItem) (This)->lpVtbl->IsBindableTo(This,pnccItem)
1850#define INetCfgComponentBindings_EnumBindingPaths(This,dwFlags,ppIEnum) (This)->lpVtbl->EnumBindingPaths(This,dwFlags,ppIEnum)
1851#define INetCfgComponentBindings_MoveBefore(This,pncbItemSrc,pncbItemDest) (This)->lpVtbl->MoveBefore(This,pncbItemSrc,pncbItemDest)
1852#define INetCfgComponentBindings_MoveAfter(This,pncbItemSrc,pncbItemDest) (This)->lpVtbl->MoveAfter(This,pncbItemSrc,pncbItemDest)
1853#else
1854/*** IUnknown methods ***/
1855static inline HRESULT INetCfgComponentBindings_QueryInterface(INetCfgComponentBindings* This,REFIID riid,void **ppvObject) {
1856    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1857}
1858static inline ULONG INetCfgComponentBindings_AddRef(INetCfgComponentBindings* This) {
1859    return This->lpVtbl->AddRef(This);
1860}
1861static inline ULONG INetCfgComponentBindings_Release(INetCfgComponentBindings* This) {
1862    return This->lpVtbl->Release(This);
1863}
1864/*** INetCfgComponentBindings methods ***/
1865static inline HRESULT INetCfgComponentBindings_BindTo(INetCfgComponentBindings* This,INetCfgComponent *pnccItem) {
1866    return This->lpVtbl->BindTo(This,pnccItem);
1867}
1868static inline HRESULT INetCfgComponentBindings_UnbindFrom(INetCfgComponentBindings* This,INetCfgComponent *pnccItem) {
1869    return This->lpVtbl->UnbindFrom(This,pnccItem);
1870}
1871static inline HRESULT INetCfgComponentBindings_SupportsBindingInterface(INetCfgComponentBindings* This,DWORD dwFlags,LPCWSTR pszwInterfaceName) {
1872    return This->lpVtbl->SupportsBindingInterface(This,dwFlags,pszwInterfaceName);
1873}
1874static inline HRESULT INetCfgComponentBindings_IsBoundTo(INetCfgComponentBindings* This,INetCfgComponent *pnccItem) {
1875    return This->lpVtbl->IsBoundTo(This,pnccItem);
1876}
1877static inline HRESULT INetCfgComponentBindings_IsBindableTo(INetCfgComponentBindings* This,INetCfgComponent *pnccItem) {
1878    return This->lpVtbl->IsBindableTo(This,pnccItem);
1879}
1880static inline HRESULT INetCfgComponentBindings_EnumBindingPaths(INetCfgComponentBindings* This,DWORD dwFlags,IEnumNetCfgBindingPath **ppIEnum) {
1881    return This->lpVtbl->EnumBindingPaths(This,dwFlags,ppIEnum);
1882}
1883static inline HRESULT INetCfgComponentBindings_MoveBefore(INetCfgComponentBindings* This,INetCfgBindingPath *pncbItemSrc,INetCfgBindingPath *pncbItemDest) {
1884    return This->lpVtbl->MoveBefore(This,pncbItemSrc,pncbItemDest);
1885}
1886static inline HRESULT INetCfgComponentBindings_MoveAfter(INetCfgComponentBindings* This,INetCfgBindingPath *pncbItemSrc,INetCfgBindingPath *pncbItemDest) {
1887    return This->lpVtbl->MoveAfter(This,pncbItemSrc,pncbItemDest);
1888}
1889#endif
1890#endif
1891
1892#endif
1893
1894
1895#endif  /* __INetCfgComponentBindings_INTERFACE_DEFINED__ */
1896
1897
1898/*****************************************************************************
1899 * INetCfgSysPrep interface
1900 */
1901#ifndef __INetCfgSysPrep_INTERFACE_DEFINED__
1902#define __INetCfgSysPrep_INTERFACE_DEFINED__
1903
1904DEFINE_GUID(IID_INetCfgSysPrep, 0xc0e8ae98, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e);
1905#if defined(__cplusplus) && !defined(CINTERFACE)
1906MIDL_INTERFACE("c0e8ae98-306e-11d1-aacf-00805fc1270e")
1907INetCfgSysPrep : public IUnknown
1908{
1909    virtual HRESULT STDMETHODCALLTYPE HrSetupSetFirstDword(
1910        LPCWSTR pwszSection,
1911        LPCWSTR pwszKey,
1912        DWORD dwValue) = 0;
1913
1914    virtual HRESULT STDMETHODCALLTYPE HrSetupSetFirstString(
1915        LPCWSTR pwszSection,
1916        LPCWSTR pwszKey,
1917        LPCWSTR pwszValue) = 0;
1918
1919    virtual HRESULT STDMETHODCALLTYPE HrSetupSetFirstStringAsBool(
1920        LPCWSTR pwszSection,
1921        LPCWSTR pwszKey,
1922        WINBOOL fValue) = 0;
1923
1924    virtual HRESULT STDMETHODCALLTYPE HrSetupSetFirstMultiSzField(
1925        LPCWSTR pwszSection,
1926        LPCWSTR pwszKey,
1927        LPCWSTR pmszValue) = 0;
1928
1929};
1930#ifdef __CRT_UUID_DECL
1931__CRT_UUID_DECL(INetCfgSysPrep, 0xc0e8ae98, 0x306e, 0x11d1, 0xaa,0xcf, 0x00,0x80,0x5f,0xc1,0x27,0x0e)
1932#endif
1933#else
1934typedef struct INetCfgSysPrepVtbl {
1935    BEGIN_INTERFACE
1936
1937    /*** IUnknown methods ***/
1938    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1939        INetCfgSysPrep *This,
1940        REFIID riid,
1941        void **ppvObject);
1942
1943    ULONG (STDMETHODCALLTYPE *AddRef)(
1944        INetCfgSysPrep *This);
1945
1946    ULONG (STDMETHODCALLTYPE *Release)(
1947        INetCfgSysPrep *This);
1948
1949    /*** INetCfgSysPrep methods ***/
1950    HRESULT (STDMETHODCALLTYPE *HrSetupSetFirstDword)(
1951        INetCfgSysPrep *This,
1952        LPCWSTR pwszSection,
1953        LPCWSTR pwszKey,
1954        DWORD dwValue);
1955
1956    HRESULT (STDMETHODCALLTYPE *HrSetupSetFirstString)(
1957        INetCfgSysPrep *This,
1958        LPCWSTR pwszSection,
1959        LPCWSTR pwszKey,
1960        LPCWSTR pwszValue);
1961
1962    HRESULT (STDMETHODCALLTYPE *HrSetupSetFirstStringAsBool)(
1963        INetCfgSysPrep *This,
1964        LPCWSTR pwszSection,
1965        LPCWSTR pwszKey,
1966        WINBOOL fValue);
1967
1968    HRESULT (STDMETHODCALLTYPE *HrSetupSetFirstMultiSzField)(
1969        INetCfgSysPrep *This,
1970        LPCWSTR pwszSection,
1971        LPCWSTR pwszKey,
1972        LPCWSTR pmszValue);
1973
1974    END_INTERFACE
1975} INetCfgSysPrepVtbl;
1976
1977interface INetCfgSysPrep {
1978    CONST_VTBL INetCfgSysPrepVtbl* lpVtbl;
1979};
1980
1981#ifdef COBJMACROS
1982#ifndef WIDL_C_INLINE_WRAPPERS
1983/*** IUnknown methods ***/
1984#define INetCfgSysPrep_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1985#define INetCfgSysPrep_AddRef(This) (This)->lpVtbl->AddRef(This)
1986#define INetCfgSysPrep_Release(This) (This)->lpVtbl->Release(This)
1987/*** INetCfgSysPrep methods ***/
1988#define INetCfgSysPrep_HrSetupSetFirstDword(This,pwszSection,pwszKey,dwValue) (This)->lpVtbl->HrSetupSetFirstDword(This,pwszSection,pwszKey,dwValue)
1989#define INetCfgSysPrep_HrSetupSetFirstString(This,pwszSection,pwszKey,pwszValue) (This)->lpVtbl->HrSetupSetFirstString(This,pwszSection,pwszKey,pwszValue)
1990#define INetCfgSysPrep_HrSetupSetFirstStringAsBool(This,pwszSection,pwszKey,fValue) (This)->lpVtbl->HrSetupSetFirstStringAsBool(This,pwszSection,pwszKey,fValue)
1991#define INetCfgSysPrep_HrSetupSetFirstMultiSzField(This,pwszSection,pwszKey,pmszValue) (This)->lpVtbl->HrSetupSetFirstMultiSzField(This,pwszSection,pwszKey,pmszValue)
1992#else
1993/*** IUnknown methods ***/
1994static inline HRESULT INetCfgSysPrep_QueryInterface(INetCfgSysPrep* This,REFIID riid,void **ppvObject) {
1995    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1996}
1997static inline ULONG INetCfgSysPrep_AddRef(INetCfgSysPrep* This) {
1998    return This->lpVtbl->AddRef(This);
1999}
2000static inline ULONG INetCfgSysPrep_Release(INetCfgSysPrep* This) {
2001    return This->lpVtbl->Release(This);
2002}
2003/*** INetCfgSysPrep methods ***/
2004static inline HRESULT INetCfgSysPrep_HrSetupSetFirstDword(INetCfgSysPrep* This,LPCWSTR pwszSection,LPCWSTR pwszKey,DWORD dwValue) {
2005    return This->lpVtbl->HrSetupSetFirstDword(This,pwszSection,pwszKey,dwValue);
2006}
2007static inline HRESULT INetCfgSysPrep_HrSetupSetFirstString(INetCfgSysPrep* This,LPCWSTR pwszSection,LPCWSTR pwszKey,LPCWSTR pwszValue) {
2008    return This->lpVtbl->HrSetupSetFirstString(This,pwszSection,pwszKey,pwszValue);
2009}
2010static inline HRESULT INetCfgSysPrep_HrSetupSetFirstStringAsBool(INetCfgSysPrep* This,LPCWSTR pwszSection,LPCWSTR pwszKey,WINBOOL fValue) {
2011    return This->lpVtbl->HrSetupSetFirstStringAsBool(This,pwszSection,pwszKey,fValue);
2012}
2013static inline HRESULT INetCfgSysPrep_HrSetupSetFirstMultiSzField(INetCfgSysPrep* This,LPCWSTR pwszSection,LPCWSTR pwszKey,LPCWSTR pmszValue) {
2014    return This->lpVtbl->HrSetupSetFirstMultiSzField(This,pwszSection,pwszKey,pmszValue);
2015}
2016#endif
2017#endif
2018
2019#endif
2020
2021
2022#endif  /* __INetCfgSysPrep_INTERFACE_DEFINED__ */
2023
2024#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
2025/* Begin additional prototypes for all interfaces */
2026
2027
2028/* End additional prototypes */
2029
2030#ifdef __cplusplus
2031}
2032#endif
2033
2034#endif /* __netcfgx_h__ */