在好例子网,分享、交流、成长!
您当前所在位置:首页C# 开发实例常用C#方法 → C# 获取电脑上传下载速度(网卡)

C# 获取电脑上传下载速度(网卡)

常用C#方法

下载此实例
  • 开发语言:C#
  • 实例大小:0.16M
  • 下载次数:65
  • 浏览次数:1453
  • 发布时间:2018-11-27
  • 实例类别:常用C#方法
  • 发 布 人:天空之城e城主
  • 文件格式:.zip
  • 所需积分:5
 相关标签: 上传 下载

实例介绍

【实例简介】获取电脑上传下载速度

【实例截图】

from clipboard

【核心代码】NetworkMonitor.dll


using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using Echevil;

namespace Network_Monitor_Sample
{
	/// <summary>
	/// Summary description for Form1.
	/// </summary>
	public class FormMain : System.Windows.Forms.Form
	{
		private System.Windows.Forms.Label LabelDownload;
		private System.Windows.Forms.Label LabelUpload;
		private System.Windows.Forms.Label LableDownloadValue;
		private System.Windows.Forms.Label LabelUploadValue;
		private System.Windows.Forms.ListBox ListAdapters;
		private System.Windows.Forms.Timer TimerCounter;
		private System.ComponentModel.IContainer components;

		public FormMain()
		{		
			InitializeComponent();
		}

		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if (components != null) 
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}

		#region Windows Form Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
            this.components = new System.ComponentModel.Container();
            this.ListAdapters = new System.Windows.Forms.ListBox();
            this.LabelDownload = new System.Windows.Forms.Label();
            this.LabelUpload = new System.Windows.Forms.Label();
            this.LableDownloadValue = new System.Windows.Forms.Label();
            this.LabelUploadValue = new System.Windows.Forms.Label();
            this.TimerCounter = new System.Windows.Forms.Timer(this.components);
            this.SuspendLayout();
            // 
            // ListAdapters
            // 
            this.ListAdapters.ItemHeight = 12;
            this.ListAdapters.Location = new System.Drawing.Point(19, 26);
            this.ListAdapters.Name = "ListAdapters";
            this.ListAdapters.Size = new System.Drawing.Size(250, 76);
            this.ListAdapters.TabIndex = 0;
            this.ListAdapters.SelectedIndexChanged  = new System.EventHandler(this.ListAdapters_SelectedIndexChanged);
            // 
            // LabelDownload
            // 
            this.LabelDownload.Location = new System.Drawing.Point(272, 26);
            this.LabelDownload.Name = "LabelDownload";
            this.LabelDownload.Size = new System.Drawing.Size(120, 25);
            this.LabelDownload.TabIndex = 1;
            this.LabelDownload.Text = "Download Speed:";
            this.LabelDownload.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
            // 
            // LabelUpload
            // 
            this.LabelUpload.Location = new System.Drawing.Point(272, 77);
            this.LabelUpload.Name = "LabelUpload";
            this.LabelUpload.Size = new System.Drawing.Size(120, 25);
            this.LabelUpload.TabIndex = 2;
            this.LabelUpload.Text = "Upload Speed:";
            this.LabelUpload.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
            // 
            // LableDownloadValue
            // 
            this.LableDownloadValue.Location = new System.Drawing.Point(388, 26);
            this.LableDownloadValue.Name = "LableDownloadValue";
            this.LableDownloadValue.Size = new System.Drawing.Size(120, 25);
            this.LableDownloadValue.TabIndex = 3;
            this.LableDownloadValue.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
            // 
            // LabelUploadValue
            // 
            this.LabelUploadValue.Location = new System.Drawing.Point(388, 78);
            this.LabelUploadValue.Name = "LabelUploadValue";
            this.LabelUploadValue.Size = new System.Drawing.Size(120, 25);
            this.LabelUploadValue.TabIndex = 4;
            this.LabelUploadValue.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
            // 
            // TimerCounter
            // 
            this.TimerCounter.Interval = 1000;
            this.TimerCounter.Tick  = new System.EventHandler(this.TimerCounter_Tick);
            // 
            // FormMain
            // 
            this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
            this.ClientSize = new System.Drawing.Size(520, 134);
            this.Controls.Add(this.LabelUploadValue);
            this.Controls.Add(this.LableDownloadValue);
            this.Controls.Add(this.LabelUpload);
            this.Controls.Add(this.LabelDownload);
            this.Controls.Add(this.ListAdapters);
            this.Name = "FormMain";
            this.Text = "实时显示上传下载速率";
            this.Load  = new System.EventHandler(this.FormMain_Load);
            this.ResumeLayout(false);

		}
		#endregion

		/// <summary>
		/// The main entry point for the application.
		/// </summary>
		[STAThread]
		static void Main() 
		{
			Application.EnableVisualStyles();
			Application.Run(new FormMain());
		}

		private NetworkAdapter[] adapters;
		private NetworkMonitor monitor;

		private void FormMain_Load(object sender, System.EventArgs e)
		{
			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, System.EventArgs e)
		{
			monitor.StopMonitoring();
			monitor.StartMonitoring(adapters[this.ListAdapters.SelectedIndex]);
			this.TimerCounter.Start();
		}

		private void TimerCounter_Tick(object sender, System.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);
		}

	}
}

标签: 上传 下载

实例下载地址

C# 获取电脑上传下载速度(网卡)

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警