一、准备工作
1.拷贝NetworkMonitor.dll到项目工程文件夹中(随意),点击项目中的引用,引入程序集,选择浏览,找到这个文件引入。
下载地址:
https://download.csdn.net/download/busiruoli/16033212
2.头文件需要引入
using Echevil;
二、界面部分
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hx5u6gyZ-1616382898507)(https://uploader.shimo.im/f/2UtlyWcYluhwlJJx.png!thumbnail?fileGuid=VqwdYX9pKCHxhKHT)]
点击“获取网卡列表”,即可显示系统的网卡列表。控件名称命名规则可自行定义,代码中自行更改。
二、主要代码内容
#region 网卡获取并且测速
//依赖程序集NetworkMonitor,使用需要引用。
private NetworkAdapter[] adapters;
private NetworkMonitor monitor;
private void git_ip_name()
{
ListAdapters.Items.Clear();
monitor = new NetworkMonitor();
this.adapters = monitor.Adapters;
if (adapters.Length == 0)
{
this.ListAdapters.Enabled = false;
MessageBox.Show("No network adapters found on this computer.");
return;
}
this.ListAdapters.Items.AddRange(this.adapters);
}
private void ListAdapters_SelectedIndexChanged(object sender, EventArgs e)
{
monitor.StopMonitoring();
monitor.StartMonitoring(adapters[this.ListAdapters.SelectedIndex]);
this.TimerCounter.Start();
}
private void TimerCounter_Tick(object sender, EventArgs e)
{
NetworkAdapter adapter = this.adapters[this.ListAdapters.SelectedIndex];
this.LableDownloadValue.Text = String.Format("{0:n} kbps", adapter.DownloadSpeedKbps);
this.LabelUploadValue.Text = String.Format("{0:n} kbps", adapter.UploadSpeedKbps);
}
private void btn_GitNetList_Click(object sender, EventArgs e)
{
git_ip_name();
}
#endregion