//控制该适配器开始工作 public void StartMonitoring(MyNetWorkMatchClass myMNWMadapter) { if (!m_MonitoredAdapters.Contains(myMNWMadapter)) { m_MonitoredAdapters.Add(myMNWMadapter); //该适配器调用自己函数开始工作 myMNWMadapter.Start(); } Monitor_Timer.Enabled = true; }
//计时开始,用于每秒钟改变显示速度 private void Timepiece_Tick(object sender, EventArgs e) { //该适配器 MyNetWorkMatchClass adapter = m_MNWMadapters[adapterIndex]; //得到该适配器的下载速度 textBox_Down.Text = adapter.DownloadSpeedKbps; //得到该适配器的上传速度 textBox_Up.Text = adapter.UploadSpeedKbps; }
public void StopMonitoring(MyNetWorkMatchClass adapter) { if (m_MonitoredAdapters.Contains(adapter)) { m_MonitoredAdapters.Remove(adapter); } if (m_MonitoredAdapters.Count == 0) { Monitor_Timer.Enabled = false; } }
//列举出安装在该计算机上面的适配器方法 private void ShowNetAdapter() { PerformanceCounterCategory PCCCategory = new PerformanceCounterCategory("Network Interface"); foreach (string InstanceName in PCCCategory.GetInstanceNames()) { if (InstanceName == "MS TCP Loopback interface") { continue; } // 创建一个实例Net workAdapter类别,并创建性能计数器。 MyNetWorkMatchClass myMNWMadapter = new MyNetWorkMatchClass(InstanceName); myMNWMadapter.m_Performance_Down = new PerformanceCounter("Network Interface", "Bytes Received/sec", InstanceName); myMNWMadapter.m_Performance_Up = new PerformanceCounter("Network Interface", "Bytes Sent/sec", InstanceName); m_AdaptersList.Add(myMNWMadapter); } }