Lancer un fichier .bat pendant l'exécution [Résolu]

Signaler
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009
-
Messages postés
84
Date d'inscription
dimanche 1 juillet 2007
Statut
Membre
Dernière intervention
8 janvier 2013
-
Bonjour,




Après recherche, dans le forum, je me tourne vers vous. Voici la question:




Comment lancer un fichier .bat pendant l'exécution ?




J'ai essayé :


System.Diagnostics.Process.Start ( "Mon fichier.bat");




et ça marche mais dans mon appli, l'utilisateur choisit l'emplacement de la création du .bat:


System.Diagnostics.Process.Start( chemin + @"\fichier.bat");




La fenetre dos s'ouvre, disparait mais rien, le .bat n'a pas fait ce qu'il devait faire...




J'ai également essayé avec Process.StartInfo... mais là encore, ça n'a rien donné.




En fait j'aimerais que la fenetre dos s'ouvre, que le fichier bat fasse son boulot et que la fenetre reste ouverte après, de facon que l'utilisateur puisse lire ce qui c'est passé.




Si quelqu'un a une idée...




Merci d'avance




@ +




lagoelle

17 réponses

Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

En effet. Merci coq

Sinon c'est ok, les cab sont créés et fonctionnent.

Merci à tous de votre aide (ça fait hyper longtemps que je cherchais)

@ plus

lagoelle
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
93
Si tu la veux en .Net : Path.GetPathRoot
Par contre si c'est pour le bat : aucune idée

Cocoricoooooooo !!!!
coq
MVP Visual C#
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
et tu ne peux pas faire ce que fais ton .bat en c# ???
plus simple non ???


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

Et non Arthenius, j'ai essayé (d'ailleurs crazyHt travaille dessus, voir mon dernier post à propos des fichiers cab).

Donc pendant que de son coté il regarde ce qu'il peut faire, je teste d'autres possibilités...

Donc, si tu peux m'aider, je t'en remercies.

@ plus

lagoelle
Messages postés
2368
Date d'inscription
mardi 17 avril 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
20
Met un pause a la fin de ton fichier Bat

::|The S@ib|::
MVP C#.NET
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
arf dsl j'avions pas vu les autres post...


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Non, j'ai essayé en C# mais ça n'a pas abouti...voir mon post sur les cab

Donc j'explore une autre voix, donc si tu peux m'aider, je t'en remercie

@ plus

lagoelle
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

Désolé pour le doublon décalé, mais lorsque je suis venu voir vos réponses, il n'y avait rien d'affiché, donc j'ai réécrit le meme message et puis tous les messages se sont affichés !?!?

Mon fichier bat contient:
cabarc n mycab.cab @ListeOfFile.txt

où cabarc est l'exe de chez Microcrosoft, n signifie nouveau, mycab.cab est le nom de sortie du cab et @ListeOfFile.txt un fichier contenant,ligne par ligne, le nom des fichiers à compresser

Donc j'ai bien rajouté le mot pause mais ça ne fonctionne pas, par contre ça m'a permis de lire la fenetre dos, l'erreur vient du fait qu'il n'arrive pas à lire le fichier ListeOfFile.txt !!!? Je ne comprends pas car quand j'exécute le bat en direct , ça marche.

Vous en pensez quoi ?

@ plus

lagoelle
Messages postés
2368
Date d'inscription
mardi 17 avril 2001
Statut
Modérateur
Dernière intervention
26 décembre 2007
20
Ce n'est pas une question de chemin ? est tu sur qu'il tape au bon endroit ?

::|The S@ib|::
MVP C#.NET
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
met le chemin complet de listeoffile.txt
peut etre que vu que tu execute ton prog depuis C# il est positionner dans un autre repertoire...et voilou..


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
lol refresh...
je commence a resembler a coq :o)


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

Non ça marche toujours pas...
Est ce que je peux poster une source avec tout ce qu'il faut pour tester, meme si celle ci ne marche pas ? Comme ça vous pourrez tester et voir les messages ?
Quitte à la supprimer de la liste des sources , ou plutot la mettre à jour après ?

Si vous etes ok, je prépares ça.

@ plus

lagoelle
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

J'ai préparé un petit zip avec ce qu'il faut.
Je le mets en ligne. (nom: créer cab béta), si on trouve la soluce je ferais la mise à jour.

@ plus

lagoelle
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

Voila le lien pour télécharger le cabSDK: (exe +docs)http://download.microsoft.com/download/platformsdk/cab/2.0/w98nt42kmexp/en-us/cabsdk.exe

@ plus

lagoelle
Messages postés
102
Date d'inscription
mercredi 5 février 2003
Statut
Membre
Dernière intervention
17 mars 2009

En fait il faut écrire ça dans le .bat et du coup ça marche ;-)




cd\
c:
cd Documents and Settings\renou.SOBRETEC\Mes documents\CabSDK\BIN
cabarc n mycab.cab @ListeOfFile.txt
pause




(avec cd nom_du_chemin_où_y_a_les_fichiers_à_comprimer)

Maintenant, est-ce qu'il y a une fonction qui permet, à partir d'un chemin, de savoir le lecteur racine ?


Comme ça je pourrais automatiser la création du cab, sans que l'utilisateur voit tout ces fichiers qui deviendront donc temporaire.




Comme je l'avais promis à crazyHT, je ferais un tuto complet sur la création des cab...




Donc si qqn connait la fonction qui donne la racine d'un chemin, je le remercie d'avance.




@ plus

lagoelle
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
14
arf c'etait bien un pb de reperoire mal placé....
pour ta fonction dsl je vois po..


Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Messages postés
84
Date d'inscription
dimanche 1 juillet 2007
Statut
Membre
Dernière intervention
8 janvier 2013
2
Salut tous le monde
comment je peut executer ou lancer un pgm dans une machine distante ,eske c possible avec "System.Diagnostics.Process.Start( chemin + @"\fichier.bat");" et comment j'indique l'@ ip ce la machine distance sachant que g deja envoye le fichier (klk soit ex monfichier) a cette machine et il sera sauvgarder automatiquement dans "C:\monfichier"
comment faire ???