Probleme Shell guillemet interprété par MS-DOS [Résolu]

Messages postés
60
Date d'inscription
mercredi 31 mars 2004
Statut
Membre
Dernière intervention
31 mars 2009
- - Dernière réponse : jfuck
Messages postés
60
Date d'inscription
mercredi 31 mars 2004
Statut
Membre
Dernière intervention
31 mars 2009
- 10 déc. 2008 à 20:24
Hello,
Voici mon problème
j'utilise la commande Shell pour imprimer un document se trouvant sur mon bureau.

Voici la syntaxe (commande pour imprimer avec PDFCreator)

a = "print /d:\" & IpLocale & "\PDFCreator C:\Documents and Settings\j\Bureau\fichierimpression.html"
Shell(a)

Le problème c'est que pour que MS-DOS interprète le nom de fichier je dois rajouter des guillemets (a cause de 'Documents and Settings' qui comporte des espaces) mais si je mets des guillemets ma string a est mal interprétée par VB.

Y a-t'il une autre syntaxte qu'avec les guillements pour que MS-DOS ne prenne pas en compte les espaces ?

Merci d'avance pour votre aide.

J.

PS : j'ai eu du mal a trouver comment imprimer a partir du shell, l'astuce c'est de mettre l'imprimante en partage et d'utiliser son IP.
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
14010
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
58
3
Merci
Salut
Il faut en effet ajouter des guillemets pour que DOS sache interpréter les paramètres fournis.
Si ta commande, telle qu'elle doit apparaitre dans une fenêtre DOS devait être :
   print /d:[file://123.123.123.123/PDFCreator \\123.123.123.123\PDFCreator] "C:\Documents and Settings\j\Bureau\fichierimpression.html"

Pour mettre cette chaine dans une variable, il suffit de doubler le nombre de guillemets :
   maChaine = "Bonjour ""Mr"" jfuck"
donnera
   Bonjour "Mr" jfuck

Ce qui donnerait :
   maChaine = _
   "print /d:\" & monIP & "\PDFCreator ""C:\Documents and Settings\j\Bureau\fichierimpression.html"""

Ce sujet revient souvent sur le forum, tu n'as pas dû beaucoup chercher

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 138 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Jack
Messages postés
60
Date d'inscription
mercredi 31 mars 2004
Statut
Membre
Dernière intervention
31 mars 2009
0
Merci
Merci c'est gentil... passé beaucoup de temps a cherché sur le prbleme précédent et la j'ai manqué un peu de force...
Commenter la réponse de jfuck