其他分享
首页 > 其他分享> > 如何使用WMI删除DNS区域

如何使用WMI删除DNS区域

作者:互联网

我可以创建一个新区域,使用该区域的WMI和System.Management相对容易地添加和删除该区域的记录,但是我一生都无法弄清楚如何删除区域.在WMI文档中,它似乎不是一种方法:

http://msdn.microsoft.com/en-us/library/ms682123(VS.85).aspx

有关如何执行此操作的任何想法?当我们删除旧的网站客户时,试图保持DNS服务器的清洁,但是我只能像删除区域中的所有记录一样好.

编辑:这是在Windows Server 2008 R2计算机上.如果还有其他解决方案,我可以从远程计算机执行并使用c#编写代码,那么我会回答“不要使用WMI”

解决方法:

您可以按照与记录相同的方式删除区域.

internal static bool DeleteZoneFromDns(string ZoneName)
    {
        try
        {
            string Query = "SELECT * FROM MicrosoftDNS_Zone WHERE ContainerName = '" + ZoneName + "'";
            ObjectQuery qry = new ObjectQuery(Query);
            DnsProvider dns = new DnsProvider();
            ManagementObjectSearcher s = new ManagementObjectSearcher(dns.Session, qry);
            ManagementObjectCollection col = s.Get();
            dns.Dispose();

            foreach (ManagementObject obj in col)
            {
                obj.Delete();
            }
            return true;
        }
        catch (Exception)
        {
            return false;
        }
    }

标签:dns,wmi,windows-server-2008,c
来源: https://codeday.me/bug/20191209/2096377.html