Error: Subscript out of range script vbs

MrZoe Messages postés 815 Date d'inscription lundi 21 décembre 2009 Statut Membre Dernière intervention 19 septembre 2018 - 2 janv. 2013 à 02:21
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 2 janv. 2013 à 03:21
Bonjour

J'ai faite un script qui prend un nom de fichier depuis la ligne de commande (cmd) et affiche toutes les propriété de l'objet File correspondant. Le script doit décoder aussi les attributs de fichier renvoyés.

le probleme quand je l’exécute j'ai un erreur :

Error Message:

Windows Script Host

Script: C:\userlocationchange.vbs
Line: 19
Char: 1
Error: Subscript out of range: '[number: 1]'
Code: 800A0009
Source: Microsoft VBScript runtime error



Merci de vos réponse


If NomFic = " " Then
Set FSO = CreateObject("Scripting.FileSystemObject")
NomFic = WScript.Arguments(0)

If FSO.FolderExists(NomFic) Then


'******** récupere attibuts

If NomFic.Attributes And 1 Then
strAttributs = "Fichier en lecture seule" & vbCrLf
End If


If NomFic.Attributes And 2 Then
strAttributs = "Fichier en lecture seule" & vbCrLf
End If


If NomFic.Attributes And 4 Then
strAttributs = "Fichier en lecture seule" & vbCrLf
End If


If NomFic.Attributes And 8 Then
strAttributs = "Fichier en lecture seule" & vbCrLf
End If

If NomFic.Attributes And 16 Then
strAttributs = "Fichier en lecture seule" & vbCrLf
End If

If NomFic.Attributes And 32 Then
strAttributs = "Fichier en lecture seule" & vbCrLf
End If



If NomFic.Attributes And 64 Then
strAttributs = "Fichier en lecture seule" & vbCrLf
End If


If NomFic.Attributes And 128 Then
strAttributs = "Fichier en lecture seule" & vbCrLf
End If


MsgBox "Le fichier possède les attributs: " & vbCrlf & StrAttibuts & NomFic.DateCreated &_
"Dernier modification" & NomFic.Date.LastModified & "Votre lecteur" & NomFic.Drive &_
"Nom du fichier" & NomFic.Name & "Le size du fichier" & NomFic.Size / 1024 & "Ko" &_
"Le type de fichier" & NomFic.Type

Else

MsgBox "Le fichier spécifié n'exite pas", vbExclamation

End If

1 réponse

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
2 janv. 2013 à 03:21
Salut Mike

Je vois que tu as commencé.

If NomFic = " " Then
    Set FSO = CreateObject("Scripting.FileSystemObject")
    NomFic = WScript.Arguments(0) 

Ligne 1 : Pourquoi penses-tu qu'une variable rencontrée pour la première fois renferme un espace ?
Ligne 3 : C'est là qu'est (surement) l'erreur.
Que donne ceci :
Wscript.Echo WScript.Arguments.Count

Avant de vouloir lire son contenu, il faut être sûr qu'il y a quelque chose.
En tapant simplement "WScript.Arguments" dans ton moteur de recherche préféré, tu trouveras des tas d'exemples.
Avant de poser des questions, il faut toujours faire des recherches. Merci
0
Rejoignez-nous