Bonjour à tous, je viens vers vous avec un petit souci dans le cadre de la création d'un script de gestion tout bête mais qui me pose quelques soucis, je m'explique.
Le tout se compose de 3 fichiers:
runme.bat
	
	1 2 3 4
   |  
FOR /F "tokens=1,* delims= " %%i in ("%~dp0target.txt") DO (
	CALL cscript "%~dp0script.vbs" %i %j %k
) | 
 target.txt
	
	1 2 3 4 5 6 7 8
   |  
1 toto none none
1 tata none
1 tutu none
2 none TestGroup
3 toto TestGroup
3 tata TestGroup
3 tata TestGroup  | 
 script.vbs
	
	1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
   | 
':: Déclarations diverses strINGS bOOLEANS
Dim strComputer, strUser, strGroup, strChoice
Dim bCheck
':: Attribution de valeur aux variable en récupèrant des arguments (paramètres) dans la ligne d'execution du script.
Set objArgs = WScript.Arguments
    strChoice = objArgs(0)
Set objArgs = WScript.Arguments
    strUser = objArgs(1)
Set objArgs = WScript.Arguments
    strGroup = objArgs(2)
    
':: Récupération du nom de la Machine Locale
Set WshNetwork = WScript.CreateObject("WScript.Network") | 
 Je ne mets que le début du code car en fait lorsque je lance le vbs par la commande:
	
	cscript \\...\script.vbs 1 toto none
 Tout fonctionne parfaitement mais lorsque je souhaite lancer mon script avec un traitement par lot, je me retrouve devant une jolie erreur:
	
	\\...\script.vbs(22,5) Erreur d'exécution Microsoft VBScript: Indice en dehors de la plage
 Sachant que la ligne 22 est celle en gras dans le code. 
Je poste donc ici mais en me demandant surtout si ce n'est pas le Batch qui pose souci :/ Si l'un d'entre vous a une petite idée sur la chose. Je suis preneur.
En vous remerciant
						
					
Partager