[VBS] un argument en ligne de commande ..

un argument en ligne de commande .. [VBS] - VB/VBA/VBS - Programmation

Marsh Posté le 02-02-2005 à 18:34:35    

Bonjour a vous .
 
Je debute en VBS grace a samurize (que certains doivent connaitre) .
 
Je voudrais savoir comment  passer un argument à un vbs mais en ligne de commande , exemple ,  
 
admettons que le script equation.vbs fasse (argument+3)²-(argument/6)
 
moi je voudrais pouvoir faire en mode dos par exemple :
 
C:\equation.vbs argument
 
est-ce possible ?

Reply

Marsh Posté le 02-02-2005 à 18:34:35   

Reply

Marsh Posté le 02-02-2005 à 19:42:18    

Tout a fait. En fait il suffit de faire un truc du genre :

Code :
  1. Dim args
  2. Set args  = Wscript.Arguments

args contiendra les arguments de la ligne de commande.

Reply

Marsh Posté le 02-02-2005 à 19:56:58    

Merci de ta reponse , je m'en vais tester ca sur le champ  :)

Reply

Marsh Posté le 02-02-2005 à 20:52:07    

ca m'a rendu un grand service , et aussi permis d'apprendre quelque chose :
 
Din args
Set args = Wscript.Arguments
 
jusque la ca va
ensuite , il est a noter que :
 
 - args.count contient le nombre d'arguments recus en entrée
 - les arguments sont nummérotés : args(0) , args(1) , ...
 
donc si on considere le script test.vbs suivant :
 

Code :
  1. Dim args
  2. Set args = Wscript.Arguments
  3. MsgBox args.count
  4. MsgBox args(0) & args(1)


 
et que l'on tape :
test.vbs bonjour monsieur
 
la premiere msgbox renverra : 2
et la deuxieme : bonjourmonsieur (sans espace puisque "&" concatène les 2 arguments)
 
Si ca peut servir a quelqu'un ....
 
Merci à toi knakes  :hello:

Reply

Marsh Posté le 03-02-2005 à 18:26:07    

Pas de quoi.  :)  
Note :
Voici un petit code pour afficher tous les arguments.

Code :
  1. Dim args
  2. Set args = Wscript.Arguments
  3. For i = 0 to args.count
  4. MsgBox args(i)  ' Ici on récupère la valeur de l'argument.
  5. Next i

Reply

Marsh Posté le 03-02-2005 à 18:28:15    

Merci , ca pourrait effectivement me servir :)

Reply

Sujets relatifs:

Leave a Replay

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