[英]How to get Windows DNS suffix search list using c++
How to get windows dns suffix serach list from ip configuration using c++ ? 如何使用c ++从ip配置获取windows dns后缀serach列表? (.NET <= 3.5)
(.NET <= 3.5)
You can get them from the registry. 您可以从注册表中获取它们。
If set from the network control panel: 如果从网络控制面板设置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\SearchList
If set by Group Policy: 如果由组策略设置:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient\SearchList
Use the Registry class to read , the same class can be use set but, you will need admin permissions to do so. 使用Registry类进行读取 ,同一个类可以使用set,但是,您需要具有管理员权限才能执行此操作。
C# using Management and WMI Classes: C#使用管理和WMI类:
ManagementObjectSearcher q= new ManagementObjectSearcher("SELECT ServiceName,DNSDomainSuffixSearchOrder FROM Win32_NetworkAdapterConfiguration");// WHERE DNSDomainSuffixSearchOrder IS NOT NULL");
var qc= q.Get();
foreach (ManagementObject mo in qc)
{
if ( mo.Properties["DNSDomainSuffixSearchOrder"] != null)
{
var s = mo.Properties["DNSDomainSuffixSearchOrder"];
if (s.Value != null)
{
Console.WriteLine(mo["ServiceName"]);
string[] sfxNames = s.Value as string[];
foreach (string sx in sfxNames)
{
Console.WriteLine(sx);
}
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.