Je souhaite lancer un programme, prog.exe qui ne fonctionne qu'en
fenêtre de command par
"C:\Program Files\dirprog\prog.exe" -p fichier_e.txt -o fichier_s.txt
où -p attende le chemin d'un fichier d'entrée et -o le chemin d'un
fichier de sortie.
J'ai donc crée un fichier prog.cmd
qui contient
"C:\Program Files\dirprog\prog.exe" -p %%1 -o %%2
puis un raccourci vers prog.cmd
Je double-clique sur le raccourci, mais "on" ne me demande pas le
chemin d'entrée ni celui de sortie et cela ne fonctionne pas.
Je désire aussi que la fenêtre ne se ferme pas automatiquement à la fin
de l'exécution.
Qui peut me dépanner ? Est-il possible d'entrer le fichier d'entrée et
de sortie en utilisant les fenêtres de chois de l'explorateur ?
Merci pour toute aide.
Cordialement,
--
Serge Nazarian
Pour m'écrire directement : http://cerbermail.com/?ZDkROVSJlu
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Claude BELLAMY
Le vendredi 02/11/2012 18:15:26, Serge Nazarian a écrit dans le message <news:5093ffb2$0$1865$ ce qui suit :
Bonjour,
Je suis sous Windows 7.
Je souhaite lancer un programme, prog.exe qui ne fonctionne qu'en fenêtre de command par "C:Program Filesdirprogprog.exe" -p fichier_e.txt -o fichier_s.txt où -p attende le chemin d'un fichier d'entrée et -o le chemin d'un fichier de sortie.
J'ai donc crée un fichier prog.cmd qui contient "C:Program Filesdirprogprog.exe" -p %%1 -o %%2
Qu'est-ce que ces doubles "%" ?????????? SEULES les % de variables de boucle FOR qui doivent être doublés dans un batch! (p.ex. "FOR %%F in(*.*) do echo %%F")
Par contre les paramètres formels %1, %2, ..%* restent tels quels ...
Ton fichier cmd doit donc contenir : "C:Program Filesdirprogprog.exe" -p %1 -o %2
puis un raccourci vers prog.cmd
Je double-clique sur le raccourci, mais "on" ne me demande pas le chemin d'entrée ni celui de sortie et cela ne fonctionne pas.
NORMAL vu l'erreur de syntaxe ci-dessus !
Je désire aussi que la fenêtre ne se ferme pas automatiquement à la fin de l'exécution.
Il suffit d'insérer une commande PAUSE
Qui peut me dépanner ? Est-il possible d'entrer le fichier d'entrée et de sortie en utilisant les fenêtres de chois de l'explorateur ?
Je présume que tu veux dire : "est-il possible de lancer ce script à partir du menu contextuel dans l'explorateur quand on sélectionne un fichier donné, et que le nom de ce fichier soit transmis au script ?"
la réponse est OUI, il suffit de créer une sous-clef dans HKCRtypedufichiershell
P.ex., si les fichiers .txt pointent vers HKCRtextfile
il faudra créer : - une sous-clef HKCRtextfileshellMon bidouillage avec comme valeur par défaut (p.ex.) "Bidouille" - une sous-clef HKCRtextfileshellMon bidouillagecommand avec comme valeur par défaut "C:mes bidouillesprog.cmd" %1
MAIS tu ne peux passer qu'un seul paramètre : le fichier sélectionné (si tu en sélectionnes "n", cela lancera le script "n" fois, avec le nom respectif de chaque fichier)
Donc il faudra dans le cas de ton script générer le fichier de sortie à partie de celui d'entrée. C'est assez facile, p.ex. :
prog.cmd ------------- couper ici ------------- @echo off set fileIN=%1 set fileOUT=%fileIN:~0,-4%-OUT.txt "C:Program Filesdirprogprog.exe" -p %fileIN -o %fileOUT pause ------------- couper ici -------------
Explication : set fileOUT=%fileIN:~0,-4%-OUT.txt
Cette commande extrait la totalité des caractères contenus dans la variable %fileIN%, moins les 4 derniers (=l'extension ".txt"), auxquels on ajoute "-OUT.txt"
(pour plus d'infos, consulter l'aide sur la commande SET par la commande "SET /?")
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] http://www.bellamyjc.fr ou http://www.bellamyjc.org
Le vendredi 02/11/2012 18:15:26, Serge Nazarian a écrit dans le message
<news:5093ffb2$0$1865$426a74cc@news.free.fr> ce qui suit :
Bonjour,
Je suis sous Windows 7.
Je souhaite lancer un programme, prog.exe qui ne fonctionne qu'en fenêtre
de command par
"C:Program Filesdirprogprog.exe" -p fichier_e.txt -o fichier_s.txt
où -p attende le chemin d'un fichier d'entrée et -o le chemin d'un fichier
de sortie.
J'ai donc crée un fichier prog.cmd
qui contient
"C:Program Filesdirprogprog.exe" -p %%1 -o %%2
Qu'est-ce que ces doubles "%" ??????????
SEULES les % de variables de boucle FOR qui doivent être doublés dans
un batch! (p.ex. "FOR %%F in(*.*) do echo %%F")
Par contre les paramètres formels %1, %2, ..%* restent tels quels ...
Ton fichier cmd doit donc contenir :
"C:Program Filesdirprogprog.exe" -p %1 -o %2
puis un raccourci vers prog.cmd
Je double-clique sur le raccourci, mais "on" ne me demande pas le chemin
d'entrée ni celui de sortie et cela ne fonctionne pas.
NORMAL vu l'erreur de syntaxe ci-dessus !
Je désire aussi que la fenêtre ne se ferme pas automatiquement à la fin de
l'exécution.
Il suffit d'insérer une commande PAUSE
Qui peut me dépanner ? Est-il possible d'entrer le fichier d'entrée et de
sortie en utilisant les fenêtres de chois de l'explorateur ?
Je présume que tu veux dire :
"est-il possible de lancer ce script à partir du menu contextuel
dans l'explorateur quand on sélectionne un fichier donné, et que le
nom de ce fichier soit transmis au script ?"
la réponse est OUI, il suffit de créer une sous-clef dans
HKCRtypedufichiershell
P.ex., si les fichiers .txt pointent vers
HKCRtextfile
il faudra créer :
- une sous-clef
HKCRtextfileshellMon bidouillage
avec comme valeur par défaut (p.ex.) "Bidouille"
- une sous-clef
HKCRtextfileshellMon bidouillagecommand
avec comme valeur par défaut
"C:mes bidouillesprog.cmd" %1
MAIS tu ne peux passer qu'un seul paramètre : le fichier sélectionné
(si tu en sélectionnes "n", cela lancera le script "n" fois, avec le
nom respectif de chaque fichier)
Donc il faudra dans le cas de ton script générer le fichier de sortie à
partie de celui d'entrée. C'est assez facile, p.ex. :
prog.cmd
------------- couper ici -------------
@echo off
set fileIN=%1
set fileOUT=%fileIN:~0,-4%-OUT.txt
"C:Program Filesdirprogprog.exe" -p %fileIN -o %fileOUT
pause
------------- couper ici -------------
Explication :
set fileOUT=%fileIN:~0,-4%-OUT.txt
Cette commande extrait la totalité des caractères contenus dans la
variable %fileIN%, moins les 4 derniers (=l'extension ".txt"), auxquels
on ajoute "-OUT.txt"
(pour plus d'infos, consulter l'aide sur la commande SET par la
commande "SET /?")
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.fr ou http://www.bellamyjc.org
Le vendredi 02/11/2012 18:15:26, Serge Nazarian a écrit dans le message <news:5093ffb2$0$1865$ ce qui suit :
Bonjour,
Je suis sous Windows 7.
Je souhaite lancer un programme, prog.exe qui ne fonctionne qu'en fenêtre de command par "C:Program Filesdirprogprog.exe" -p fichier_e.txt -o fichier_s.txt où -p attende le chemin d'un fichier d'entrée et -o le chemin d'un fichier de sortie.
J'ai donc crée un fichier prog.cmd qui contient "C:Program Filesdirprogprog.exe" -p %%1 -o %%2
Qu'est-ce que ces doubles "%" ?????????? SEULES les % de variables de boucle FOR qui doivent être doublés dans un batch! (p.ex. "FOR %%F in(*.*) do echo %%F")
Par contre les paramètres formels %1, %2, ..%* restent tels quels ...
Ton fichier cmd doit donc contenir : "C:Program Filesdirprogprog.exe" -p %1 -o %2
puis un raccourci vers prog.cmd
Je double-clique sur le raccourci, mais "on" ne me demande pas le chemin d'entrée ni celui de sortie et cela ne fonctionne pas.
NORMAL vu l'erreur de syntaxe ci-dessus !
Je désire aussi que la fenêtre ne se ferme pas automatiquement à la fin de l'exécution.
Il suffit d'insérer une commande PAUSE
Qui peut me dépanner ? Est-il possible d'entrer le fichier d'entrée et de sortie en utilisant les fenêtres de chois de l'explorateur ?
Je présume que tu veux dire : "est-il possible de lancer ce script à partir du menu contextuel dans l'explorateur quand on sélectionne un fichier donné, et que le nom de ce fichier soit transmis au script ?"
la réponse est OUI, il suffit de créer une sous-clef dans HKCRtypedufichiershell
P.ex., si les fichiers .txt pointent vers HKCRtextfile
il faudra créer : - une sous-clef HKCRtextfileshellMon bidouillage avec comme valeur par défaut (p.ex.) "Bidouille" - une sous-clef HKCRtextfileshellMon bidouillagecommand avec comme valeur par défaut "C:mes bidouillesprog.cmd" %1
MAIS tu ne peux passer qu'un seul paramètre : le fichier sélectionné (si tu en sélectionnes "n", cela lancera le script "n" fois, avec le nom respectif de chaque fichier)
Donc il faudra dans le cas de ton script générer le fichier de sortie à partie de celui d'entrée. C'est assez facile, p.ex. :
prog.cmd ------------- couper ici ------------- @echo off set fileIN=%1 set fileOUT=%fileIN:~0,-4%-OUT.txt "C:Program Filesdirprogprog.exe" -p %fileIN -o %fileOUT pause ------------- couper ici -------------
Explication : set fileOUT=%fileIN:~0,-4%-OUT.txt
Cette commande extrait la totalité des caractères contenus dans la variable %fileIN%, moins les 4 derniers (=l'extension ".txt"), auxquels on ajoute "-OUT.txt"
(pour plus d'infos, consulter l'aide sur la commande SET par la commande "SET /?")
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] http://www.bellamyjc.fr ou http://www.bellamyjc.org
Prosper Youp La Boum (SDI)
Jean-Claude BELLAMY a émis l'idée suivante :
Le vendredi 02/11/2012 18:15:26, Serge Nazarian a écrit dans le message <news:5093ffb2$0$1865$ ce qui suit :
Bonjour,
Je suis sous Windows 7.
Je souhaite lancer un programme, prog.exe qui ne fonctionne qu'en fenêtre de command par "C:Program Filesdirprogprog.exe" -p fichier_e.txt -o fichier_s.txt où -p attende le chemin d'un fichier d'entrée et -o le chemin d'un fichier de sortie.
J'ai donc crée un fichier prog.cmd qui contient "C:Program Filesdirprogprog.exe" -p %%1 -o %%2
Qu'est-ce que ces doubles "%" ?????????? SEULES les % de variables de boucle FOR qui doivent être doublés dans un batch! (p.ex. "FOR %%F in(*.*) do echo %%F")
Par contre les paramètres formels %1, %2, ..%* restent tels quels ...
Ton fichier cmd doit donc contenir : "C:Program Filesdirprogprog.exe" -p %1 -o %2
puis un raccourci vers prog.cmd
Je double-clique sur le raccourci, mais "on" ne me demande pas le chemin d'entrée ni celui de sortie et cela ne fonctionne pas.
NORMAL vu l'erreur de syntaxe ci-dessus !
Je désire aussi que la fenêtre ne se ferme pas automatiquement à la fin de l'exécution.
Il suffit d'insérer une commande PAUSE
Qui peut me dépanner ? Est-il possible d'entrer le fichier d'entrée et de sortie en utilisant les fenêtres de chois de l'explorateur ?
Je présume que tu veux dire : "est-il possible de lancer ce script à partir du menu contextuel dans l'explorateur quand on sélectionne un fichier donné, et que le nom de ce fichier soit transmis au script ?"
la réponse est OUI, il suffit de créer une sous-clef dans HKCRtypedufichiershell
P.ex., si les fichiers .txt pointent vers HKCRtextfile
il faudra créer : - une sous-clef HKCRtextfileshellMon bidouillage avec comme valeur par défaut (p.ex.) "Bidouille" - une sous-clef HKCRtextfileshellMon bidouillagecommand avec comme valeur par défaut "C:mes bidouillesprog.cmd" %1
MAIS tu ne peux passer qu'un seul paramètre : le fichier sélectionné (si tu en sélectionnes "n", cela lancera le script "n" fois, avec le nom respectif de chaque fichier)
Donc il faudra dans le cas de ton script générer le fichier de sortie à partie de celui d'entrée. C'est assez facile, p.ex. :
prog.cmd ------------- couper ici ------------- @echo off set fileIN=%1 set fileOUT=%fileIN:~0,-4%-OUT.txt "C:Program Filesdirprogprog.exe" -p %fileIN -o %fileOUT pause ------------- couper ici -------------
Explication : set fileOUT=%fileIN:~0,-4%-OUT.txt
Cette commande extrait la totalité des caractères contenus dans la variable %fileIN%, moins les 4 derniers (=l'extension ".txt"), auxquels on ajoute "-OUT.txt"
(pour plus d'infos, consulter l'aide sur la commande SET par la commande "SET /?")
Il me semble de mémoire qu'un certain JCB a pondu un script qui doit faire ça nickel. http://jc.bellamy.free.fr/fr/explorer.html#runconsole
A+
-- Enlever YFAUTVIRER
http://pschnel.free.fr
Jean-Claude BELLAMY a émis l'idée suivante :
Le vendredi 02/11/2012 18:15:26, Serge Nazarian a écrit dans le message
<news:5093ffb2$0$1865$426a74cc@news.free.fr> ce qui suit :
Bonjour,
Je suis sous Windows 7.
Je souhaite lancer un programme, prog.exe qui ne fonctionne qu'en fenêtre
de command par
"C:Program Filesdirprogprog.exe" -p fichier_e.txt -o fichier_s.txt
où -p attende le chemin d'un fichier d'entrée et -o le chemin d'un fichier
de sortie.
J'ai donc crée un fichier prog.cmd
qui contient
"C:Program Filesdirprogprog.exe" -p %%1 -o %%2
Qu'est-ce que ces doubles "%" ??????????
SEULES les % de variables de boucle FOR qui doivent être doublés dans un
batch! (p.ex. "FOR %%F in(*.*) do echo %%F")
Par contre les paramètres formels %1, %2, ..%* restent tels quels ...
Ton fichier cmd doit donc contenir :
"C:Program Filesdirprogprog.exe" -p %1 -o %2
puis un raccourci vers prog.cmd
Je double-clique sur le raccourci, mais "on" ne me demande pas le chemin
d'entrée ni celui de sortie et cela ne fonctionne pas.
NORMAL vu l'erreur de syntaxe ci-dessus !
Je désire aussi que la fenêtre ne se ferme pas automatiquement à la fin de
l'exécution.
Il suffit d'insérer une commande PAUSE
Qui peut me dépanner ? Est-il possible d'entrer le fichier d'entrée et de
sortie en utilisant les fenêtres de chois de l'explorateur ?
Je présume que tu veux dire :
"est-il possible de lancer ce script à partir du menu contextuel
dans l'explorateur quand on sélectionne un fichier donné, et que le
nom de ce fichier soit transmis au script ?"
la réponse est OUI, il suffit de créer une sous-clef dans
HKCRtypedufichiershell
P.ex., si les fichiers .txt pointent vers
HKCRtextfile
il faudra créer :
- une sous-clef
HKCRtextfileshellMon bidouillage
avec comme valeur par défaut (p.ex.) "Bidouille"
- une sous-clef
HKCRtextfileshellMon bidouillagecommand
avec comme valeur par défaut
"C:mes bidouillesprog.cmd" %1
MAIS tu ne peux passer qu'un seul paramètre : le fichier sélectionné
(si tu en sélectionnes "n", cela lancera le script "n" fois, avec le nom
respectif de chaque fichier)
Donc il faudra dans le cas de ton script générer le fichier de sortie à
partie de celui d'entrée. C'est assez facile, p.ex. :
prog.cmd
------------- couper ici -------------
@echo off
set fileIN=%1
set fileOUT=%fileIN:~0,-4%-OUT.txt
"C:Program Filesdirprogprog.exe" -p %fileIN -o %fileOUT
pause
------------- couper ici -------------
Explication :
set fileOUT=%fileIN:~0,-4%-OUT.txt
Cette commande extrait la totalité des caractères contenus dans la variable
%fileIN%, moins les 4 derniers (=l'extension ".txt"), auxquels on ajoute
"-OUT.txt"
(pour plus d'infos, consulter l'aide sur la commande SET par la commande
"SET /?")
Il me semble de mémoire qu'un certain JCB a pondu un script qui doit
faire ça nickel.
http://jc.bellamy.free.fr/fr/explorer.html#runconsole
Le vendredi 02/11/2012 18:15:26, Serge Nazarian a écrit dans le message <news:5093ffb2$0$1865$ ce qui suit :
Bonjour,
Je suis sous Windows 7.
Je souhaite lancer un programme, prog.exe qui ne fonctionne qu'en fenêtre de command par "C:Program Filesdirprogprog.exe" -p fichier_e.txt -o fichier_s.txt où -p attende le chemin d'un fichier d'entrée et -o le chemin d'un fichier de sortie.
J'ai donc crée un fichier prog.cmd qui contient "C:Program Filesdirprogprog.exe" -p %%1 -o %%2
Qu'est-ce que ces doubles "%" ?????????? SEULES les % de variables de boucle FOR qui doivent être doublés dans un batch! (p.ex. "FOR %%F in(*.*) do echo %%F")
Par contre les paramètres formels %1, %2, ..%* restent tels quels ...
Ton fichier cmd doit donc contenir : "C:Program Filesdirprogprog.exe" -p %1 -o %2
puis un raccourci vers prog.cmd
Je double-clique sur le raccourci, mais "on" ne me demande pas le chemin d'entrée ni celui de sortie et cela ne fonctionne pas.
NORMAL vu l'erreur de syntaxe ci-dessus !
Je désire aussi que la fenêtre ne se ferme pas automatiquement à la fin de l'exécution.
Il suffit d'insérer une commande PAUSE
Qui peut me dépanner ? Est-il possible d'entrer le fichier d'entrée et de sortie en utilisant les fenêtres de chois de l'explorateur ?
Je présume que tu veux dire : "est-il possible de lancer ce script à partir du menu contextuel dans l'explorateur quand on sélectionne un fichier donné, et que le nom de ce fichier soit transmis au script ?"
la réponse est OUI, il suffit de créer une sous-clef dans HKCRtypedufichiershell
P.ex., si les fichiers .txt pointent vers HKCRtextfile
il faudra créer : - une sous-clef HKCRtextfileshellMon bidouillage avec comme valeur par défaut (p.ex.) "Bidouille" - une sous-clef HKCRtextfileshellMon bidouillagecommand avec comme valeur par défaut "C:mes bidouillesprog.cmd" %1
MAIS tu ne peux passer qu'un seul paramètre : le fichier sélectionné (si tu en sélectionnes "n", cela lancera le script "n" fois, avec le nom respectif de chaque fichier)
Donc il faudra dans le cas de ton script générer le fichier de sortie à partie de celui d'entrée. C'est assez facile, p.ex. :
prog.cmd ------------- couper ici ------------- @echo off set fileIN=%1 set fileOUT=%fileIN:~0,-4%-OUT.txt "C:Program Filesdirprogprog.exe" -p %fileIN -o %fileOUT pause ------------- couper ici -------------
Explication : set fileOUT=%fileIN:~0,-4%-OUT.txt
Cette commande extrait la totalité des caractères contenus dans la variable %fileIN%, moins les 4 derniers (=l'extension ".txt"), auxquels on ajoute "-OUT.txt"
(pour plus d'infos, consulter l'aide sur la commande SET par la commande "SET /?")
Il me semble de mémoire qu'un certain JCB a pondu un script qui doit faire ça nickel. http://jc.bellamy.free.fr/fr/explorer.html#runconsole