Bonjour,

J'utilise actuellement au boulot un script pour l'impression automatique de fichiers PDF.

Fonctionnement :
1 - L'utilisateur enregistre un fichier PDF téléchargé dans un navigateur web dans un dossier défini
2 - Le script détecte s'il y a un nouveau fichier dans ce dossier
3 - Impression du fichier PDF vers l'imprimante définie dans le script
4 - Création d'un fichier *.out pour indiquer au script que le document a été imprimé.

Le script doit tourner en permanence, tant que la fenêtre cmd n'est pas fermée.

Voici le contenu du script :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
@echo off

title Routine d'impression automatique
color 0F

set REPETIQ="C:\GS-ETIQ\"
set AdobeReader="C:\Program Files (x86)\Adobe\Reader 11.0\Reader\AcroRd32.exe"
set IMPRIM="ZEBRA"

echo ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ
echo Impression des fichiers des dossiers :
echo %REPETIQ%
pause

echo.
echo Suppression des anciennes etiquettes....
PUSHD %REPETIQ%
FOR /R %%K IN (*.pdf) DO (
  If EXIST "%%K.out" DEL "%%K" DEL "%%K.out"
)
POPD

echo Lancement Acrobat Reader....
IF NOT EXIST %AdobeReader% Goto ErrorReader
START "Acrobat Reader" /MIN %AdobeReader%

echo.
echo.
echo **OK** Routine d'impression en cours... **OK**

PUSHD %REPETIQ%

:Boucle
:: Impression etiquettes MR
FOR /R %%I IN (*.pdf) DO (
  If not exist "%%I.out" %AdobeReader% /n /t %%I %IMPRIM%
  echo "Impression effectuee" > "%%I.out"
)

:: Ping pour boucle
ping -n 1 127.0.0.1 > NUL 2>&1


Goto Boucle
Goto bEnd

:ErrorReader
echo Acrobat Reader non trouve. Verifier les parametres

:bEnd
echo fin du traitement
echo on
Le soucis est que ce script n'est pas super fonctionnel, il merde souvent et les impressions ne partent pas, surtout quand les fichiers s'entassent par dizaines.
Je n'arrive pas à trouver un moyen d'améliorer le fonctionnement de ce script.

Quelqu'un aurait-il une idée ?