//+--------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1992-1999. // // File: netshell.idl // //---------------------------------------------------------------------------- cpp_quote("//+-------------------------------------------------------------------------") cpp_quote("//") cpp_quote("// Microsoft Windows") cpp_quote("// Copyright (C) Microsoft Corporation, 1992-1999.") cpp_quote("//") cpp_quote("//--------------------------------------------------------------------------") cpp_quote("#if ( _MSC_VER >= 800 )") cpp_quote("#pragma warning(disable:4201)") cpp_quote("#endif") #ifndef DO_NO_IMPORTS import "shlobj.idl"; import "oleidl.idl"; import "docobj.idl"; import "netcfgx.idl"; import "oaidl.idl"; #endif // We want to be a proxy/stub DLL for all of the interfaces in // the following IDL files. Therefore we #include them instead of importing // them. // #include "netcon.idl" #define DO_NO_IMPORTS #include "netcfgp.idl" #include "netconp.idl" // Reserved GUIDS for our use // // 1355C840-9F50-11D1-A927-00805FC1270E // 1355C841-9F50-11D1-A927-00805FC1270E IID_INetConnectionStatisticsNotifySink // 1355C842-9F50-11D1-A927-00805FC1270E IID_INetStatisticsEngine // 1355C843-9F50-11D1-A927-00805FC1270E // 1355C844-9F50-11D1-A927-00805FC1270E // 1355C845-9F50-11D1-A927-00805FC1270E // ... // 1355C8FD-9F50-11D1-A927-00805FC1270E // 1355C8FE-9F50-11D1-A927-00805FC1270E // 1355C8FF-9F50-11D1-A927-00805FC1270E interface INetConnectionStatisticsNotifySink; interface INetStatisticsEngine; //+--------------------------------------------------------------------------- // Connection Statistics Notify Sink // [ local, object, uuid(1355C841-9F50-11D1-A927-00805FC1270E), pointer_default(unique) ] interface INetConnectionStatisticsNotifySink : IUnknown { typedef enum tagSTATMON_DATACHANGEDFLAGS { SMDCF_NULL = 0x00000000, SMDCF_TRANSMITTING = 0x40000000, SMDCF_RECEIVING = 0x80000000, } STATMON_DATACHANGEDFLAGS; HRESULT OnStatisticsChanged( [in] DWORD dwChangeFlags); }; //+--------------------------------------------------------------------------- // Network Statistics Engine // [ local, object, uuid(1355C842-9F50-11D1-A927-00805FC1270E), pointer_default(unique) ] interface INetStatisticsEngine : IUnknown { typedef enum _DHCP_ADDRESS_TYPE { UNKNOWN_ADDR, NORMAL_ADDR, AUTONET_ADDR, ALTERNATE_ADDR, STATIC_ADDR } DHCP_ADDRESS_TYPE; typedef enum _INFRASTRUCTURE_MODE { IM_NOT_SUPPORTED, IM_NDIS802_11IBSS, IM_NDIS802_11INFRASTRUCTURE, IM_NDIS802_11AUTOUNKNOWN, } INFRASTRUCTURE_MODE; typedef struct tagSTATMON_ENGINEDATA { UINT SMED_CONNECTIONSTATUS; UINT SMED_DURATION; UINT SMED_SPEEDTRANSMITTING; UINT SMED_SPEEDRECEIVING; UINT64 SMED_BYTESTRANSMITTING; UINT64 SMED_BYTESRECEIVING; UINT SMED_COMPRESSIONTRANSMITTING; UINT SMED_COMPRESSIONRECEIVING; UINT SMED_ERRORSTRANSMITTING; UINT SMED_ERRORSRECEIVING; UINT64 SMED_PACKETSTRANSMITTING; UINT64 SMED_PACKETSRECEIVING; UINT64 SMED_SALOCAL_BYTESTRANSMITTING; UINT64 SMED_SALOCAL_BYTESRECEIVING; UINT64 SMED_SALOCAL_PACKETSTRANSMITTING; UINT64 SMED_SALOCAL_PACKETSRECEIVING; DHCP_ADDRESS_TYPE SMED_DHCP_ADDRESS_TYPE; INFRASTRUCTURE_MODE SMED_INFRASTRUCTURE_MODE; UINT SMED_802_11_ENCRYPTION_ENABLED; INT SMED_802_11_SIGNAL_STRENGTH; WCHAR SMED_802_11_SSID[33]; } STATMON_ENGINEDATA; HRESULT StartStatistics(); HRESULT StopStatistics(); HRESULT ShowStatusMonitor(); HRESULT CloseStatusMonitor(); HRESULT UpdateStatistics ( [out] BOOL* pfNoLongerConnected); HRESULT UpdateTitle ( [in] LPCWSTR pszwNewName); HRESULT UpdateRasLinkList (); HRESULT GetGuidId( [out] GUID* pguidId); HRESULT GetStatistics ( [out] STATMON_ENGINEDATA** ppseAllData); };