C#实现更改IP功能源码
来源:互联网 发布:linux 不小心删除文件 编辑:程序博客网 时间:2024/06/05 20:34
using System;
using System.Management;
public class ChangeIP
{
private ManagementBaseObject iObj = null;
private ManagementBaseObject oObj = null;
private ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
private readonly ManagementObjectCollection moc;
///<summary>
/// example:
///<code>
/// ChangeIP o = new ChangeIP();
/// string[] ipList = new string[]{"192.168.0.253","192.168.0.250"};
/// string[] subnetList = new string[]{"255.255.255.0","255.255.255.0"};
/// o.ChangeTo(ipList,subnetList);
///</code>
///</summary>
public ChangeIP()
{
moc = mc.GetInstances();
}
///<summary>cortrol</summary>
///<param name="ipAddr">IPAddr List</param>
///<param name="subnetMask">subnetMask List</param>
public void ChangeTo(string[] ipAddr, string[] subnetMask)
{
foreach (ManagementObject mo in moc)
{
if (!(bool)mo["IPEnabled"]) continue;
iObj = mo.GetMethodParameters("EnableStatic");
iObj["IPAddress"] = ipAddr;
iObj["SubnetMask"] = subnetMask;
oObj = mo.InvokeMethod("EnableStatic", iObj, null);
}
}
///<summary>cortrol</summary>
///<param name="ipAddr">IPAddr List</param>
///<param name="subnetMask">subnetMask List</param>
///<param name="gateways">gateway List</param>
///<param name="gatewayCostMetric">gateway CostMetric List, example: 1</param>
public void ChangeTo(string[] ipAddr, string[] subnetMask, string[] gateways, string[] gatewayCostMetric)
{
foreach (ManagementObject mo in moc)
{
if (!(bool)mo["IPEnabled"]) continue;
iObj = mo.GetMethodParameters("EnableStatic");
iObj["IPAddress"] = ipAddr;
iObj["SubnetMask"] = subnetMask;
oObj = mo.InvokeMethod("EnableStatic", iObj, null);
iObj = mo.GetMethodParameters("SetGateways");
iObj["DefaultIPGateway"] = gateways;
iObj["GatewayCostMetric"] = gatewayCostMetric;
oObj = mo.InvokeMethod("SetGateways", iObj, null);
}
}
///<summary>cortrol</summary>
///<param name="ipAddr">IPAddr List</param>
///<param name="subnetMask">subnetMask List</param>
///<param name="gateways">gateway List</param>
///<param name="gatewayCostMetric">gateway CostMetric List, example: 1</param>
///<param name="dnsServer">DNSServer List</param>
public void ChangeTo(string[] ipAddr, string[] subnetMask, string[] gateways, string[] gatewayCostMetric, string[] dnsServer)
{
foreach (ManagementObject mo in moc)
{
if (!(bool)mo["IPEnabled"]) continue;
iObj = mo.GetMethodParameters("EnableStatic");
iObj["IPAddress"] = ipAddr;
iObj["SubnetMask"] = subnetMask;
oObj = mo.InvokeMethod("EnableStatic", iObj, null);
iObj = mo.GetMethodParameters("SetGateways");
iObj["DefaultIPGateway"] = gateways;
iObj["GatewayCostMetric"] = gatewayCostMetric;
oObj = mo.InvokeMethod("SetGateways", iObj, null);
iObj = mo.GetMethodParameters("SetDNSServerSearchOrder");
iObj["DNSServerSearchOrder"] = dnsServer;
oObj = mo.InvokeMethod("SetDNSServerSearchOrder", iObj, null);
}
}
///<summary>DHCPEnabled</summary>
public void EnableDHCP()
{
foreach (ManagementObject mo in moc)
{
if (!(bool)mo["IPEnabled"]) continue;
if (!(bool)mo["DHCPEnabled"])
{
iObj = mo.GetMethodParameters("EnableDHCP");
oObj = mo.InvokeMethod("EnableDHCP", iObj, null);
}
}
}
}
- C#实现更改IP功能源码
- C#实现更改IP功能源码
- C#实现更改IP功能源码
- C#实现更改IP功能源码
- C#实现更改IP功能源码
- C#实现更改IP功能源码
- C#实现更改IP功能源代码
- C#实现更改IP功能源代码
- C#实现ip 地址过滤功能
- C#实现ip 地址过滤功能
- 更改VLC源码 实现使用libVLC录像功能
- [置顶] 更改VLC源码 实现使用libVLC录像功能
- 更改VLC源码 实现使用libVLC录像功能
- 更改VLC源码 实现使用libVLC录像功能
- C# GDI+实现截图功能源码
- C#自动换ip功能或者ip代理功能要这么实现
- C#实现Ping功能|根据网址查询IP
- C#实现Ping功能|根据网址查询IP
- ASP.NET中使用动态LoadControl和缓存问题
- Spring 定时任务实现
- JSF自定义配置文件
- 人格决定你的人生:一句“玩笑”,两种人生
- DevExpress打印相关代码
- C#实现更改IP功能源码
- 由VC生成DLL,以供VB等调用
- 软件工程中10个最重要的理念
- 【分享】注册表开3389
- 职业经理人的无奈定律——八二法则(非二八定律)
- 火箭翠西传(精彩)
- Ajax优缺点
- 这三种力量,让你的人生从此大不一样
- 今天回去过年