| /** | 
 |  * This file has no copyright assigned and is placed in the Public Domain. | 
 |  * This file is part of the mingw-w64 runtime package. | 
 |  * No warranty is given; refer to the file DISCLAIMER.PD within this package. | 
 |  */ | 
 |  | 
 | cpp_quote("#include <winapifamily.h>") | 
 |  | 
 | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") | 
 |  | 
 | #ifndef DO_NO_IMPORTS | 
 | import "unknwn.idl"; | 
 | import "wtypes.idl"; | 
 | import "netcfgx.idl"; | 
 | #endif | 
 |  | 
 | cpp_quote("") | 
 | [local, object, uuid(8d84bd35-e227-11d2-b700-00a0c98a6a85), pointer_default(unique)] | 
 | interface INetCfgPnpReconfigCallback : IUnknown { | 
 |   typedef [v1_enum] enum tagNCPNP_RECONFIG_LAYER { | 
 |     NCRL_NDIS = 1, | 
 |     NCRL_TDI = 2 | 
 |   } NCPNP_RECONFIG_LAYER; | 
 |  | 
 |   HRESULT SendPnpReconfig ([in] NCPNP_RECONFIG_LAYER Layer, [in] LPCWSTR pszwUpper, [in] LPCWSTR pszwLower, [in] PVOID pvData, [in] DWORD dwSizeOfData); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [local, object, uuid(932238df-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)] | 
 | interface INetCfgComponentControl : IUnknown { | 
 |   HRESULT Initialize ([in] INetCfgComponent *pIComp, [in] INetCfg *pINetCfg, [in] WINBOOL fInstalling); | 
 |   HRESULT ApplyRegistryChanges (); | 
 |   HRESULT ApplyPnpChanges ([in] INetCfgPnpReconfigCallback *pICallback); | 
 |   HRESULT CancelChanges (); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [local, object, uuid(932238e3-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)] | 
 | interface INetCfgComponentSetup : IUnknown { | 
 |   typedef [v1_enum] enum tagNETWORK_INSTALL_TIME { | 
 |     NSF_PRIMARYINSTALL = 0x00000001, | 
 |     NSF_POSTSYSINSTALL = 0x00000002 | 
 |   } NETWORK_INSTALL_TIME; | 
 |  | 
 |   typedef [v1_enum] enum tagNETWORK_UPGRADE_TYPE { | 
 |     NSF_WIN16_UPGRADE = 0x00000010, | 
 |     NSF_WIN95_UPGRADE = 0x00000020, | 
 |     NSF_WINNT_WKS_UPGRADE = 0x00000040, | 
 |     NSF_WINNT_SVR_UPGRADE = 0x00000080, | 
 |     NSF_WINNT_SBS_UPGRADE = 0x00000100, | 
 |     NSF_COMPONENT_UPDATE = 0x00000200 | 
 |   } NETWORK_UPGRADE_TYPE; | 
 |  | 
 |   HRESULT Install ([in] DWORD dwSetupFlags); | 
 |   HRESULT Upgrade ([in] DWORD dwSetupFlags, [in] DWORD dwUpgradeFomBuildNo ); | 
 |   HRESULT ReadAnswerFile ([in] LPCWSTR pszwAnswerFile, [in] LPCWSTR pszwAnswerSections); | 
 |   HRESULT Removing (); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [local, object, uuid(932238e0-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)] | 
 | interface INetCfgComponentPropertyUi : IUnknown { | 
 |   typedef [v1_enum] enum tagDEFAULT_PAGES { | 
 |     DPP_ADVANCED = 1, | 
 |   } DEFAULT_PAGES; | 
 |  | 
 |   HRESULT QueryPropertyUi ([in] IUnknown *pUnkReserved); | 
 |   HRESULT SetContext ([in] IUnknown *pUnkReserved); | 
 |   HRESULT MergePropPages ([in, out] DWORD *pdwDefPages, [out] BYTE **pahpspPrivate, [out] UINT *pcPages, [in] HWND hwndParent, [in] LPCWSTR *pszStartPage); | 
 |   HRESULT ValidateProperties ([in] HWND hwndSheet); | 
 |   HRESULT ApplyProperties (); | 
 |   HRESULT CancelProperties (); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [local, object, uuid(932238e1-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)] | 
 | interface INetCfgComponentNotifyBinding : IUnknown { | 
 |   typedef [v1_enum] enum tagBIND_FLAGS1 { | 
 |     NCN_ADD = 0x00000001, | 
 |     NCN_REMOVE = 0x00000002, | 
 |     NCN_UPDATE = 0x00000004, | 
 |     NCN_ENABLE = 0x00000010, | 
 |     NCN_DISABLE = 0x00000020, | 
 |     NCN_BINDING_PATH = 0x00000100, | 
 |     NCN_PROPERTYCHANGE = 0x00000200, | 
 |     NCN_NET = 0x00010000, | 
 |     NCN_NETTRANS = 0x00020000, | 
 |     NCN_NETCLIENT = 0x00040000, | 
 |     NCN_NETSERVICE = 0x00080000 | 
 |   } BIND_FLAGS1; | 
 |  | 
 |   HRESULT QueryBindingPath ([in] DWORD dwChangeFlag, [in] INetCfgBindingPath *pIPath); | 
 |   HRESULT NotifyBindingPath ([in] DWORD dwChangeFlag, [in] INetCfgBindingPath *pIPath); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [local, object, uuid(932238e2-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)] | 
 | interface INetCfgComponentNotifyGlobal : IUnknown { | 
 |   HRESULT GetSupportedNotifications ([out] DWORD *dwNotifications); | 
 |   HRESULT SysQueryBindingPath ([in] DWORD dwChangeFlag, [in] INetCfgBindingPath *pIPath); | 
 |   HRESULT SysNotifyBindingPath ([in] DWORD dwChangeFlag, [in] INetCfgBindingPath *pIPath); | 
 |   HRESULT SysNotifyComponent ([in] DWORD dwChangeFlag, [in] INetCfgComponent *pIComp); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [local, object, uuid(932238e4-bea1-11d0-9298-00c04fc99dcf), pointer_default(unique)] | 
 | interface INetCfgComponentUpperEdge : IUnknown { | 
 |   HRESULT GetInterfaceIdsForAdapter ([in] INetCfgComponent *pAdapter, [out] DWORD *pdwNumInterfaces, [out] GUID **ppguidInterfaceIds); | 
 |   HRESULT AddInterfacesToAdapter ([in] INetCfgComponent *pAdapter, [in] DWORD dwNumInterfaces); | 
 |   HRESULT RemoveInterfacesFromAdapter ([in] INetCfgComponent *pAdapter, [in] DWORD dwNumInterfaces, [in] const GUID *pguidInterfaceIds); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [object, uuid(c08956a6-1cd3-11d1-b1c5-00805fc1270e), pointer_default(unique)] | 
 | interface INetLanConnectionUiInfo : IUnknown { | 
 |   HRESULT GetDeviceGuid ([out] GUID *pguid); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [object, uuid(faedcf58-31fe-11d1-aad2-00805fc1270e), pointer_default(unique)] | 
 | interface INetRasConnectionIpUiInfo : IUnknown { | 
 |   typedef enum tagRASCON_IPUI_FLAGS { | 
 |     RCUIF_VPN = 0x00000001, | 
 |     RCUIF_DEMAND_DIAL = 0x00000002, | 
 |     RCUIF_NOT_ADMIN = 0x00000004, | 
 |     RCUIF_USE_IPv4_STATICADDRESS = 0x00000008, | 
 |     RCUIF_USE_IPv4_NAME_SERVERS = 0x00000010, | 
 |     RCUIF_USE_IPv4_REMOTE_GATEWAY = 0x00000020, | 
 |     RCUIF_USE_IPv4_EXPLICIT_METRIC = 0x00000040, | 
 |     RCUIF_USE_HEADER_COMPRESSION = 0x00000080, | 
 |     RCUIF_USE_DISABLE_REGISTER_DNS = 0x00000100, | 
 |     RCUIF_USE_PRIVATE_DNS_SUFFIX = 0x00000200, | 
 |     RCUIF_ENABLE_NBT = 0x00000400, | 
 |     RCUIF_USE_IPv6_STATICADDRESS = 0x00000800, | 
 |     RCUIF_USE_IPv6_NAME_SERVERS = 0x00001000, | 
 |     RCUIF_USE_IPv6_REMOTE_GATEWAY = 0x00002000, | 
 |     RCUIF_USE_IPv6_EXPLICIT_METRIC = 0x00004000, | 
 |     RCUIF_DISABLE_CLASS_BASED_ROUTE = 0x00008000 | 
 |   } RASCON_UIINFO_FLAGS; | 
 |  | 
 |   typedef struct tagRASCON_IPUI { | 
 |   GUID guidConnection; | 
 |   WINBOOL fIPv6Cfg; | 
 |   DWORD dwFlags; | 
 |   WCHAR pszwIpAddr[16]; | 
 |   WCHAR pszwDnsAddr[16]; | 
 |   WCHAR pszwDns2Addr[16]; | 
 |   WCHAR pszwWinsAddr[16]; | 
 |   WCHAR pszwWins2Addr[16]; | 
 |   WCHAR pszwDnsSuffix[256]; | 
 |   WCHAR pszwIpv6Addr[65]; | 
 |   DWORD dwIpv6PrefixLength; | 
 |   WCHAR pszwIpv6DnsAddr[65]; | 
 |   WCHAR pszwIpv6Dns2Addr[65]; | 
 |   DWORD dwIPv4InfMetric; | 
 |   DWORD dwIPv6InfMetric; | 
 |   } RASCON_IPUI; | 
 |  | 
 |   HRESULT GetUiInfo ([out] RASCON_IPUI *pInfo); | 
 | }; | 
 |  | 
 | cpp_quote("") | 
 | [local, object, uuid(c0e8ae9a-306e-11d1-aacf-00805fc1270e), pointer_default(unique)] | 
 | interface INetCfgComponentSysPrep : IUnknown { | 
 |   HRESULT SaveAdapterParameters([in] INetCfgSysPrep *pncsp, [in] LPCWSTR pszwAnswerSections, [in] GUID *pAdapterInstanceGuid); | 
 |   HRESULT RestoreAdapterParameters([in] LPCWSTR pszwAnswerFile, [in] LPCWSTR pszwAnswerSection, [in] GUID *pAdapterInstanceGuid); | 
 | }; | 
 |  | 
 | cpp_quote("#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */") |