Objectif :Exécuter une commande à l'invite de commande ou dans un fichier batch lorsqu'une condition spécifique se produit

 

Format:EN PAUSE [commander]

SUR FERMETURE [commander]

SOUS CONDITION [commande de condition]

SUR DBLCLIQUEZ [commander]

SUR ERREUR [commander]

AU NIVEAU D'ERREUR n [commander]

SUR ERREURMSG [commander]

À LA DÉCONNEXION [commander]

SUR LE BOUTON L [commander]

SUR LE BOUTON M [commander]

SUR LE BOUTON [commander]

POUR RÉSUMER [commander]

À L'ARRÊT [commander]

EN SUSPENSION [commander]

 

commander        commande à exécuter lorsque l'événement se produit

/G                Définir une condition globale à partir d'un fichier batch

 

Usage:

 

ON définit un montre de luxe. qui reste en vigueur pendant toute la durée de la session ou du fichier batch en cours, ou jusqu'à ce qu'elle soit remplacée par une autre commande ON du même type. Chaque fois qu'un pause or erreur condition se produit après l'exécution de ON, la condition correspondante commander est automatiquement exécuté. Vous pouvez avoir plusieurs commandes ON actives à la fois, à condition qu'il n'y en ait pas deux du même type. (Par exemple, vous pouvez avoir un ON BREAK et un ON CLOSE, mais pas deux ON LBUTTON.)

 

Si le dernier argument de la ligne est un seul (, il est interprété comme le début d'un groupe de commande. ON ajoutera les lignes suivantes (dans un fichier batch) ou vous demandera d'entrer davantage de données (sur la ligne de commande) jusqu'à ce qu'il obtienne une fermeture. ).

 

Conditions globales :

 

Les conditions ON suivantes peuvent être exécutées à partir de l'invite de commande (une « condition globale » ); tous les autres ne fonctionneront que dans un fichier batch.

 

EN FERMETURE

À LA DÉCONNEXION

À L'ARRÊT

EN SUSPENSION

POUR RÉSUMER

 

Si aucune commande n'est spécifiée, TCC supprimera la commande existante pour la condition spécifiée. Chaque fois qu'une instruction ON est définie, elle définit une nouvelle commande à exécuter pour cet événement, et toute commande précédente est ignorée. Si une condition ON est définie pour le fichier batch actuel, elle remplacera une condition ON globale.

 

L'activation de EN PAUSE

 

ON BREAK exécutera commander si l'utilisateur appuie sur Ctrl-C or Ctrl-Pause.

 

L'activation de EN FERMETURE

 

ON CLOSE exécutera commander lorsque le TCC l'onglet est fermé.

 

L'activation de À CONDITION

 

ON CONDITION exécutera commander quand condition est vrai. condition peut être n'importe quel test valide dans IF. Le test sera effectué après l'exécution de chaque commande. Si vous exécutez une boucle (DO or POUR), le test sera effectué à chaque passage dans la boucle.

 

L'activation de SUR DBLCLIQUEZ

 

ON DBLCLICK exécutera commander lorsque le bouton gauche de la souris est double-cliqué lorsque TCC est la fenêtre active. (Notez que si vous disposez également d'une commande ON LBUTTON, elle sera exécutée au premier clic.)

 

L'activation de SUR ERREUR et SUR ERREURMSG

 

ON ERROR ou ON ERRORMSG exécutera commander après toute erreur critique, erreur du système d'exploitation (telle qu'une erreur d'écriture sur disque) ou erreur de commande interne (telle qu'un COPY commande qui ne parvient pas à copier des fichiers ou l'utilisation d'une option de commande non valide).

 

ON ERROR exécute commander immédiatement après erreur se produit, sans afficher aucun TCC message d'erreur (des erreurs Windows peuvent toujours être affichées). ON ERROR définira également la variable interne %_SYSERR.

 

ON ERRORMSG affiche d'abord le message d'erreur approprié, puis exécute commander.

 

Si les deux sont spécifiés, ON ERROR aura la priorité et ON ERRORMSG sera ignoré.

 

Activation de ON ERRORLEVEL

 

AU NIVEAU D'ERREUR n exécutera commander lorsque la variable interne ERRORLEVEL est égale à l'entier spécifié par n. Vous pouvez également utiliser les tests IF ERRORLEVEL ; Par exemple:

 

AU NIVEAU D'ERREUR EQ 37...

 

L'activation de SUR LE BOUTON L

 

ON LBUTTON exécutera commander lorsque le bouton gauche de la souris est cliqué.

 

