Probleme de chemin avec espace dans script VBS

Patrickdusud_0856 Messages postés 39 Date d'inscription   Statut Membre Dernière intervention   -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous encore une fois.

Suite à mon dernier post, j'ai trouvé la solution pour mettre une variable d'environnement dans un script VBS, tout fonctionne parfaitement, avec le nom d'utilisateur "Direction" par contre sur le même PC avec "SAS ANTIVIRUS MOD" en nom d'utilisateur, cela ne fonctionne pas.

J'ai donc essayé de lancer le programme en indiquant le chemin, mais le problème est le même, fichier spécifié introuvable.

En résumé :

CreateObject("Wscript.Shell"). Run "C:\Users\direction\Verif\StartVerif.bat"
Fonctionne parfaitement.
CreateObject("Wscript.Shell"). Run "C:\Verif\StartVerif.bat"
Fonctionne parfaitement
CreateObject("Wscript.Shell"). Run "C:\Users\SAS ANTIVIRUS MOD\Verif\StartVerif.bat"
Ne fonctionne pas

J'ai testé en ADMIN et en standard rien ne fonctionne. Peut-être à cause du nom composé ? Sur la session "SAS ANTIVIRUS MOD" ça fonctionne sur C:\ sur C:\Users\ mais pas sur C:\Users\SAS ANTIVIRUS MOD

EDIT : Le probléme est presque résolu.

En mettant simplement "" et "" d'une part et d'autre du chemin cela fonctionne pour les espaces.

Le code serait donc :
CreateObject("Wscript.Shell"). Run """C:\Users\SAS ANTIVIRUS MOD\Verif\StartVerif.bat"""


Cependant, avec la variable, j'ai beau mettre des guillemets de partout, cela ne fonctionne pas. Je ne dois pas les poser au bon endroit. Voici le code avec la variable :

Set oShell = CreateObject( "WScript.Shell" )
user=oShell.ExpandEnvironmentStrings("%Userprofile%")
WScript.Echo user & "\Verif\StartVerif.bat"
CreateObject("Wscript.Shell").Run user & "\Verif\StartVerif.bat"



Merci de votre aide.




Configuration: Windows / Chrome 100.0.4896.127
A voir également:

1 réponse

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,
peut-être:
Set oShell = CreateObject( "WScript.Shell" )
user=oShell.ExpandEnvironmentStrings("%Userprofile%")
lacommande =  """" & user & "\Verif\StartVerif.bat" &  """"
WScript.Echo lacommande
oShell.Run lacommande
0