Пример #1
0
        public void RecoverDns()
        {
            ManagementClass            mClass  = new ManagementClass("Win32_NetworkAdapterConfiguration");
            ManagementObjectCollection mObjCol = mClass.GetInstances();

            foreach (ManagementObject mObj in mObjCol)
            {
                if ((string)mObj["SettingID"] == Id)
                {
                    ManagementBaseObject mboDNS = mObj.GetMethodParameters("SetDNSServerSearchOrder");
                    if (InitDynamicDns)
                    {
                        if (mboDNS != null)
                        {
                            mboDNS["DNSServerSearchOrder"] = null;
                            mObj.InvokeMethod("SetDNSServerSearchOrder", mboDNS, null);
                        }
                    }
                    else
                    {
                        if (mboDNS != null)
                        {
                            mboDNS["DNSServerSearchOrder"] = InitDnsServers.ToArray();
                            mObj.InvokeMethod("SetDNSServerSearchOrder", mboDNS, null);
                        }
                    }
                    return;
                }
            }
        }
Пример #2
0
 public void BackupDns()
 {
     InitDnsServers.Clear();
     InitDynamicDns = IsDNSAuto();
     if (!InitDynamicDns)
     {
         GetNetworkInterfaceById(Id).GetIPProperties().DnsAddresses.ToList().ForEach(dns =>
         {
             InitDnsServers.Add(dns.ToString());
         });
     }
 }