25.01.2015 Views

Tutoriel sur la programmation Batch - Kro gpg

Tutoriel sur la programmation Batch - Kro gpg

Tutoriel sur la programmation Batch - Kro gpg

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

11°) Travail avec ERRORLEVEL<br />

De nombreuses commandes MS-DOS revoient une valeur de retour différente de 0<br />

quand une erreur se produit. Dans le fichier <strong>Batch</strong>, elle peut-être consultée à l'aide<br />

de <strong>la</strong> variable ERRORLEVEL. ERRORLEVEL 0 signifie qu'aucune erreur ne s'est<br />

produite.<br />

Si vous programmez en C des extensions pour MS-DOS, vous pouvez renvoyer des<br />

valeurs à l'aide de l'instruction return.<br />

Cette valeur peut-être testée avec IF, mais attention, il y a un léger point à <strong>sur</strong>veiller :<br />

si <strong>la</strong> valeur de retour est SUPERIEURE OU EGALE au numéro indiqué <strong>la</strong><br />

commande est exécutée. Par conséquent, si vous avez plusieurs ERRORLEVEL à<br />

tester, commencez toujours par <strong>la</strong> plus grande, puis procédez par ordre décroissant.<br />

Exemple : le fichier <strong>Batch</strong> suivant formate une disquette dans le lecteur A. Si une<br />

erreur se produit ou si le processus est interrompu avec CTRL+C, le fichier <strong>Batch</strong><br />

renvoie un message d'erreur.<br />

@echo off<br />

format a:<br />

if errorlevel 1 goto erreur<br />

goto fin<br />

:erreur<br />

echo.<br />

Echo Formatage impossible !<br />

:fin<br />

echo on<br />

Second exemple. Remarquez que nous contrôlons toujours <strong>la</strong> valeur <strong>la</strong> plus élevée :<br />

Echo off<br />

Format a:<br />

If errorlevel 4 goto erreur4<br />

If errorlevel 2 goto erreur2<br />

Echo Pas d'erreur, formatage effectué<br />

Goto fin<br />

:erreur4<br />

echo Lecteur ou parametre non va<strong>la</strong>ble<br />

goto fin<br />

:erreur2<br />

echo Formatage interrompu avec CTRL+C<br />

goto fin

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!