L'activation de À LA DÉCONNEXION

 

ON LOGOFF exécutera commander lorsque l'utilisateur se déconnecte.

 

L'activation de SUR LE BOUTON M

 

ON MBUTTON exécutera commander lorsque le bouton central de la souris est cliqué lorsque TCC est la fenêtre active.

 

L'activation de SUR LE BOUTON

 

ON RBUTTON exécutera commander lorsque le bouton droit de la souris est cliqué lorsque TCC est la fenêtre active.

 

L'activation de POUR RÉSUMER

 

ON RESUME exécutera commander lorsque le système reprend après une veille ou une hibernation.

 

L'activation de À L'ARRÊT

 

ON SHUTDOWN exécutera commander lorsque le système est arrêté.

 

L'activation de EN SUSPENSION

 

ON SUSPEND exécutera commander quand le système va dormir ou hiberner. Windows continuera à se suspendre après un maximum de 2 secondes.

 

Domaine

 

Chaque fois qu'une instruction ON est définie, elle définit une nouvelle commande à exécuter pour cet événement, et toute commande précédente est ignorée.

 

Si vous ne spécifiez pas de commande, TCC restaure le gestionnaire par défaut.

 

Une instruction ON affecte uniquement le fichier batch actuel. Lorsque le fichier batch contenant ON est quitté pour une raison quelconque, que ce soit temporairement (par exemple, par un NOUS CONTACTEZ vers un autre fichier batch) ou de façon permanente, le TCC défaut pause et erreur les gestionnaires deviennent efficaces. UN NOUS CONTACTEZLe fichier batch ed peut ensuite utiliser ON pour définir ses propres gestionnaires. Lorsque le contrôle revient au fichier batch appelant, son pause et erreur gestionnaires qui étaient en vigueur au moment de NOUS CONTACTEZ sont réactivés.

 

Limites

 

Le message ON ERREUR[MSG] la commande sera ne sauraient être invoqué si un erreur se produit lors de la lecture ou de l’écriture d’une entrée, d’une sortie ou d’un canal redirigé.

 

Prudence: Si un pause or erreur se produit alors que le commander spécifié dans ON BREAK, ON ERROR, ON ERRORLEVEL ou ON ERRORMSG est en cours d'exécution, le commander sera redémarré. Cela signifie que vous devez faire preuve de prudence pour éviter ou gérer toute erreur possible dans les commandes invoquées par ON, car de telles erreurs peuvent provoquer une boucle infinie.

 

Exemples :

 

Le commander peut être n’importe quelle commande pouvant être utilisée seule sur une ligne de fichier batch. Il s'agit souvent d'un GOTO or GOSUB commande. Par exemple, le fragment suivant intercepte toute tentative de l'utilisateur de terminer le fichier batch en appuyant sur Ctrl-C or Ctrl-Pause. Il réprimande l'utilisateur pour avoir tenté de mettre fin au fichier batch, puis continue :

 

en pause gosub gotabreak

est-ce que je = 1 à 1000

 écho %i

en finir

quitter

:gotabreak

écho Hé ! Arrête ça!!

retourner

 

Vous pouvez utiliser un groupe de commande car commander si vous souhaitez exécuter plusieurs commandes, par exemple :

 

en pause (écho Oups, j'ai une pause ! et j'arrête)

 

ON suppose que vous souhaitez continuer à exécuter le fichier batch. Après le commander est exécuté, le contrôle revient automatiquement à la commande dans le fichier batch immédiatement après celle qui a été interrompue par l'événement. Pour éviter de continuer le fichier batch après l'événement à la commande suivante, effectuez l'une des opérations suivantes dans commander:

 

contrôle des transferts avec GOTO,

terminer le fichier batch avec QUITTER or ANNULER

chaîne à un autre fichier batch (sans utiliser NOUS CONTACTEZ).

 

Lors de la manipulation d'un erreur condition avec ON ERROR[MSG], vous trouverez peut-être utile d'utiliser variables internes, En particulier %_ ? et %_SYSERR, pour aider à déterminer la cause du erreur.

 

Forcer TCC ignorer pause or erreur, Utilisez l' REM commande comme votre commander.

 

Options:

 

/GDéfinir une condition globale (celle qui sera exécutée si TCC se trouve dans un fichier batch ou à l'invite de commande). Ceci est utile lorsque vous souhaitez définir des conditions globales à partir d'un fichier batch. Par exemple:

 

ON /G DÉCONNEXION commander