Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

154 lines
4.1 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1992-1999.
  5. //
  6. // File: netshell.idl
  7. //
  8. //----------------------------------------------------------------------------
  9. cpp_quote("//+-------------------------------------------------------------------------")
  10. cpp_quote("//")
  11. cpp_quote("// Microsoft Windows")
  12. cpp_quote("// Copyright (C) Microsoft Corporation, 1992-1999.")
  13. cpp_quote("//")
  14. cpp_quote("//--------------------------------------------------------------------------")
  15. cpp_quote("#if ( _MSC_VER >= 800 )")
  16. cpp_quote("#pragma warning(disable:4201)")
  17. cpp_quote("#endif")
  18. #ifndef DO_NO_IMPORTS
  19. import "shlobj.idl";
  20. import "oleidl.idl";
  21. import "docobj.idl";
  22. import "netcfgx.idl";
  23. import "oaidl.idl";
  24. #endif
  25. // We want to be a proxy/stub DLL for all of the interfaces in
  26. // the following IDL files. Therefore we #include them instead of importing
  27. // them.
  28. //
  29. #include "netcon.idl"
  30. #define DO_NO_IMPORTS
  31. #include "netcfgp.idl"
  32. #include "netconp.idl"
  33. // Reserved GUIDS for our use
  34. //
  35. // 1355C840-9F50-11D1-A927-00805FC1270E <available>
  36. // 1355C841-9F50-11D1-A927-00805FC1270E IID_INetConnectionStatisticsNotifySink
  37. // 1355C842-9F50-11D1-A927-00805FC1270E IID_INetStatisticsEngine
  38. // 1355C843-9F50-11D1-A927-00805FC1270E
  39. // 1355C844-9F50-11D1-A927-00805FC1270E
  40. // 1355C845-9F50-11D1-A927-00805FC1270E
  41. // ...
  42. // 1355C8FD-9F50-11D1-A927-00805FC1270E
  43. // 1355C8FE-9F50-11D1-A927-00805FC1270E
  44. // 1355C8FF-9F50-11D1-A927-00805FC1270E
  45. interface INetConnectionStatisticsNotifySink;
  46. interface INetStatisticsEngine;
  47. //+---------------------------------------------------------------------------
  48. // Connection Statistics Notify Sink
  49. //
  50. [
  51. local,
  52. object,
  53. uuid(1355C841-9F50-11D1-A927-00805FC1270E),
  54. pointer_default(unique)
  55. ]
  56. interface INetConnectionStatisticsNotifySink : IUnknown
  57. {
  58. typedef enum tagSTATMON_DATACHANGEDFLAGS
  59. {
  60. SMDCF_NULL = 0x00000000,
  61. SMDCF_TRANSMITTING = 0x40000000,
  62. SMDCF_RECEIVING = 0x80000000,
  63. } STATMON_DATACHANGEDFLAGS;
  64. HRESULT OnStatisticsChanged(
  65. [in] DWORD dwChangeFlags);
  66. };
  67. //+---------------------------------------------------------------------------
  68. // Network Statistics Engine
  69. //
  70. [
  71. local,
  72. object,
  73. uuid(1355C842-9F50-11D1-A927-00805FC1270E),
  74. pointer_default(unique)
  75. ]
  76. interface INetStatisticsEngine : IUnknown
  77. {
  78. typedef enum _DHCP_ADDRESS_TYPE
  79. {
  80. UNKNOWN_ADDR,
  81. NORMAL_ADDR,
  82. AUTONET_ADDR,
  83. ALTERNATE_ADDR,
  84. STATIC_ADDR
  85. } DHCP_ADDRESS_TYPE;
  86. typedef enum _INFRASTRUCTURE_MODE
  87. {
  88. IM_NOT_SUPPORTED,
  89. IM_NDIS802_11IBSS,
  90. IM_NDIS802_11INFRASTRUCTURE,
  91. IM_NDIS802_11AUTOUNKNOWN,
  92. } INFRASTRUCTURE_MODE;
  93. typedef struct tagSTATMON_ENGINEDATA
  94. {
  95. UINT SMED_CONNECTIONSTATUS;
  96. UINT SMED_DURATION;
  97. UINT SMED_SPEEDTRANSMITTING;
  98. UINT SMED_SPEEDRECEIVING;
  99. UINT64 SMED_BYTESTRANSMITTING;
  100. UINT64 SMED_BYTESRECEIVING;
  101. UINT SMED_COMPRESSIONTRANSMITTING;
  102. UINT SMED_COMPRESSIONRECEIVING;
  103. UINT SMED_ERRORSTRANSMITTING;
  104. UINT SMED_ERRORSRECEIVING;
  105. UINT64 SMED_PACKETSTRANSMITTING;
  106. UINT64 SMED_PACKETSRECEIVING;
  107. UINT64 SMED_SALOCAL_BYTESTRANSMITTING;
  108. UINT64 SMED_SALOCAL_BYTESRECEIVING;
  109. UINT64 SMED_SALOCAL_PACKETSTRANSMITTING;
  110. UINT64 SMED_SALOCAL_PACKETSRECEIVING;
  111. DHCP_ADDRESS_TYPE SMED_DHCP_ADDRESS_TYPE;
  112. INFRASTRUCTURE_MODE SMED_INFRASTRUCTURE_MODE;
  113. UINT SMED_802_11_ENCRYPTION_ENABLED;
  114. INT SMED_802_11_SIGNAL_STRENGTH;
  115. WCHAR SMED_802_11_SSID[33];
  116. } STATMON_ENGINEDATA;
  117. HRESULT StartStatistics();
  118. HRESULT StopStatistics();
  119. HRESULT ShowStatusMonitor();
  120. HRESULT CloseStatusMonitor();
  121. HRESULT UpdateStatistics (
  122. [out] BOOL* pfNoLongerConnected);
  123. HRESULT UpdateTitle (
  124. [in] LPCWSTR pszwNewName);
  125. HRESULT UpdateRasLinkList ();
  126. HRESULT GetGuidId(
  127. [out] GUID* pguidId);
  128. HRESULT GetStatistics (
  129. [out] STATMON_ENGINEDATA** ppseAllData);
  130. };