Bonjour,

je monte un web service afin de configurer les DNS d'un serveur, seul problème une erreur se déclanche mais pas moyen de trouver une solution :

System.Management.ManagementException: Échec générique
à System.Management.ManagementException.ThrowWithExtendedInfo(ManagementStatus errorCode)
à System.Management.ManagementObjectCollection.ManagementObjectEnumerator.MoveNext()
à System.Management.ManagementObjectCollection.get_Count()
à WebService1.Service1.DomainExists(String domainName) dans C:\Users\****\Documents\Visual Studio 2008\Projects\WebService1\WebService1\Service1.asmx.cs:ligne 120<br/><br/> à System.Management.ManagementException.ThrowWithExtendedInfo(ManagementStatus errorCode)
à System.Management.ManagementObjectCollection.ManagementObjectEnumerator.MoveNext()
à System.Management.ManagementObjectCollection.get_Count()
à WebService1.Service1.DomainExists(String domainName) dans C:\Users\****\Documents\Visual Studio 2008\Projects\WebService1\WebService1\Service1.asmx.cs:ligne 120
et voici le code correspondant très léger :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public Service1(string serverName)
        {
                 ConnectionOptions con = new ConnectionOptions();
                 con.Authentication = AuthenticationLevel.Connect;
                 session = new ManagementScope("\\\\" + serverName + "\\root\\MicrosoftDNS", con);
                 session.Connect();
                 this.Server = serverName;
        }
 
[WebMethod(EnableSession = true)]
        public string verifDomainExist(string serverName, string domainName)
        {
            service = new Service1(serverName);
            string result = service.DomainExists(domainName);
            return result;
        }
 
        public string DomainExists(string domainName)
        {
            //service = new Service1(serverName);
            try
            {
            bool retval = false;
            string wql = "";
            wql = "SELECT *";
            wql += " FROM MicrosoftDNS_ATYPE";
            wql += " WHERE OwnerName = '" + domainName + "'";
            ObjectQuery q = new ObjectQuery(wql);
            ManagementObjectSearcher s = new ManagementObjectSearcher(this.session, q);
            ManagementObjectCollection col = s.Get();
            int total = col.Count;
            foreach (ManagementObject o in col)
            {
                retval = true;
            }
            return "ok";
            }
            catch(Exception ex)
            {
                return ex.ToString()+"<br/><br/>"+ex.StackTrace.ToString();
            }
        }
l'erreur est signalée au niveau de int total (qui sert a rien au passage), si je commente la ligne, l'erreur descend et arrive sur le foreach ?

Je suis super en galère se vois vraiment pas d'où cela vient et comment le résoudre.

Si quelqu'un à déjà utilisé les webservices pour configurer des DNS cela serait le MUST

Merci