Fenètre CMD reste ouverte lorsque je lance un exe?

Le
Otto Haldi
Bonjour à tous,

Je teste le batch suivant qui update des fichiers depuis un serveur:

ECHO . Check update!
attrib kalga32.exe -r
xcopy S:ArchivxHarbourKalga32kalga32.exe /D /Y
attrib kalga32.exe +r
call KALGA32.EXE

L'update fonctionne parfaitement. Malheureusement la fenètre cmd qui a lancé l'exe reste ouverte en arrière plan.
J'ai essayé en ajoutant la commande call devant mais le problème reste.

Merci d'avance pour tous renseignements.
Otto
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
at
Le #21677641
Otto Haldi a émis l'idée suivante :
Bonjour à tous,

Je teste le batch suivant qui update des fichiers depuis un serveur:

ECHO . Check update!
attrib kalga32.exe -r
xcopy S:ArchivxHarbourKalga32kalga32.exe /D /Y
attrib kalga32.exe +r
call KALGA32.EXE

L'update fonctionne parfaitement. Malheureusement la fenètre cmd qui a lancé
l'exe reste ouverte en arrière plan. J'ai essayé en ajoutant la commande call
devant mais le problème reste.

Merci d'avance pour tous renseignements.
Otto



Et bien ajoute exit.
Jean-Claude BELLAMY
Le #21679071
"Otto Haldi" discussion :
Bonjour à tous,

Je teste le batch suivant qui update des fichiers depuis un serveur:

ECHO . Check update!
attrib kalga32.exe -r
xcopy S:ArchivxHarbourKalga32kalga32.exe /D /Y
attrib kalga32.exe +r
call KALGA32.EXE

L'update fonctionne parfaitement. Malheureusement la fenètre cmd qui a
lancé l'exe reste ouverte en arrière plan.


Normal !

J'ai essayé en ajoutant la commande call devant mais le problème reste.



"Call" ne sert qu'à lancer un 2ème batch depuis un 1er batch et revenir dans
le 1er à l'instruction suivant le call une fois que le 2ème est terminé.

Il te faut utiliser non pas call, mais "start".

start KALGA32.EXE


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr
Jean-Claude BELLAMY
Le #21679061
"at" 4bdf1d17$0$2947$
Otto Haldi a émis l'idée suivante :
Bonjour à tous,

Je teste le batch suivant qui update des fichiers depuis un serveur:

ECHO . Check update!
attrib kalga32.exe -r
xcopy S:ArchivxHarbourKalga32kalga32.exe /D /Y
attrib kalga32.exe +r
call KALGA32.EXE

L'update fonctionne parfaitement. Malheureusement la fenètre cmd qui a
lancé l'exe reste ouverte en arrière plan. J'ai essayé en ajoutant la
commande call devant mais le problème reste.




Et bien ajoute exit.




Voila une RALC (réponse à la con) qu'elle est bonne ! ;-)

Vu que "call" ATTEND que le batch ou exécutable transmis soit terminé avant
de passer à la suite, le "exit" final que tu rajoutes est totalement
superflu ici (puisque c'est la dernière instruction du batch).



--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr
Otto Haldi
Le #21680041
On Tue, 4 May 2010 08:48:56 +0200, "Jean-Claude BELLAMY"
Bonjour Jean-Claude,

Un grand merci pour ton aide, je vais tester cela de suite.

"Call" ne sert qu'à lancer un 2ème batch depuis un 1er batch et revenir dans
le 1er à l'instruction suivant le call une fois que le 2ème est terminé.



Je savais cela, c'était juste pour tester. Par contre, je n'ai plus pensé a cette commande start!

Bonne journée
Otto


"Otto Haldi" discussion :
Bonjour à tous,

Je teste le batch suivant qui update des fichiers depuis un serveur:

ECHO . Check update!
attrib kalga32.exe -r
xcopy S:ArchivxHarbourKalga32kalga32.exe /D /Y
attrib kalga32.exe +r
call KALGA32.EXE

L'update fonctionne parfaitement. Malheureusement la fenètre cmd qui a
lancé l'exe reste ouverte en arrière plan.


Normal !

J'ai essayé en ajoutant la commande call devant mais le problème reste.



"Call" ne sert qu'à lancer un 2ème batch depuis un 1er batch et revenir dans
le 1er à l'instruction suivant le call une fois que le 2ème est terminé.

Il te faut utiliser non pas call, mais "start".

start KALGA32.EXE
Max PUECH
Le #21681191
Dans BELLAMY a écrit:

Il te faut utiliser non pas call, mais "start".

start KALGA32.EXE



Bonsoir,

Et avec "KALGA32.EXE" tout simplement, ça ne marche pas ?

@+
Ascadix
Le #21688981
Max PUECH a exprimé avec précision :
Dans BELLAMY a écrit:

Il te faut utiliser non pas call, mais "start".

start KALGA32.EXE



Bonsoir,

Et avec "KALGA32.EXE" tout simplement, ça ne marche pas ?



Non, dans ce cas là, ça ferais un CALL implicite et le batch attend
quel e.EXE soit terminé avant de poursuivre.

@+



--
@+
Ascadix
adresse @mail valide, mais ajoutez "sesame" dans l'objet pour que ça
arrive.
Otto Haldi
Le #21691371
On Tue, 4 May 2010 18:13:54 +0200, Max PUECH
Dans BELLAMY a écrit:

Il te faut utiliser non pas call, mais "start".

start KALGA32.EXE



Bonsoir,

Et avec "KALGA32.EXE" tout simplement, ça ne marche pas ?

@+


Malheureusement non...
mdnews
Le #21696121
On Thu, 06 May 2010 09:22:15 +0200, Otto Haldi wrote:

On Tue, 4 May 2010 18:13:54 +0200, Max PUECH
Dans BELLAMY a écrit:

Il te faut utiliser non pas call, mais "start".

start KALGA32.EXE



Bonsoir,

Et avec "KALGA32.EXE" tout simplement, ça ne marche pas ?



Malheureusement non...



Il existe une curiosité (bug?) sur certains OS MS qui fait que si un
batch ne commence pas par @ECHO OFF la fenêtre ne se referme pas une
fois le batch terminé. (pourquoi ? je ne sais pas)
Publicité
Poster une réponse
Anonyme