Objectif : | Exécutez un fichier batch à partir d’un autre. |
Format: | NOUS CONTACTEZ filet | :étiquette [p1 [p2 ...]] |
filet | Le fichier batch à exécuter. |
: étiquette | Une étiquette dans le fichier batch actuel. |
p1, p2,... | Paramètres du fichier batch ou du sous-programme |
Voir aussi: ANNULER et QUITTER.
Usage:
CALL permet aux fichiers batch d'appeler d'autres fichiers batch (imbrication de fichiers batch). Le fichier batch appelant est suspendu pendant l'exécution du (deuxième) fichier batch appelé. Lorsque le deuxième fichier batch se termine (sans exécuter la commande CANCEL), l'exécution du fichier batch d'origine reprend à la commande suivante.
AVERTISSEMENT! Si vous exécutez un fichier batch depuis un autre fichier batch sans utiliser CALL, le fichier batch d'origine se termine avant le démarrage de l'autre.. Cette méthode d'appel d'un fichier batch à partir d'un autre est généralement appelée chaînage. Notez que si le fichier batch A.BTM Usages NOUS CONTACTEZ Bet B.BTM chaînes au fichier batch C.BTM, à la sortie de C.BTM (sans exécuter un ANNULER commande) traitement du fichier batch A.BTM est repris comme s'il avait utilisé APPELEZ C.
Déposez votre dernière attestation A.BTM:
appeler b
écho xxx
Déposez votre dernière attestation B.BTM:
C
Déposez votre dernière attestation C.BTM:
quitter
Dans l'exemple ci-dessus, après l'exécution du QUITTER commande dans C.BTM le ÉCHO xxx commande dans A.BTM est exécuté ensuite.
Le fragment de fichier batch suivant compare une ligne d'entrée à wp et appelle un autre fichier batch s'il correspond :
input Entrez votre choix : %%option
si "%option" == "wp" appelez wp.bat
Les fichiers batch peuvent être imbriqués jusqu'à 64 niveaux de profondeur.
L'état actuel d'ECHO est hérité par un fichier batch appelé.
Le fichier batch appelé doit toujours soit revenir (en exécutant sa dernière ligne, soit en utilisant le QUITTER commande), ou il doit terminer le traitement du fichier batch avec ANNULER. Ne redémarrez pas et n'APPELEZ pas le fichier batch d'origine à partir du fichier appelé car cela pourrait provoquer une boucle infinie ou un débordement de pile.
Pour assurer la compatibilité avec CMD, qui ne prend pas en charge le GOSUB commande pour les sous-programmes dans le même fichier batch, vous pouvez créer un sous-programme commençant par une étiquette et terminé par l'un des éléments suivants :
•la fin du fichier batch
•EXIT
Notez que les deux derniers ne rendent PAS le contrôle à la commande CALL. N'utilisez pas le RETOUR commander!
Les paramètres passés au sous-programme sont accessibles comme %1, %2, etc., de la même manière que dans un fichier batch.
CALL renvoie un code de sortie qui correspond au code de retour du fichier batch. Vous pouvez tester ce code de sortie avec commandes conditionnelles (&& et ||).
Voir aussi GOSUB et fonctions définies par l'utilisateur.