我想在我的C#代码中更改dns服务器。
这是我的代码:
setDNS()
方法不起作用,只检查静态模式。
setDNSDHCP()
方法确实有效,但会添加一个未识别的网络。
所以,有两个网络。
public void setDNS(string defaultDNS, string subDNS)
{
adapterConfig = new ManagementClass("Win32_NetworkAdapterConfiguration");
networkCollection = adapterConfig.GetInstances();
foreach (ManagementObject adapter in networkCollection)
{
if ((bool)adapter["IPEnabled"])
{
if (adapter["Caption"].Equals(myDesc))
{
ManagementBaseObject objdns = adapter.GetMethodParameters("SetDNSServerSearchOrder");
if (objdns != null)
{
string[] s = { defaultDNS, subDNS };
objdns["DNSServerSearchOrder"] = s;
adapter.InvokeMethod("SetDNSServerSearchOrder", objdns, null);
}
}
}
}
}
public void setDNSDHCP()
{
adapterConfig = new ManagementClass("Win32_NetworkAdapterConfiguration");
networkCollection = adapterConfig.GetInstances();
foreach (ManagementObject adapter in networkCollection)
{
if ((bool)adapter["IPEnabled"])
{
if (adapter["Caption"].Equals(myDesc))
{
ManagementBaseObject objdns = adapter.GetMethodParameters("EnableDHCP");
if (objdns != null)
{
adapter.InvokeMethod("EnableDHCP", objdns, null);
}
}
}
}
}
它不能正常工作。
拜托,帮助我!
我想使用管理!!