我正在开发一个更改ip和子网掩码的实用程序,但id喜欢能够将其更改回默认值,或者至少将其设置为“自动获取IP地址。”
public void setIPAndSub(string ip_address, string subnet_mask)
{
ManagementClass objMC = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection objMOC = objMC.GetInstances();
foreach (ManagementObject objMO in objMOC)
{
if ((bool)objMO["IPEnabled"])
{
try
{
ManagementBaseObject setIP;
ManagementBaseObject newIP = objMO.GetMethodParameters("EnableStatic");
newIP["IPAddress"] = new string[] { ip_address };
newIP["SubnetMask"] = new string[] { subnet_mask };
setIP = objMO.InvokeMethod("EnableStatic", newIP, null);
MessageBox.Show("Setup complete");
}
catch (Exception)
{
MessageBox.Show("Error");
}
}
}
}
这是一个例子而且有效。我缺少的是一种重置设置的方法...... 或者“自动获取IP地址”。 我真的不知道从哪里开始,我一直在网上做一些研究,但我只是没有知识得到任何我找到的,工作。
答案 0 :(得分:0)
启用DHCP(“自动获取IP地址”表示使用DHCP / autoip):
objMO.InvokeMethod("EnableDHCP", null, null);
有关详细信息,请参阅Win32_NetworkAdapterConfiguration class的文档。