NetworkMonitor.cs 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. //using System.Collections;
  2. //using System.Diagnostics;
  3. //using System.Timers;
  4. //namespace Optimizer
  5. //{
  6. // public class NetworkMonitor
  7. // {
  8. // Timer _timer;
  9. // ArrayList _adapters;
  10. // ArrayList _monitoredAdapters;
  11. // public NetworkMonitor()
  12. // {
  13. // _adapters = new ArrayList();
  14. // _monitoredAdapters = new ArrayList();
  15. // EnumerateNetworkAdapters();
  16. // _timer = new Timer(1000);
  17. // _timer.Elapsed += new ElapsedEventHandler(timer_Elapsed);
  18. // }
  19. // private void EnumerateNetworkAdapters()
  20. // {
  21. // PerformanceCounterCategory category = new PerformanceCounterCategory("Network Interface");
  22. // foreach (string name in category.GetInstanceNames())
  23. // {
  24. // if (name == "MS TCP Loopback interface") continue;
  25. // if (name.ToLowerInvariant().Contains("virtual")) continue;
  26. // if (name.ToLowerInvariant().Contains("hyper-v")) continue;
  27. // NetworkAdapter adapter = new NetworkAdapter(name);
  28. // adapter.DownloadCounter = new PerformanceCounter("Network Interface", "Bytes Received/sec", name);
  29. // adapter.UploadCounter = new PerformanceCounter("Network Interface", "Bytes Sent/sec", name);
  30. // _adapters.Add(adapter);
  31. // }
  32. // }
  33. // private void timer_Elapsed(object sender, ElapsedEventArgs e)
  34. // {
  35. // foreach (NetworkAdapter adapter in this._monitoredAdapters)
  36. // {
  37. // adapter.Refresh();
  38. // }
  39. // }
  40. // public NetworkAdapter[] Adapters
  41. // {
  42. // get { return (NetworkAdapter[])_adapters.ToArray(typeof(NetworkAdapter)); }
  43. // }
  44. // public void StartMonitoring()
  45. // {
  46. // if (_adapters.Count > 0)
  47. // {
  48. // foreach (NetworkAdapter adapter in _adapters)
  49. // {
  50. // if (!_monitoredAdapters.Contains(adapter))
  51. // {
  52. // _monitoredAdapters.Add(adapter);
  53. // adapter.Initialize();
  54. // }
  55. // }
  56. // _timer.Enabled = true;
  57. // }
  58. // }
  59. // public void StartMonitoring(NetworkAdapter adapter)
  60. // {
  61. // if (!_monitoredAdapters.Contains(adapter))
  62. // {
  63. // _monitoredAdapters.Add(adapter);
  64. // adapter.Initialize();
  65. // }
  66. // _timer.Enabled = true;
  67. // }
  68. // public void StopMonitoring()
  69. // {
  70. // _monitoredAdapters.Clear();
  71. // _timer.Enabled = false;
  72. // }
  73. // public void StopMonitoring(NetworkAdapter adapter)
  74. // {
  75. // if (_monitoredAdapters.Contains(adapter))
  76. // {
  77. // _monitoredAdapters.Remove(adapter);
  78. // }
  79. // if (_monitoredAdapters.Count == 0)
  80. // {
  81. // _timer.Enabled = false;
  82. // }
  83. // }
  84. // }
  85. //}