IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

Ajouter des suffixes DNS


Sujet :

VBScript

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 21
    Points : 11
    Points
    11
    Par défaut Ajouter des suffixes DNS
    Bonjour,
    Voila je souhaite configurer intégralement la connexion d'une carte réseau, j'ai deja réussi a configurer l'ip, le masque, les adresse DNS principale/secondaire, les adresses WINS principale/secondaire, la passerelle par default
    il me manque plus que les suffixes DNS sous la forme adresse1.com et adresse2.com pour finir mon travail.... qui pourrai m'aider???
    J'ai essayer d'utiliser SetDNSSuffixSearchOrder mais sans succé...

    Pour étre préci:
    Je voudrais que ca me range ces deux adresse dans le tableau se trouvant dans : paramétre TCPI/IP avancé / onglet DNS
    et qui a pour titre : ajouter ces sufixes DNS (dans l'ordre)

    voici mon code
    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
     
     
    Dim strIPAddress, strSubnetMask, errEnable, strGateway, strDNS, strDNSDomain, strWins1, strWins2
    strIPAddress = Array("172.25.203.122")
    strSubnetMask = Array("255.255.255.0")
    strGateway = Array("172.25.203.1")
    strWins1 =  "172.30.1.8"
    strWins2 =  "172.30.1.5"
    strDNS = array("172.30.1.5","172.30.1.8")
     
    strDNSDomain = array("adress1.com","adress2.com")
     
    Set objWMIService2 = getObject("winmgmts:\\" & NomPC & "\root\cimv2")
    Set colItems2 = objWMIService2.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled = true",,48)
    For Each objItem2 in colItems2
     
    ''''Configure l'ip du poste avec sont masque ed sous réseau
    errEnable = objItem2.EnableStatic(strIPAddress, strSubnetMask)
    ''''Configure la passerelle
    errEnable = objItem2.setgateways(strGateway)
    ''''Configure l'adresse du wins principale et secondaire	
    objItem2.SetWINSServer strWins1 , strWins2
    ''''configure les adresses DNS
    errEnable = objItem2.SetDNSServerSearchOrder(strDNS)
     
    ''''A partir de la ca marche plus.... sniff	
    errEnable = objItem2.SetDNSSuffixSearchOrder (strDNSDomain) 
    next
    J'ai mit volontairement tous mon code car je pense qu'il sera surement utile pour certaine personne

  2. #2
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Tu recupere koi comme code d'erreur ?
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    il me retourne 0 en gros il me dit que c'est ok et que j'ai pas besoin de redémarer
    mais voila ca me change rien dans mes propriété.

  4. #4
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    La je ne vois pas, ca devrait marcher.
    Est tu sur que "strDNSDomain" contient bien des valeurs au moment ou tu fait appel à "SetDNSSuffixSearchOrder" ?
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  5. #5
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    mon strDNSDomain contien:
    strDNSDomain = array("adress1.com","adress2.com")

    Ca doit étre ma facon d'utiliser SetDNSSuffixSearchOrder qui n'est pas bonne....

  6. #6
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    J'ai trouvé ca :
    "La méthode SetDNSSuffixSearchOrder permet de définir l'ordre de recherche de suffixe en tant que tableau d'éléments"
    Donc il semblerais que cette méthode ne definisse qu'un ordre.

    Voici un lien qui reprend la description des objets WMI et notemment celui de Win32_NetworkAdapterConfiguration, en FRANCAIS :
    http://www.secretswindows.com/index....networking.htm

    Tu devrais t'intéresser à "SetDNSDomain", il me semble que cette méthode fait ce que tu souhaites.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  7. #7
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    je suis déja dessu looool
    Mais y a rien qui me permet de résoudre mon probléme...

  8. #8
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    sinon pour repondre au setDNSDomain il ne permet de mettre qu'une seul adresse mais moi j'ai deux adresse a utiliser...

  9. #9
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Lorsque que tu ajoutes une adresse avec "setDNSDomain", est ce que la précédente adresse est écrasé ?
    Si ce n'est pas le cas, alors tu peut faire une boucle et enregistrer les adresses avec "setDNSDomain" autant de fois que tu as d'adresses.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  10. #10
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    en faite setDNSDomain rempli la propriété suffixe DNS pour cette connexion, j'ai fait ma boucle elle fonctionne mais elle m'ecrase ma premiere adresse pour y placer ma seconde...

  11. #11
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Points : 4 061
    Points
    4 061
    Par défaut
    Essaye ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set WSHShell = CreateObject("WScript.Shell")
    WSHShell.RegWrite "HKEYLOCALMACHINE\System\CurrentControlSet\Services\TCPIP\Parameters\SearchList" "testadatum.com,test2adatum.net,test3adatum.gov" "REG_SZ"
    Tu peut mettre jusqu'à 6 domaines.
    J'ai eu cette information ici :
    http://support.microsoft.com/default...%3Bfr%3B275553
    La clé concerné est valable sous Win2000 et WinXP.
    Pourquoi faire compliqué lorsque l'on peut faire encore plus compliqué.

  12. #12
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 21
    Points : 11
    Points
    11
    Par défaut
    Merci cedric,
    je vien de revenir de formation et j'ai vu ton aide...
    Je me suis un peu cresé la tête car la traduction avai retiré des , lool alors apres
    quelque test j'ai enfin trouvé la solution et maintenan tous marche a merveille...
    Je tennai a donné mon code qui pourra jen suis sur servir a pas mal de personne car lors de mes recherche ca resté souvent sans suite
    Enfin voila ca marche et j'invite toute personne voulant travailler sur leur connexion réseau a consulter ce bout de code

    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
    43
    44
    45
    46
     
    Option Explicit
    On Error Resume Next
     
    Dim NomPC, Card,  objWMIService, WSHShell
    Dim objItem, colItems, ip, strComputer
     
    Dim strIPAddress, strSubnetMask, errEnable, strGateway, strDNS, strDNSDomain, strWins1, strWins2
    strIPAddress = Array("192.168.203.122")
    strSubnetMask = Array("255.255.255.0")
    strGateway = Array("192.168.203.1")
    strWins1 =  "192.168.1.8"
    strWins2 =  "192.168.1.5"
    strDNS = array("192.168.1.5","192.168.1.8")
    strDNSDomain1 = "dns1.com,dns2.com"
    strComputer = "."
     
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
     
     
    'Recuperation du nom du post
    Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem",,48)
    For Each objItem in colItems
      NomPC = objItem.Caption
    Next
     
     
    Set objWMIService = Nothing
    Set colItems = Nothing
     
    Set objWMIService = getObject("winmgmts:\\" & NomPC & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled = true",,48)
    For Each objItem in colItems
    		''Configure la passerelle
    		errEnable = objItem.setgateways(strGateway)
    		''Configure l'adresse du wins principale et secondaire	
    		objItem.SetWINSServer strWins1 , strWins2
    		''configure les adresses DNS
    		errEnable = objItem.SetDNSServerSearchOrder(strDNS)	
    		''Configure l'ip du poste avec sont masque ed sous réseau
      		errEnable = objItem.EnableStatic(strIPAddress, strSubnetMask)		
    Next  	
     
    'Configure la liste des serveurs dns 
    SET WSHShell = CreateObject("WScript.Shell")
    WSHShell.RegWrite "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TCPIP\Parameters\SearchList",strDNSDomain,"REG_SZ"
    Voili voulou et encore un grand merci a toi cédric

  13. #13
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    On Error Resume Next
     
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
     
    Set colNetCards = objWMIService.ExecQuery _
    ("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")
     
    For Each objNetCard in colNetCards
    Wscript.Echo objNetCard.SetDNSDomain("adress1.com")
    Next

  14. #14
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Petite erreur dans le code, il faut retirer le 1 de (strDNSDomain1) de la ligne 15.

    Pourriez-vous m'aider à adapter ce code pour windows 7 SVP?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajout de suffixes DNS
    Par dove11 dans le forum VBScript
    Réponses: 0
    Dernier message: 30/11/2011, 18h14
  2. Ajouter des chemins dans la variable PATH
    Par Righetto Dominique dans le forum Linux
    Réponses: 7
    Dernier message: 21/03/2004, 17h38
  3. Ajouter des contrôles dans la palette des contrôles.
    Par WOLO Laurent dans le forum MFC
    Réponses: 4
    Dernier message: 22/01/2004, 08h27
  4. Réponses: 5
    Dernier message: 13/11/2003, 16h57
  5. Réponses: 1
    Dernier message: 02/01/2003, 12h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo