OVH Cloud OVH Cloud

*WinXP: commande batch cmd et switch A et U *

22 réponses
Avatar
Daniel92
Bonsoir,

Dans la commande batch cmd les switch /A et /U permettent :

/a Crée une sortie ANSI (American National Standards Institute).
Redirige la sortie de commandes internes vers un canal ou un fichier ANSI

/u Crée une sortie Unicode.
Redirige la sortie de commandes internes vers un canal ou un fichier UNICODE

Je n'ai pas réussi à comprendre et à trouver dans la documentation,
comment on indique le canal ou le fichier vers où rediriger la sortie?
Peut-on y récupérer un Code de Sortie ( Exit [CodeSortie] ? )
exploitable par la suite?

Merci,
Daniel.
====

10 réponses

1 2 3
Avatar
Jean
Bonjour,

Mais ... mais ... mais si le dossier "testlocal" se trouve dans mon
répertoire de liberty talk :
"C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"
... il se plante



Voir ici:
http://www.cpcug.org/user/clemenzi/technical/WinExplorer/WinExplorerBugs.htm

---8<---
Do not use an ampersand "&" in a file or directory name
In Windows NT, the ampersand "&" character is used to separate 2 commands on the same line. If it is used in either a file or a
directory name, it will work in some cases and fail in others.
For example, running under NT, the associated action
cmd.exe /k "h:tips & hintstest.bat"
fails with no way to fix it. However,
cmd.exe /k "h:tips and hintstest.bat"
works.

By the way, adding an extra space between bat and the double quote causes major thrashing as virtual memory goes from 60 M to more
than 120 M.
---8<---



** Pour cela je ne suis pas encore très bon,



C'est juste une entrée dans la base de registre.

Par contre je n'ai pas d'icône pour les .hta qui sont correctement
affectées au programme : 'Microsoft HTML Application host'
Action: Open
C:WINDOWSSystem32mshta.exe "%1" %*



Le fichiers HTA ont une icônes par défaut à partir de XP SP2 ... avant celà n'a malheureusement jamais été le cas.


** Une fonction méconnue de Metapad (freeware)
http://www.gratilog.net/bureautique1.htm
http://liquidninja.com/metapad/
permet de passer de ANSI à OEM (ou l'inverse) :
menu Edition > Sélectionner tout (Ctrl+A)
puis 'Convertir le texte sélectionné' >
choisir (en) Format OEM => valider ou (F11) .
choisir (en) Format ANSI => valider ou (Ctrl+F11) .



Vous avez aussi ça dans UltraEdit, PrimalScript et autres ... :-)



** Je garde les références, mais je pense que c'est encore un peu tôt pour
moi; Je n'ai pour l'instant que mon Word comme possible Éditeur Html.



Pour le HTML WebExpert est pas mal ... même si vous ne l'achetez pas sa documentation française sur le html est bien faite pour les
débutants.

Amicalement,

Jean - JMST
Belgium

Avatar
Jean
Bonjour,

Mais ... mais ... mais si le dossier "testlocal" se trouve dans mon
répertoire de liberty talk :
"C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"
... il se plante



Sinon essayez avec ceci (faire glisser les fichiers dessus) par ex. :

http://automation.eu.tf/Executer_Avec_CScript.VBS (code ci-dessous)

'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---
With WScript.Arguments
If .Count Then _
CreateObject("WScript.Shell")_
.Run("cmd.exe /k cscript.exe """&.Item(0)&"""")
End With
'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---

Amicalement,

Jean - JMST
Belgium


Avatar
Daniel92
Bonsoir Jean,

: >> Mais ... mais ... mais si le dossier "testlocal" se trouve dans mon
: >> répertoire de liberty talk :
: >> "C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"
: >> ... il se plante

: Sinon essayez avec ceci (faire glisser les fichiers dessus) par ex. :
http://automation.eu.tf/Executer_Avec_CScript.VBS (code ci-dessous)

'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---
With WScript.Arguments
If .Count Then _
CreateObject("WScript.Shell")_
.Run("cmd.exe /k cscript.exe """&.Item(0)&"""")
End With
'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---

** Celui là marche.

* pris par le temps je ne peux aller aussi vite que je ne le voudrais...
Donc ne m'en veux pas trop de mettre un peu de temps à te répondre.

: >> "C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"

* J'ai fais des essais avec les modificateurs de paramétres externes
sur le .bat pour voir etessayer de mesurer l'incidence de ce bug du
shell de explorer.exe , rappel de ton .bat :

::---8<---executer_avec_cscript.cmd---Jean-JMST-Belgium---
@echo off
cscript.exe %1
echo Appuyer sur une touche pour fermer
pause>nul
::---8<---executer_avec_cscript.cmd---Jean-JMST-Belgium---

* en y ajoutant, pour le chemin de l'Exécutable %0 :
( qu'il trouve, et pour cause, sinon il ne lancerait pas l'Invite)

SET longWthGu0=%0
... indique à l'affichage par ECHO,
longWthGu0="C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swUtestlocalexec
_CScr02.bat"

SET longGuill0="%0"

... indique au SET avec le message d'erreur,
SET longGuill0=""C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech &
JFBootIniCmd_RefCmdUt_cmd_swUtestlocalexec_

CScr02.bat""
Le chemin d'accès spécifié est introuvable.
... et enregistre dans la variable et affiche,
longGuill0=""C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech

SET cheminshort0=%~s0
... indique au SET avec le message d'erreur,
SET cheminshort0=C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech &
JFBOOTIN~1_REFCM~1cmd_swUTESTLO~1EXEC_C~2.BAT

Le chemin d'accès spécifié est introuvable.
... et enregistre dans la variable et affiche,
chemin short0=C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech
( et effectivement 'Rech&JF' faisant moins de 8 caractères,
il ne créé pas de nom court / il faudrait que j'essaye avec
le nom 'Rech&JFbis' mais cela doit marcher )

* Pour le chemin de l'Objet glissé dans l'exécutable %1 :
( qu'il ne trouve pas , ... ), Dans tous les cas il affiche,
C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech
... pour le chemin court,
C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech
aucun message d'erreur n'est affiché au moment des SET car
il ne vérifie pas la validité du chemin.

** Quelle vâcherie!!! il faut que je modifie les nombreux
dossiers que j'ai créé avec des "&", car il y a un autre
aspect => l'impossibilité de faire des sauvegardes avec
les messages très parlant de NERO! "erreur de Joliet"
Je comprends mieux pourquoi je m'épuise à faire des
sauvegardes qui se plantent depuis un certain temps !!!


** j'étudie les autres références que tu m'as indiquées dans
ton message.

Amicalement,
Daniel.
=========

Avatar
jean
Bonjour,

le problème c'est les variables %n (%1, ...) qui ne mettent pas de
séquences d'échappement sur le chemin récupérer (en fit %1 ne sait pas
si c'st un chemin ou autre chose).
Normalement si vous mettez les chemin complets dans un batch en mettant
les séquences d'échappement pour les umpersand ( en
remplaçant & par ^&) ça devrait fonctionner aussi ... mais c'est
évidemment moins pratique.

Amicalement,

Jean - JMST
Belgium

Bonsoir Jean,

Mais ... mais ... mais si le dossier "testlocal" se trouve dans mon
répertoire de liberty talk :
"C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"
... il se plante



Sinon essayez avec ceci (faire glisser les fichiers dessus) par ex. :
http://automation.eu.tf/Executer_Avec_CScript.VBS (code ci-dessous)


'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---
With WScript.Arguments
If .Count Then _
CreateObject("WScript.Shell")_
.Run("cmd.exe /k cscript.exe """&.Item(0)&"""")
End With
'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---

** Celui là marche.

* pris par le temps je ne peux aller aussi vite que je ne le voudrais...
Donc ne m'en veux pas trop de mettre un peu de temps à te répondre.

"C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"




* J'ai fais des essais avec les modificateurs de paramétres externes
sur le .bat pour voir etessayer de mesurer l'incidence de ce bug du
shell de explorer.exe , rappel de ton .bat :

---8<---executer_avec_cscript.cmd---Jean-JMST-Belgium---
@echo off


cscript.exe %1
echo Appuyer sur une touche pour fermer
pause>nul
---8<---executer_avec_cscript.cmd---Jean-JMST-Belgium---



* en y ajoutant, pour le chemin de l'Exécutable %0 :
( qu'il trouve, et pour cause, sinon il ne lancerait pas l'Invite)

SET longWthGu0=%0
... indique à l'affichage par ECHO,
longWthGu0="C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swUtestlocalexec
_CScr02.bat"

SET longGuill0="%0"

... indique au SET avec le message d'erreur,
SET
longGuill0=""C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech
&
JFBootIniCmd_RefCmdUt_cmd_swUtestlocalexec_

CScr02.bat""
Le chemin d'accès spécifié est introuvable.
... et enregistre dans la variable et affiche,
longGuill0=""C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech

SET cheminshort0=%~s0
... indique au SET avec le message d'erreur,
SET cheminshort0=C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech &
JFBOOTIN~1_REFCM~1cmd_swUTESTLO~1EXEC_C~2.BAT

Le chemin d'accès spécifié est introuvable.
... et enregistre dans la variable et affiche,
chemin short0=C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech
( et effectivement 'Rech&JF' faisant moins de 8 caractères,
il ne créé pas de nom court / il faudrait que j'essaye avec
le nom 'Rech&JFbis' mais cela doit marcher )

* Pour le chemin de l'Objet glissé dans l'exécutable %1 :
( qu'il ne trouve pas , ... ), Dans tous les cas il affiche,
C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech
... pour le chemin court,
C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech
aucun message d'erreur n'est affiché au moment des SET car
il ne vérifie pas la validité du chemin.

** Quelle vâcherie!!! il faut que je modifie les nombreux
dossiers que j'ai créé avec des "&", car il y a un autre
aspect => l'impossibilité de faire des sauvegardes avec
les messages très parlant de NERO! "erreur de Joliet"
Je comprends mieux pourquoi je m'épuise à faire des
sauvegardes qui se plantent depuis un certain temps !!!


** j'étudie les autres références que tu m'as indiquées dans
ton message.

Amicalement,
Daniel.
=========





Avatar
Jean
Bonjour,

regardez ici, il doit y avoir moyen de contourner le problème :
http://www.microsoft.com/windowsxp/home/using/productdoc/en/percent.asp

Amicalement,

Jean - JMST
Belgium

"jean" a écrit dans le message de news:
Bonjour,

le problème c'est les variables %n (%1, ...) qui ne mettent pas de séquences d'échappement sur le chemin récupérer (en fit %1 ne
sait pas si c'st un chemin ou autre chose).
Normalement si vous mettez les chemin complets dans un batch en mettant les séquences d'échappement pour les umpersand ( en
remplaçant & par ^&) ça devrait fonctionner aussi ... mais c'est évidemment moins pratique.

Amicalement,

Jean - JMST
Belgium

Bonsoir Jean,

Mais ... mais ... mais si le dossier "testlocal" se trouve dans mon
répertoire de liberty talk :
"C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"
... il se plante



Sinon essayez avec ceci (faire glisser les fichiers dessus) par ex. :
http://automation.eu.tf/Executer_Avec_CScript.VBS (code ci-dessous)


'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---
With WScript.Arguments
If .Count Then _
CreateObject("WScript.Shell")_
.Run("cmd.exe /k cscript.exe """&.Item(0)&"""")
End With
'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---

** Celui là marche.

* pris par le temps je ne peux aller aussi vite que je ne le voudrais...
Donc ne m'en veux pas trop de mettre un peu de temps à te répondre.

"C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"




* J'ai fais des essais avec les modificateurs de paramétres externes
sur le .bat pour voir etessayer de mesurer l'incidence de ce bug du
shell de explorer.exe , rappel de ton .bat :

---8<---executer_avec_cscript.cmd---Jean-JMST-Belgium---
@echo off


cscript.exe %1
echo Appuyer sur une touche pour fermer
pause>nul
---8<---executer_avec_cscript.cmd---Jean-JMST-Belgium---



* en y ajoutant, pour le chemin de l'Exécutable %0 :
( qu'il trouve, et pour cause, sinon il ne lancerait pas l'Invite)

SET longWthGu0=%0
... indique à l'affichage par ECHO,
longWthGu0="C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swUtestlocalexec
_CScr02.bat"

SET longGuill0="%0"

... indique au SET avec le message d'erreur,
SET longGuill0=""C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech &
JFBootIniCmd_RefCmdUt_cmd_swUtestlocalexec_

CScr02.bat""
Le chemin d'accès spécifié est introuvable.
... et enregistre dans la variable et affiche,
longGuill0=""C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech

SET cheminshort0=%~s0
... indique au SET avec le message d'erreur,
SET cheminshort0=C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech &
JFBOOTIN~1_REFCM~1cmd_swUTESTLO~1EXEC_C~2.BAT

Le chemin d'accès spécifié est introuvable.
... et enregistre dans la variable et affiche,
chemin short0=C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech
( et effectivement 'Rech&JF' faisant moins de 8 caractères,
il ne créé pas de nom court / il faudrait que j'essaye avec
le nom 'Rech&JFbis' mais cela doit marcher )

* Pour le chemin de l'Objet glissé dans l'exécutable %1 :
( qu'il ne trouve pas , ... ), Dans tous les cas il affiche,
C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech
... pour le chemin court,
C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech
aucun message d'erreur n'est affiché au moment des SET car
il ne vérifie pas la validité du chemin.

** Quelle vâcherie!!! il faut que je modifie les nombreux
dossiers que j'ai créé avec des "&", car il y a un autre
aspect => l'impossibilité de faire des sauvegardes avec
les messages très parlant de NERO! "erreur de Joliet"
Je comprends mieux pourquoi je m'épuise à faire des
sauvegardes qui se plantent depuis un certain temps !!!


** j'étudie les autres références que tu m'as indiquées dans
ton message.

Amicalement,
Daniel.
======== >








Avatar
Jean
voir ici :

http://www.microsoft.com/windowsxp/home/using/productdoc/en/ntcmds_shelloverview.asp

"The ampersand (&), pipe (|), and parentheses ( ) are special characters that must be preceded by the escape character (^) or
quotation marks when you pass them as arguments."

Amicalement,

Jean - JMST
Belgium

"jean" a écrit dans le message de news:
Bonjour,

le problème c'est les variables %n (%1, ...) qui ne mettent pas de séquences d'échappement sur le chemin récupérer (en fit %1 ne
sait pas si c'st un chemin ou autre chose).
Normalement si vous mettez les chemin complets dans un batch en mettant les séquences d'échappement pour les umpersand ( en
remplaçant & par ^&) ça devrait fonctionner aussi ... mais c'est évidemment moins pratique.

Amicalement,

Jean - JMST
Belgium

Bonsoir Jean,

Mais ... mais ... mais si le dossier "testlocal" se trouve dans mon
répertoire de liberty talk :
"C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"
... il se plante



Sinon essayez avec ceci (faire glisser les fichiers dessus) par ex. :
http://automation.eu.tf/Executer_Avec_CScript.VBS (code ci-dessous)


'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---
With WScript.Arguments
If .Count Then _
CreateObject("WScript.Shell")_
.Run("cmd.exe /k cscript.exe """&.Item(0)&"""")
End With
'---8<---Executer_Avec_CScript.VBS---Jean-JMST-Belgium---

** Celui là marche.

* pris par le temps je ne peux aller aussi vite que je ne le voudrais...
Donc ne m'en veux pas trop de mettre un peu de temps à te répondre.

"C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swU"




* J'ai fais des essais avec les modificateurs de paramétres externes
sur le .bat pour voir etessayer de mesurer l'incidence de ce bug du
shell de explorer.exe , rappel de ton .bat :

---8<---executer_avec_cscript.cmd---Jean-JMST-Belgium---
@echo off


cscript.exe %1
echo Appuyer sur une touche pour fermer
pause>nul
---8<---executer_avec_cscript.cmd---Jean-JMST-Belgium---



* en y ajoutant, pour le chemin de l'Exécutable %0 :
( qu'il trouve, et pour cause, sinon il ne lancerait pas l'Invite)

SET longWthGu0=%0
... indique à l'affichage par ECHO,
longWthGu0="C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech&JFBootIniCmd_RefCmdUt_cmd_swUtestlocalexec
_CScr02.bat"

SET longGuill0="%0"

... indique au SET avec le message d'erreur,
SET longGuill0=""C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech &
JFBootIniCmd_RefCmdUt_cmd_swUtestlocalexec_

CScr02.bat""
Le chemin d'accès spécifié est introuvable.
... et enregistre dans la variable et affiche,
longGuill0=""C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech

SET cheminshort0=%~s0
... indique au SET avec le message d'erreur,
SET cheminshort0=C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech &
JFBOOTIN~1_REFCM~1cmd_swUTESTLO~1EXEC_C~2.BAT

Le chemin d'accès spécifié est introuvable.
... et enregistre dans la variable et affiche,
chemin short0=C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech
( et effectivement 'Rech&JF' faisant moins de 8 caractères,
il ne créé pas de nom court / il faudrait que j'essaye avec
le nom 'Rech&JFbis' mais cela doit marcher )

* Pour le chemin de l'Objet glissé dans l'exécutable %1 :
( qu'il ne trouve pas , ... ), Dans tous les cas il affiche,
C:A1DCjobWorkMaintPCEventsErrProgCommdeApprendLangRech
... pour le chemin court,
C:A1DCjobWORKMA~1EVENTS~1PROGCO~1APPREN~2Rech
aucun message d'erreur n'est affiché au moment des SET car
il ne vérifie pas la validité du chemin.

** Quelle vâcherie!!! il faut que je modifie les nombreux
dossiers que j'ai créé avec des "&", car il y a un autre
aspect => l'impossibilité de faire des sauvegardes avec
les messages très parlant de NERO! "erreur de Joliet"
Je comprends mieux pourquoi je m'épuise à faire des
sauvegardes qui se plantent depuis un certain temps !!!


** j'étudie les autres références que tu m'as indiquées dans
ton message.

Amicalement,
Daniel.
======== >








Avatar
Daniel92
Bonjour,

: > le problème c'est les variables %n (%1, ...) qui ne mettent pas de
: > séquences d'échappement sur le chemin récupérer (en fait %1 ne
: > sait pas si c'est un chemin ou autre chose).

: regardez ici, il doit y avoir moyen de contourner le problème :
: http://www.microsoft.com/windowsxp/home/using/productdoc/en/percent.asp

** C'est l'équivalent Anglophone de la page interne de nos PC du
Aide et Support de XP. "Utilisation des paramètres de commande".
On peut l'appeler directement par :

HH ntcmds.chm::/percent.htm
(dans Start/Run , dans l'Invite ou dans un raccourci .lnk)
(elle est bloquée par sécurité, je pense, dans la fonction
shell de explorer.exe)

** Nota: pour avoir l'ensemble de la série faire un raccourci avec
Références de A à Z de la ligne de commande :

HH ntcmds.chm::/ntcmds.htm

=> Pour arriver à la page "Utilisation des paramètres ..."
dans lettre B) "Fichiers de commandes" puis dans la page
qui s'ouvre :
Pour plus d'informations sur les opérations des fichiers de commandes,
consultez les rubriques suivantes :
Emploi des paramètres de commande
qui affiche "Utilisation des paramètres de commande".

La navigation dans ces pages Html compilées se fait en utilisant
dans Clic droit 'Page précédente' et 'Page suivante'. On peut
avec le même principe faire des raccourcis de n'importe quelle
page de Help interne utilisant hh.exe , et donc la rendre
autonome du programme à qui elle est associé.

J'espère que ce n'est pas une faille de
Sécurité...

Amicalement,
Daniel.
=========
Avatar
Daniel92
*Bonjour (2)*

: le problème c'est les variables %n (%1, ...) qui ne mettent pas de
: séquences d'échappement sur le chemin récupérer...

** J'avais fait des essais avant de poster mon message précédent
du mercredi 2 mars 2005 20:20 avec les modificateurs qui
permettent de voir les chemins qui sont passés dans les
paramètres externes passés aux commandes du Batch, mais
dans mes nombreux essais (que je n'ai pas reproduit par
courtoisie sur le message...), je n'ai pas trouvé de solutions
en essayant les combinaisons de modificateur avec %1,
et "%1" , "%*" ne donne rien dans le cas du glisser.

: (en fait %1 ne sait pas si c'est un chemin ou autre chose).

** pas si simple, les SET des paramètres externes que j'ai inclus
dans mon test ne réagissent pas de la même manière si je
l'exécute par "glisser" ou si je le lance en ligne de commande après
avoir ouvert un raccourci d'Invite de commandes local au dossier.

* je mets mon essai au propre et le mets aujourd'hui ou demain
dans un message.


: Normalement si vous mettez les chemin complets dans un batch
: en mettant les séquences d'échappement pour les umpersand
: ( en remplaçant & par ^&) ça devrait fonctionner aussi ... mais
: c'est évidemment moins pratique.

** Et ce n'est pas possible en faisant glisser les paramètres
dans le programme, car on n'est pas maître de la syntaxe du
chemin qui est passé en paramètres au programme.
Il n'y a que Microsoft qui peut gérer ce problème dans la
fonction shell de explorer.exe.


: voir ici :
: http://www.microsoft.com/windowsxp/home/using/productdoc/en/ntcmds_shelloverview.asp
:
: "The ampersand (&), pipe (|), and parentheses ( ) are special
: characters that must be preceded by the escape character (^)
: or quotation marks when you pass them as arguments."

** Page interne du PC sous XP en Fr,
Vue d'ensemble de l'interpréteur de commandes :
HH ntcmds.chm::/ntcmds_shelloverview.htm

Remarques
Le signe &, la barre verticale (|) et les parenthèses ( ) sont des caractères
spéciaux qui doivent être précédés du caractère d'échappement (^)
ou de guillemets lorsque vous les transmettez en tant qu'arguments.

** Cette remarque de Ms est beaucoup trop générale; dans certains
cas ou certaines commandes il faut doubler les caractères spéciaux,
notamment quand l'expression est entre guillemets.

Amicalement,
Daniel.
=========
Avatar
Jean
Oui pour la doc ntcmds.chm ça je sais :-) :
http://groups.google.com/groups?selm=&oe=UTF-8&output=gplain
J'ai mis lien web parcequ'il est accesible par tous.

... regardez aussi les dernières lignes de :
help cmd

---8<---
Les caractères spéciaux qui requièrent des guillements sont :
<espace>
&()[]{}^=;!'+,`~
---8<---

("guillements" c'est in texto :-) )

Je ne crois pas que ce problème avec le umpersand puisse être résolu (comme le site dont je donnais le lien).

En fait je pensais trouver le moyen de mettre des séquences d'échappement avec le code de caractère, mais je ne retouve pas cette
possibilité et je dois probablement confondre avec autre chose ... :-) ... à force de passer d'un language à l'autre :-)
Je dois dire aussi que je n'utilise quasiment plus les batchs.

Amicalement,

Jean - JMST
Belgium

"Daniel92" a écrit dans le message de news:

*Bonjour (2)*

: le problème c'est les variables %n (%1, ...) qui ne mettent pas de
: séquences d'échappement sur le chemin récupérer...

** J'avais fait des essais avant de poster mon message précédent
du mercredi 2 mars 2005 20:20 avec les modificateurs qui
permettent de voir les chemins qui sont passés dans les
paramètres externes passés aux commandes du Batch, mais
dans mes nombreux essais (que je n'ai pas reproduit par
courtoisie sur le message...), je n'ai pas trouvé de solutions
en essayant les combinaisons de modificateur avec %1,
et "%1" , "%*" ne donne rien dans le cas du glisser.

: (en fait %1 ne sait pas si c'est un chemin ou autre chose).

** pas si simple, les SET des paramètres externes que j'ai inclus
dans mon test ne réagissent pas de la même manière si je
l'exécute par "glisser" ou si je le lance en ligne de commande après
avoir ouvert un raccourci d'Invite de commandes local au dossier.

* je mets mon essai au propre et le mets aujourd'hui ou demain
dans un message.


: Normalement si vous mettez les chemin complets dans un batch
: en mettant les séquences d'échappement pour les umpersand
: ( en remplaçant & par ^&) ça devrait fonctionner aussi ... mais
: c'est évidemment moins pratique.

** Et ce n'est pas possible en faisant glisser les paramètres
dans le programme, car on n'est pas maître de la syntaxe du
chemin qui est passé en paramètres au programme.
Il n'y a que Microsoft qui peut gérer ce problème dans la
fonction shell de explorer.exe.


: voir ici :
: http://www.microsoft.com/windowsxp/home/using/productdoc/en/ntcmds_shelloverview.asp
:
: "The ampersand (&), pipe (|), and parentheses ( ) are special
: characters that must be preceded by the escape character (^)
: or quotation marks when you pass them as arguments."

** Page interne du PC sous XP en Fr,
Vue d'ensemble de l'interpréteur de commandes :
HH ntcmds.chm::/ntcmds_shelloverview.htm

Remarques
Le signe &, la barre verticale (|) et les parenthèses ( ) sont des caractères
spéciaux qui doivent être précédés du caractère d'échappement (^)
ou de guillemets lorsque vous les transmettez en tant qu'arguments.

** Cette remarque de Ms est beaucoup trop générale; dans certains
cas ou certaines commandes il faut doubler les caractères spéciaux,
notamment quand l'expression est entre guillemets.

Amicalement,
Daniel.
======== >




Avatar
Daniel92
Bonsoir!, Bonsoir Jean,

En fait comme tu a dû le comprendre j'essaye de me remettre à niveau
après un break important sur l'informatique; ... et comme il faut bien
prendre le problème par un bout, je préfère repartir de la source du
dialogue entre l'Operating System et ma pomme.
D'où le temps que j'investis dans la compréhension de la fonction Shell
de explorer.exe et de l'utilisation de l'Invite de commandes qui émule
l'ancien Shell de MSDOS.

À partir de là j'irai vers les autres langages. Et tes exemples successifs
sont d'excellentes portes vers les langages; il ne me manque plus que
le prolongement des exemples ... vers ASP.NET .

Amicalement,
Daniel.
=========
1 2 3