lancer un programme en fenêtre
Le
Serge Nazarian

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
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
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
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
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
NORMAL vu l'erreur de syntaxe ci-dessus !
Il suffit d'insérer une commande PAUSE
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
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