c#
  • dns
  • wmi
  • 2015-09-21 5 views 0 likes 
    0

    Я пытаюсь удалить хост, используя приведенный ниже код из выбранной зоны, но не удаляя.Удалить хост из зоны dns

     string Query = "SELECT * FROM MicrosoftDNS_Zone WHERE ContainerName = '" + ZoneName + "' and OwnerName='" + recordName + "'"; 
    
         ObjectQuery qry = new ObjectQuery(Query); 
         ManagementScope scope = new ManagementScope(@"\\" + dnsServerName + "\\root\\MicrosoftDNS"); 
         scope.Connect(); 
         ManagementObjectSearcher s = new ManagementObjectSearcher(scope, qry); 
          ManagementObjectCollection col = s.Get(); 
          foreach (ManagementObject obj in col) 
          { 
           obj.Delete(); 
          } 
    

    Просьба помочь.

    +0

    Ваш код подвержен SQL-инъекциям! –

    +0

    Если это был SQL, а не диалект WMI. – CodeCaster

    +0

    @rahul: я хочу удалить запись из выбранной зоны в dns. –

    ответ

    0

    ниже - код для удаления записи домена.

    bool DeleteRecordFromDns(string ZoneName, string dnsServerName, string recordName) 
        { 
         try 
         { 
          string Query = string.Format("SELECT * FROM MicrosoftDNS_AType WHERE OwnerName = '{0}.{1}'", recordName, ZoneName); 
          ObjectQuery qry = new ObjectQuery(Query); 
          ManagementScope scope = new ManagementScope(@"\\" + dnsServerName + "\\root\\MicrosoftDNS"); 
          scope.Connect(); 
          ManagementObjectSearcher s = new ManagementObjectSearcher(scope, qry); 
          ManagementObjectCollection col = s.Get(); 
          if (col.Count > 0) 
          { 
           foreach (ManagementObject obj in col) 
           { 
            obj.Delete(); 
           } 
           return true; 
          } 
          else 
          { 
           return false; 
          } 
    
         } 
         catch (Exception) 
         { 
          return false; 
         } 
        } 
    
    Смежные вопросы