C#语言实现定时开启或禁用网卡小程序
C#语言实现定时开启/禁用网卡
- 程序运行效果图
- 程序实现主要代码
- 源代码工程文件(VS2013工程文件编译通过)
- 查看网卡名称附图
1.win7旗舰版运行效果图:
2.程序实现主要代码:
/// 网卡列表
1 /// <summary>2 /// 网卡列表3 /// </summary>4 public void NetWorkList()5 {6 string manage = "SELECT * From Win32_NetworkAdapter";7 ManagementObjectSearcher searcher = new ManagementObjectSearcher(manage);8 ManagementObjectCollection collection = searcher.Get();9 List<string> netWorkList = new List<string>(); 10 11 foreach (ManagementObject obj in collection) 12 { 13 netWorkList.Add(obj["Name"].ToString()); 14 15 } 16 this.cmbNetWork.DataSource = netWorkList; 17 18 }
/// 禁用网卡
1 /// <summary>2 /// 禁用网卡3 /// </summary>54 /// <param name="netWorkName">网卡名</param>5 /// <returns></returns>6 public bool DisableNetWork(ManagementObject network)7 {8 try9 { 10 network.InvokeMethod("Disable", null); 11 return true; 12 } 13 catch 14 { 15 return false; 16 } 17 }
/// 启用网卡
1 /// <summary>2 /// 启用网卡3 /// </summary>4 /// <param name="netWorkName">网卡名</param>5 /// <returns></returns>6 public bool EnableNetWork(ManagementObject network)7 {8 try9 { 10 network.InvokeMethod("Enable", null); 11 return true; 12 } 13 catch 14 { 15 return false; 16 } 17 18 }
/// 网卡状态
1 /// <summary>2 /// 网卡状态3 /// </summary>4 /// <param name="netWorkName">网卡名</param>5 /// <returns></returns>6 public bool NetWorkState(string netWorkName)7 {8 string netState = "SELECT * From Win32_NetworkAdapter";9 ManagementObjectSearcher searcher = new ManagementObjectSearcher(netState); 10 ManagementObjectCollection collection = searcher.Get(); 11 foreach (ManagementObject manage in collection) 12 { 13 if (manage["Name"].ToString() == netWorkName) 14 { 15 return true; 16 } 17 } 18 return false; 19 }
/// 得到指定网卡
1 /// <summary>2 /// 得到指定网卡3 /// </summary>4 /// <param name="networkname">网卡名字</param>5 /// <returns></returns>6 public ManagementObject NetWork(string networkname)7 {8 string netState = "SELECT * From Win32_NetworkAdapter";9 10 ManagementObjectSearcher searcher = new ManagementObjectSearcher(netState); 11 ManagementObjectCollection collection = searcher.Get(); 12 13 foreach (ManagementObject manage in collection) 14 { 15 if (manage["Name"].ToString() == networkname) 16 { 17 return manage; 18 } 19 } 20 21 return null; 22 }
/// 开启网卡
1 /// <summary>2 /// 开启网卡3 /// </summary>4 public bool startNetWork()5 {6 if (NetWorkState(this.cmbNetWork.SelectedValue.ToString()))7 {8 if (!EnableNetWork(NetWork(this.cmbNetWork.SelectedValue.ToString())))9 { 10 this.InsertLog("开启网卡失败!"); 11 return false; 12 } 13 else 14 { 15 this.InsertLog("开启网卡成功!"); 16 return true; 17 } 18 } 19 else 20 { 21 this.InsertLog("网卡己开启!"); 22 return false; 23 } 24 25 //NetWorkList(); 26 }
///关闭网卡
1 /// <summary>2 /// 关闭网卡3 /// </summary>4 public bool StopNewWork()5 {6 if (NetWorkState(this.cmbNetWork.SelectedValue.ToString()))7 {8 if (!DisableNetWork(NetWork(this.cmbNetWork.SelectedValue.ToString())))9 { 10 this.InsertLog("禁用网卡失败!"); 11 return false; 12 } 13 else 14 { 15 this.InsertLog("禁用网卡成功!"); 16 return true; 17 } 18 } 19 else 20 { 21 this.InsertLog("网卡己禁用!"); 22 return false; 23 } 24 25 //NetWorkList(); 26 }
///日志记录
1 /// <summary>2 /// 日志记录3 /// </summary>4 /// <param name="msg"></param>5 public void InsertLog(string msg)6 {7 if (this.richTextBox1.Lines.Count() > 100)8 {9 richTextBox1.Clear(); 10 } 11 string str = String.Format("[{0}]--[{1}]-->{2}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), this.cmbNetWork.Text.Trim(), msg) + Environment.NewLine; 12 richTextBox1.Text = richTextBox1.Text.Insert(0, str); 13 }
///定时开启或者关闭
1 private int startTime = 0;2 3 /// <summary>4 /// 定时开启或者关闭5 /// </summary>6 /// <param name="sender"></param>7 /// <param name="e"></param>8 private void timer1_Tick(object sender, EventArgs e)9 { 10 if (startTime != time) 11 { 12 InsertLog((time-startTime - 1) +"秒后执行"); 13 startTime++; 14 return; 15 } 16 17 startTime = 0; 18 if (_state == 0) //0表示开启状态,1表示关闭状态 19 { 20 if (this.StopNewWork()) 21 { 22 _state = 1; 23 } 24 } 25 else 26 { 27 if (this.startNetWork()) 28 { 29 _state = 0; 30 } 31 } 32 }
3.工程源文件下载
附件:工程源文件 http://files.cnblogs.com/files/JiYF/NetWorkCardConnect.rar
4.查看网卡名称
转载于:https://www.cnblogs.com/JiYF/p/6104006.html
C#语言实现定时开启或禁用网卡小程序相关推荐
- python 禁用网卡_C#语言实现定时开启或禁用网卡小程序
C#语言实现定时开启/禁用网卡 程序运行效果图 程序实现主要代码 源代码工程文件(VS2013工程文件编译通过) 查看网卡名称附图 1.win7旗舰版运行效果图: 2.程序实现主要代码: /// 网卡 ...
- win10使用win32-networkadapter系统api实现开启和禁用网卡
最近项目有需求,需要控制系统网卡的开关,查阅了相关资料后,最终参考C#语言实现定时开启或禁用网卡小程序实现 文章中代码编写有些地方有缺陷,本文一一进行了改正,而且文章忽略了操作网卡需要管理员权限,否则 ...
- uniapp调用c语言方法,使用uniapp开发的app/小程序需要注意:
1.小程序顶部沉浸式导航部分高度默认为128rpx: 2.小程序不支持div,标签使用和uniapp一样: 3.在hbuilder中开启小程序运行,如果出现forceUpdate报错,可能是因为微信小 ...
- 1-3 5-7的c语言程序,C语言求1-1/3+1/5-1/7+...——小程序,大道理
问题:用C语言编写程序求1-1/3+1/5-1/7+... 示例: #include void main(){ int n=; float sum=,a=; while(a<=){ sum=su ...
- C语言编写的计算生肖年份的小程序
C语言计算生肖年份 #include "stdio.h" #include "stdlib.h" int main(void){int i,year,tian, ...
- c语言有趣的软件,一个有趣的小程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 源码: #include #include #include #include #include HINSTANCE g_hInstance = 0; L ...
- c语言gotoxy函数dev,写了个小程序,一直会闪屏,用的gotoxy函数,求大神教
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include #include // 全局变量 int position_x,position_y; // 飞机位 ...
- 学生社团管理系统c语言代码,毕业设计—校园社团活动助手小程序
应用场景 在高校,各个学生社团和学生组织都会在各个时间发布各式各样的活动信息,但是目前缺乏一个可靠.统一.简便的平台汇总各类的活动信息.社团活动助手小程序是基于自己大学校园内的各项信息开发的一款集报名 ...
- PHP充值怎么打折,教大家如何用PHP语言写一个简单的商品打折小程序!
注:php是嵌套在html里面使用的,本文仅是商品打折小程序的代码 效果图: 代码:html> 宗波尘客php代码演示P17 请输入商品折扣价: 折扣: 九折 八折 七折 六折 五折 $Orig ...
最新文章
- MspEmu W.I.P
- HTML 元素居中的方法
- php post api json数据,php – REST API:请求身份为JSON或纯POST数据?
- wdnas群晖nas_西数WD NAS红盘 WD140EFFX 14TB HDD和 SA500 1TB SSD开箱拆解评测
- 会话推荐和 序列推荐
- EBT 道客巴巴的加密与破解 序章
- 使用springboot实现远程控制
- Linux系统入门学习
- 仙剑奇侠传3 全开注册表改法
- 动作捕捉系统用于下肢外骨骼开发
- SCI 期刊、SCIE 期刊和 ESCI 期刊的比较
- 青春不是用来抱怨,而是用来奋斗的
- 根据Uniprot ID/PDB ID批处理获取蛋白质.pdb文件
- 弘辽科技:拼多多五步教你日销百单
- Ai智能语音机器人系统搭建和私有云部署
- 阿里云服务器能做小程序吗
- andriod——Fresco+Retrofit+GreenDao
- 如何读懂python代码_教你如何阅读 Python 开源项目代码
- 河南2010年全国计算机技术与软件专业技术资格(水平)考试报名时间
- Python计算生态