Parse server list stored in Registry : Registry Network « Windows « C# / CSharp Tutorial






using System;
using Microsoft.Win32;

class MainClass
{
   public static void Main()
   {
      RegistryKey start = Registry.LocalMachine;
      string DNSservers = @"SYSTEM\CurrentControlSet\Services\Tcpip\Parameters";

      RegistryKey DNSserverKey = start.OpenSubKey(DNSservers);
      if (DNSserverKey == null)
      {
         Console.WriteLine("Unable to open DNS servers key");
         return;
      }
  
      string serverlist = (string)DNSserverKey.GetValue("NameServer");

      Console.WriteLine("DNS Servers: {0}", serverlist);
      DNSserverKey.Close();
      start.Close();
      char[] token = new char[1];
      token[0] = ' ';
      string[] servers = serverlist.Split(token);

      foreach(string server in servers)
      {
         Console.WriteLine("DNS server: {0}", server);
      }
   }
}








29.3.Registry Network
29.3.1.Get Network Card Information from Registry
29.3.2.Get the network device name, device service name
29.3.3.Get IP address from network key stored in Registry
29.3.4.Get subnet mask from network key stored in Registry
29.3.5.Get default gateway from network key stored in Registry
29.3.6.Get DNS server from Registry
29.3.7.Find DNS Servers and get server list
29.3.8.Parse server list stored in Registry