passage de variable issu d'un vbs lors d'un cscript

passage de variable issu d'un vbs lors d'un cscript - VB/VBA/VBS - Programmation

Marsh Posté le 27-01-2012 à 17:53:08    

Bonjour à tous  
je suis débutant dans le langage VB  
 
J'ai créé un script vbs pour me permettre de vérifier l'existance d'un share sur un serveur distant.
 Si le share n'existe pas , je fait appel à un second vbs (récupéré sur le net) pour créer le partage sur la machine distante.
 
Dans mon premier vbs, j'ai défini différente variable concernant le nom du serveur distant, le nom du partage ...
 

Code :
  1. sharename = toto
  2. sharepath = G:\users\" & sharename
  3. sharetype = DISK
  4. sharedesc = "Partage pour" & " "& sharename
  5. shareserver = nomdnsduserver


Mon problème se situe lors du lancement du second vbs via cscript:  

Code :
  1. shell.run "cscript c:\createshare.vbs /C /N sharename /P sharepath /T sharetype /V sharedesc /S shareserver /O sharelog"


Les différents paramétres passés dans le cscript ne sont pas remplacés par la valeur réelle de la variable. Mais sont interprétés vraiement comme elles sont écrite (sharename,sharepath...) et non (toto, G:\users\" & sharename..., DISK...)
 
Comment je peux faire pour que le cscript récupére lors de son lancement les donnnés et non les variables
 Merci


Message édité par benzure le 27-01-2012 à 18:23:22
Reply

Marsh Posté le 27-01-2012 à 17:53:08   

Reply

Marsh Posté le 29-01-2012 à 17:43:23    

Il faut construire la chaine en concaténant plusieurs morceaux :

Code :
  1. shell.run "cscript c:\createshare.vbs /C /N " & sharename & " /P " & sharepath & "/T " & sharetype & " /V " & sharedesc & " /S " & shareserver & " /O " & "sharelog"


Attention, si une variable contient un espace, il faudra l'entourer avec des guillemets supplémentaires (code Ascii 34). Par exemple :

Code :
  1. shell.run "cscript c:\createshare.vbs /C /N " & sharename & " /P " & chr(34) & sharepath & chr(34) & "/T " & sharetype & " /V " & chr(34) & sharedesc & chr(34) & " /S " & shareserver & " /O " & "sharelog"

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed