Batch - Attendre la fin d'un processus

Jerome -  
brucine Messages postés 21598 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

je bosse actuellement sur un batch, au début de celui-ci, je lance un fichier Excel  et mon batch se met en pause, mais j'aimerais que le batch continue dès que le fichier se referme (même si d'autres fichiers Excel ouvert).
Est-ce possible ?


Windows / Chrome 118.0.0.0

2 réponses

brucine Messages postés 21598 Date d'inscription   Statut Membre Dernière intervention   3 394
 

Bonjour,

Si on prévoit le temps d'utilisation du fichier en question, timeout au lieu de pause?

https://ss64.com/nt/timeout.html

0
Jerome
 

Bonjour,

Merci pour la réponse.

Mais je connais timeout que j'utilise du coup.

C'était plus une question pratique qui me permet de prendre le temps d'apporter mes modifs au fichier. Quand le referme, la commande batch reprends automatiquement...

0
brucine Messages postés 21598 Date d'inscription   Statut Membre Dernière intervention   3 394 > Jerome
 

Bonjour,

Tu m'as déjà rapporté la chose.

Dans le lien que j'ai cité en <3>, si je ne peux pas faire semblant de renommer le fichier parce qu'il est ouvert, le branchement en erreur temporise TIMEOUT pendant 5 secondes et retourne à ce test de renommage ad vitam aeternam tant que RENAME, fichier fermé, ne provoque plus d'erreur et poursuit donc le batch.

 

@echo off

:start
ren chemin-monfichierexcel chemin-monfichierexcel
if errorlevel 1 goto errorline
Suite de mon batch
goto end
:errorline
timeout /T 5
goto :start
:end
exit
0
Jerome
 

Bonjour,

Merci pour la réponse.

Mais je connais timeout que j'utilise du coup.

C'était plus une question pratique qui me permet de prendre le temps d'apporter mes modifs au fichier. Quand le referme, la commande batch reprends automatiquement...

0
brucine Messages postés 21598 Date d'inscription   Statut Membre Dernière intervention   3 394
 

Différentes astuces, certaines complexes, par exemple s'inspirer ici de la dernière contribution: la tentative de renommer le fichier de façon identique échoue tant qu'il est ouvert.

https://stackoverflow.com/questions/6969421/detecting-if-a-file-is-open-in-a-batch-file

0