日期:2014-05-16 浏览次数:21367 次
C# 修改IP地址,操作access
?
?使用说明
1. 系统必须安装.NET Framework 2.0 或更高的版本 (文件:dotnetfx2.0.exe)。
2. 将压缩包解压即可使用本程序。
3. 必须在管理员权限运行。
4. 如果系统安装杀毒软件或安全卫士,会弹出修改IP的提示,请记住选择,并允许执行。
5. 修改IP地址,必须让网卡连接上网络才能修改。
?
使用方法:
运行软件后,先配置方案,步骤:
? 1.点击软件界面右上角的 【方案配置】
? 2.安装页面添加方案,添加成功后,点击返回。
? 3.方案列表中就会出现刚才添加的新方案。
? 4.选择一个方案,然后选择网卡(如果只有一个网卡联网,可不用选择)
? 5.点击 【更改 IP 地址】 按钮
? 6.等待更改成功。
?
?
?
核心源码:?
?Conn.cs
using System; using System.Collections.Generic; using System.Text; using System.Management; using System.Collections; using Microsoft.Win32; using System.Net.NetworkInformation; using System.Runtime.InteropServices; namespace IPSwitch { public class Conn { /// <summary> /// 新增按钮的名称 /// </summary> public const string _ADDED_NAME = "新增"; /// <summary> /// 修改按钮的名称 /// </summary> public const string _MODIFY_NAME = "编辑"; /// <summary> /// 重置按钮的名称 /// </summary> public const string _RESET_NAME = "重置"; /// <summary> /// 删除按钮的名称 /// </summary> public const string _DELETE_NAME = "删除"; /// <summary> /// 保存按钮的名称 /// </summary> public const string _SAVE_NAME = "保存"; /// <summary> /// 标题文字 /// </summary> public static string _TITLE = ""; /// <summary> /// 获取title内容 /// </summary> /// <returns></returns> public static string GetTitle() { _TITLE = DBReadAccess.GetObjectBySQL("select top 1 g_value from globals where g_name ='title'").ToString(); return _TITLE; } /// <summary> /// 实例化 Win32_NetworkAdapterConfiguration类 /// </summary> /// <returns></returns> private static ManagementObjectCollection GetMCInstances() { ManagementClass processClass = new ManagementClass("Win32_NetworkAdapterConfiguration"); return processClass.GetInstances(); } /// <summary> /// 获取当前系统中所有网卡的名称 /// </summary> /// <returns></returns> public static List<string> GetNICNameList() { List<string> list = new List<string>(); ManagementObjectCollection moc = Conn.GetMCInstances(); //获取当前系统的所有NIC foreach (ManagementObject mo in moc) { if ((bool)mo["IPEnabled"]) { //将当前已经启动的网卡名称加以标识 //list.Insert(0,mo.GetPropertyValue("Description").ToString()); list.Add(mo.GetPropertyValue("SettingID").ToString()); continue; } //list.Add("(不可用)"+mo.GetPropertyValue("Description").ToString()); } return GetNICNameList(list); } /// <summary> /// 获取当前可以用网卡 /// </summary> /// <returns></returns> public static int GetIPEnabledNum() { int i = 0; ManagementObjectCollection moc = Conn.GetMCInstances(); foreach (ManagementObject mo in moc) { if ((bool)mo["IPEnabled"]) { i++; } } return i; } /// <summary> /// 设置 自动获取IP /// </summary> public static void SetIpAddressAuto() { return; //ManagementObjectCollection moc = Conn.GetMCInstances(); //ManagementBaseObject inPar = null; //foreach (ManagementObject mo in moc)