|
|
//+--------------------------------------------------------------------------- // // Microsoft Windows // Copyright (c) Microsoft Corporation. All rights reserved. // // File: netcfgp.idl // //----------------------------------------------------------------------------
cpp_quote("//+-------------------------------------------------------------------------") cpp_quote("//") cpp_quote("// Microsoft Windows") cpp_quote("// Copyright (c) Microsoft Corporation. All rights reserved.") cpp_quote("//") cpp_quote("//--------------------------------------------------------------------------")
cpp_quote("#if ( _MSC_VER >= 800 )") cpp_quote("#pragma warning(disable:4201)") cpp_quote("#endif")
#ifndef DO_NO_IMPORTS import "unknwn.idl"; import "wtypes.idl"; import "netcfgx.idl"; #endif
cpp_quote("STDAPI") cpp_quote("SvchostChangeSvchostGroup (") cpp_quote(" LPCWSTR pszService,") cpp_quote(" LPCWSTR pszNewGroup") cpp_quote(" );")
// Reserved GUIDS for our use // // 98133270-4B20-11D1-AB01-00805FC1270E IID_IIpxAdapterInfo // 98133271-4B20-11D1-AB01-00805FC1270E IID_ITcpipProperties // 98133272-4B20-11D1-AB01-00805FC1270E (available) // 98133273-4B20-11D1-AB01-00805FC1270E IID_INetCfgComponentPrivate // 98133274-4B20-11D1-AB01-00805FC1270E IID_INetInstallQueue // 98133275-4B20-11D1-AB01-00805FC1270E IID_IRasBindingConfig // 98133276-4B20-11D1-AB01-00805FC1270E IID_INetCfgInternalSetup // 98133277-4B20-11D1-AB01-00805FC1270E // ... // 981332C4-4B20-11D1-AB01-00805FC1270E // 981332C5-4B20-11D1-AB01-00805FC1270E
interface IIpxAdapterInfo; interface INetCfgComponentPrivate; interface INetCfgInternalSetup; interface INetInstallQueue; interface IRasBindingConfig; interface ITcpipProperties;
//+--------------------------------------------------------------------------- // IIpxAdapterInfo - // // This interface is implemented by the IPX notify object. It is // queryable by clients of INetCfg (via INetCfgComponent->QueryNotifyObject). // [ local, object, uuid(98133270-4B20-11D1-AB01-00805FC1270E), pointer_default(unique) ] interface IIpxAdapterInfo : IUnknown { HRESULT GetFrameTypesForAdapter ( [in, string] LPCWSTR pszwAdapterBindName, [in] DWORD cFrameTypesMax, [out, size_is (cFrameTypesMax), length_is (*pcFrameTypes)] DWORD* anFrameTypes, [out, ref] DWORD* pcFrameTypes);
HRESULT GetVirtualNetworkNumber ( [out] DWORD* pdwVNetworkNumber);
HRESULT SetVirtualNetworkNumber( [in] DWORD dwVNetworkNumber); };
//+--------------------------------------------------------------------------- // ITcpipProperties - // // This interface is implemented by the TCP/IP notify object. It is // queryable by clients of INetCfg (via INetCfgComponent->QueryNotifyObject). // [ local, object, uuid(98133271-4B20-11D1-AB01-00805FC1270E), pointer_default(unique) ] interface ITcpipProperties : IUnknown { // The following two methods are for remote tcpip configuration. typedef struct tagREMOTE_IPINFO { DWORD dwEnableDhcp; WCHAR * pszwIpAddrList; WCHAR * pszwSubnetMaskList; WCHAR * pszwOptionList;
} REMOTE_IPINFO;
HRESULT GetIpInfoForAdapter( [in] const GUID* pguidAdapter, [out] REMOTE_IPINFO** ppInfo);
HRESULT SetIpInfoForAdapter( [in] const GUID* pguidAdapter, [in] REMOTE_IPINFO* pInfo); };
//+--------------------------------------------------------------------------- // INetCfgInternalSetup - // // This interface used by the internal clients to notify INetCfg of // new or updated components. // [ local, object, uuid(98133276-4B20-11D1-AB01-00805FC1270E), pointer_default(unique) ] interface INetCfgInternalSetup : IUnknown { HRESULT BeginBatchOperation ();
HRESULT CommitBatchOperation ();
typedef enum tagCI_FILTER_COMPONENT { FC_LAN, FC_RASSRV, FC_RASCLI, FC_ATM, } CI_FILTER_COMPONENT;
typedef struct tagCI_FILTER_INFO { CI_FILTER_COMPONENT eFilter; INetCfgComponent* pIComp; void* pvReserved; } CI_FILTER_INFO;
HRESULT SelectWithFilterAndInstall ( [in] HWND hwndParent, [in] const GUID* pClassGuid, [in] OBO_TOKEN* pOboToken, [in] const CI_FILTER_INFO* pcfi, [out] INetCfgComponent** ppIComp);
HRESULT EnumeratedComponentInstalled ( [in] PVOID pComponent /* type of CComponent */);
HRESULT EnumeratedComponentUpdated ( [in] LPCWSTR pszPnpId);
HRESULT UpdateNonEnumeratedComponent ( [in] INetCfgComponent* pIComp, [in] DWORD dwSetupFlags, [in] DWORD dwUpgradeFromBuildNo);
HRESULT EnumeratedComponentRemoved ( [in] LPCWSTR pszPnpId); };
//+--------------------------------------------------------------------------- // INetCfgComponentPrivate - // // This interface used by the internal clients to access private methods // off of INetCfgComponent. // [ local, object, uuid(98133273-4B20-11D1-AB01-00805FC1270E), pointer_default(unique) ] interface INetCfgComponentPrivate : IUnknown { HRESULT QueryNotifyObject ( [in] REFIID riid, [out, iid_is(riid)] void** ppvObject);
HRESULT SetDirty ();
HRESULT NotifyUpperEdgeConfigChange (); };
//+--------------------------------------------------------------------------- // INetInstallQueue - // [ object, uuid(98133274-4B20-11D1-AB01-00805FC1270E), pointer_default(unique) ] interface INetInstallQueue : IUnknown { typedef enum tagNC_INSTALL_TYPE { NCI_INSTALL, NCI_UPDATE, NCI_REMOVE, } NC_INSTALL_TYPE;
typedef struct NIQ_INFO { NC_INSTALL_TYPE eType; GUID ClassGuid; GUID InstanceGuid; DWORD dwCharacter; LPCWSTR pszPnpId; LPCWSTR pszInfId; DWORD dwDeipFlags; } NIQ_INFO;
HRESULT AddItem ( [in] const NIQ_INFO* pInfo);
HRESULT ProcessItems (); };
//+--------------------------------------------------------------------------- // INetCfgSpecialCase - [ local, object, uuid(C0E8AE95-306E-11D1-AACF-00805FC1270E), pointer_default(unique) ] interface INetCfgSpecialCase : IUnknown { HRESULT GetAdapterOrder ( [out] DWORD* pcAdapters, [out] INetCfgComponent*** papAdapters, [out] BOOL* pfWanAdaptersFirst);
HRESULT SetAdapterOrder ( [in] DWORD cAdapters, [in] INetCfgComponent** apAdapters, [in] BOOL fWanAdaptersFirst);
HRESULT GetWanAdaptersFirst ( [out] BOOL * pfWanAdaptersFirst);
HRESULT SetWanAdaptersFirst ( [in] BOOL fWanAdaptersFirst); };
|