使用C#,我该如何释放并重新获取基于DHCP的IP地址?
目前,我正在使用进程方法来使用这些DOS命令:
ipconfig /release
并且
ipconfig /renew
在C#中是否有更加管理的方法来处理这个问题?
使用C#,我该如何释放并重新获取基于DHCP的IP地址?
目前,我正在使用进程方法来使用这些DOS命令:
ipconfig /release
并且
ipconfig /renew
在C#中是否有更加管理的方法来处理这个问题?
ManagementClass objMC = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection objMOC = objMC.GetInstances();
foreach (ManagementObject objMO in objMOC)
{
//Need to determine which adapter here with some kind of if() statement
objMO.InvokeMethod("ReleaseDHCPLease", null, null);
objMO.InvokeMethod("RenewDHCPLease", null, null);
}
foreach
完成吗?有没有直接调用objMO.InvokeMethod("ReleaseDHCPLease", null, null)
的方法?像这样:var objMO = new ManagementObject(@"root/cimv2, $"Win32_NetWorkAdapterConfiguration", null);
- Thiago Guimarães
SelectQuery query = new SelectQuery("Win32_NetworkAdapter", "AdapterTypeID=0");
ManagementObjectSearcher search = new ManagementObjectSearcher(query);
foreach (ManagementObject result in search.Get())
{
NetworkAdapter adapter = new NetworkAdapter(result);
adapter.Disable();
}
并不是说您的进程必须具有提升的特权。
希望能对您有所帮助。