OVH Cloud OVH Cloud

Commande DOS pour faire une attente

7 réponses
Avatar
Philippe
Bonjour

Pour une application que nous somme en train de developper, nous avons deux
executables a lancer.
Le second doit etre lancé quand le premier est fini d'executé.

J'aimerais mettre ces execcutions dans un fichier batch mais je recherche
une commande me permettant d'attendre une 10aine de seconde avant que le
second executable ne demarre.

Y existe t'il une commande DOS permettant de faire ca ?
Ou bien telecharger quelque par un petit executable me permetant d'incure un
delay entre 2 execution.


Merci d'avance
Phil

7 réponses

Avatar
Lambda
Philippe wrote:
Pour une application que nous somme en train de developper, nous avons deux
executables a lancer.
Le second doit etre lancé quand le premier est fini d'executé.

J'aimerais mettre ces execcutions dans un fichier batch mais je recherche
une commande me permettant d'attendre une 10aine de seconde avant que le
second executable ne demarre.

Y existe t'il une commande DOS permettant de faire ca ?


Ca existait avant : la commande choice permettait de faire faire un
choix à l'utilisateur, avec une valeur du choix par défaut qui était
déclenchée au bout d'un temps choisi. Mais il semblerait qu'elle n'aie
pas été maintenue dans la commande dos de WinXP. Je ne sais pas quand
elle a disparu.

--

Lambda

Avatar
John of Aix
Lambda wrote:
Philippe wrote:
Pour une application que nous somme en train de developper, nous
avons deux executables a lancer.
Le second doit etre lancé quand le premier est fini d'executé.

J'aimerais mettre ces execcutions dans un fichier batch mais je
recherche une commande me permettant d'attendre une 10aine de
seconde avant que le second executable ne demarre.

Y existe t'il une commande DOS permettant de faire ca ?


Ca existait avant : la commande choice permettait de faire faire un
choix à l'utilisateur, avec une valeur du choix par défaut qui était
déclenchée au bout d'un temps choisi. Mais il semblerait qu'elle n'aie
pas été maintenue dans la commande dos de WinXP. Je ne sais pas quand
elle a disparu.


Il y a Pause qui demande que l'on presse une touche pour continuer.


Avatar
Aigle bavard
Lambda wrote:
Philippe wrote:
Pour une application que nous somme en train de developper, nous
avons deux executables a lancer.
Le second doit etre lancé quand le premier est fini d'executé.

J'aimerais mettre ces execcutions dans un fichier batch mais je
recherche une commande me permettant d'attendre une 10aine de
seconde avant que le second executable ne demarre.

Y existe t'il une commande DOS permettant de faire ca ?
Ca existait avant : la commande choice permettait de faire faire un

choix à l'utilisateur, avec une valeur du choix par défaut qui était
déclenchée au bout d'un temps choisi. Mais il semblerait qu'elle n'aie
pas été maintenue dans la commande dos de WinXP. Je ne sais pas quand
elle a disparu.


Il y a Pause qui demande que l'on presse une touche pour continuer.





La commande wait existe encore sous XP ?
Aigle bavard



Avatar
John of Aix
Aigle bavard wrote:
Lambda wrote:
Philippe wrote:
Pour une application que nous somme en train de developper, nous
avons deux executables a lancer.
Le second doit etre lancé quand le premier est fini d'executé.

J'aimerais mettre ces execcutions dans un fichier batch mais je
recherche une commande me permettant d'attendre une 10aine de
seconde avant que le second executable ne demarre.

Y existe t'il une commande DOS permettant de faire ca ?
Ca existait avant : la commande choice permettait de faire faire un

choix à l'utilisateur, avec une valeur du choix par défaut qui était
déclenchée au bout d'un temps choisi. Mais il semblerait qu'elle
n'aie pas été maintenue dans la commande dos de WinXP. Je ne sais
pas quand elle a disparu.


Il y a Pause qui demande que l'on presse une touche pour continuer.





La commande wait existe encore sous XP ?


Non. j'ai essayé. Sleep et Delay non plus.




Avatar
NyC
hello John of Aix you wrote

Aigle bavard wrote:
Lambda wrote:
Philippe wrote:
Pour une application que nous somme en train de developper, nous
avons deux executables a lancer.
Le second doit etre lancé quand le premier est fini d'executé.

J'aimerais mettre ces execcutions dans un fichier batch mais je
recherche une commande me permettant d'attendre une 10aine de
seconde avant que le second executable ne demarre.

Y existe t'il une commande DOS permettant de faire ca ?
Ca existait avant : la commande choice permettait de faire faire un

choix à l'utilisateur, avec une valeur du choix par défaut qui
était déclenchée au bout d'un temps choisi. Mais il semblerait
qu'elle n'aie pas été maintenue dans la commande dos de WinXP. Je
ne sais pas quand elle a disparu.


Il y a Pause qui demande que l'on presse une touche pour continuer.





La commande wait existe encore sous XP ?


Non. j'ai essayé. Sleep et Delay non plus.


Alors un loop X fois ou un comptage temps et enchainer ?
?
--
NyC

return adress valid.





Avatar
Jean-Claude BELLAMY
Dans le message :4485855d$0$935$,
Philippe a pris la peine d'écrire ce qui suit :
Bonjour

Pour une application que nous somme en train de developper, nous
avons deux executables a lancer.
Le second doit etre lancé quand le premier est fini d'executé.


La commande "START" avec le commutateur "/wait" est faite pour çà !!!
(W2K, XP et +)

@echo off
...
START /WAIT "k:programmes divers et variésprogramme à démarrer en
premier.exe"
START /WAIT "k:programmes divers et variésprogramme à démarrer en
deuxième.exe"
START "k:programmes divers et variésprogramme à démarrer en
troisième.exe"
....

TOUT SIMPLEMENT !




J'aimerais mettre ces execcutions dans un fichier batch mais je
recherche une commande me permettant d'attendre une 10aine de seconde
avant que le second executable ne demarre.


Et pour créer une tempo, voila un exemple de commande SLEEP
(créée avec un script VBS) :


SLEEP.VBS (admet en paramètre la tempo exprimée en secondes)

---------- couper ici ----------
set args=wscript.arguments
if args.count=0 then wscript.quit
d=args(0)
if not isnumeric(d) then wscript.quit
wscript.sleep d*1000
wscript.quit
---------- couper ici ----------

@echo off
...
START /WAIT "k:programmes divers et variésprogramme à démarrer en
premier.exe"
START "k:programmes divers et variésprogramme à démarrer en
deuxième.exe"
echo On va attendre 12 secondes, le temps de souffler un peu !
cscript "u:outils diversvbssleep.vbs" 12
echo On reprend le boulot
....



--
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

Avatar
cdeko
Bonjour,

Pour définir une durée de pause, je te propose les lignes de batch suivantes
:

: BATCH CHRONO
: indiquer le délai en centièmes de seconde
: sous la ligne ":DELAI"
:
@echo off
:depart
set ori=%time%
:Extraction heure, min, sec, centièmes
set h=%ori:~0,2%
set m=%ori:~3,2%
set s=%ori:~6,2%
set c=%ori:~9,2%
:Conversion en centièmes de seconde
set /a hc=%h%*360000
set /a mc=%m%*6000
set /a sc=%s%*100
set /a hmscori=%hc%+%mc%+%sc%+%c%
:
:DELAI : INDIQUER ICI LE DELAI en centièmes de seconde
set /a fin=%hmscori% + 500
:
echo Chrono en cours...
:boucle
set now=%time%
set h=%now:~0,2%
set m=%now:~3,2%
set s=%now:~6,2%
set c=%now:~9,2%
:éviter l'erreur décimal<>octal
if %h%= set h=8
if %h%= set h=9
if %m%= set m=8
if %m%= set m=9
if %s%= set s=8
if %s%= set s=9
if %c%= set c=8
if %c%= set c=9
set /a hc=%h%*360000
set /a mc=%m%*6000
set /a sc=%s%*100
set /a hmsc=%hc%+%mc%+%sc%+%c%
:si passage minuit, ajout 86400 secondes
if %hmsc% LSS %hmscori% set /a hmsc=%hmsc%+8640000
:compare heure actuelle avec heure de fin
if not %hmsc% GEQ %fin% goto boucle
echo.
echo.
echo DELAI ECOULE !
@echo on


A+,
cdeko


"Philippe" a écrit dans le message de news:
4485855d$0$935$
Bonjour

Pour une application que nous somme en train de developper, nous avons
deux
executables a lancer.
Le second doit etre lancé quand le premier est fini d'executé.

J'aimerais mettre ces execcutions dans un fichier batch mais je recherche
une commande me permettant d'attendre une 10aine de seconde avant que le
second executable ne demarre.

Y existe t'il une commande DOS permettant de faire ca ?
Ou bien telecharger quelque par un petit executable me permetant d'incure
un
delay entre 2 execution.


Merci d'avance
Phil