[DOS]

Bonjour à tous.
je vous dérange encore une fois, j'aurais une question à vous poser :

j'aimerai récupérer les erreurs générées dans un batch par NET USE.
un exemple :
je lance un NET USE et il m'affiche
<i>L'erreur système 85 a eu lieu

nom de périphérique local déjà utilisé </i>
(normal le mapping est déjà fait.)

j'aimerais donc suivant les erreurs générées mettre différents messages ou programme.

Si quelqu'un a la réponse...
merci d'avance

6 réponses

  • Votes
  • Date
  • Date décroissante
  1. Modérateur
    En principe tout programme Dos renvoie un code d'erreur que tu peux tester par fichier batch:

    monprogramme.exe
    if errorlevel x goto toto

    (ce qui veut dire: Si mon programme.exe renvoie un code d'erreur supérieur ou égale à x, aller à la ligne toto.)

    Pour choper un code d'erreur précis (85 par exemple), il faudrait faire:
    if errorlevel 85 if not errorlevel 86 goto toto

    Maintenant il te reste à voir quels sont les codes d'erreurs que renvoie Net Send et à quoi ils correspondent.
    1. merci.
      apparemment ça marche, ya juste un truc : en fait le numéro de l'erreur que me renvoie NET USE ne correspond pas au errorlevel :

      si je met if errorlevel 85 [....] ça marche pas
      mais si je met if errorlevel 1 [...] ça marche...

      bizarre bizarre...

      PS:84 ne marche pas non plus (au cas où il y aurait eu un 0...)

      si quelqu'un sait pourquoi...
      1. Modérateur
        Et je serais prêt à parier que nulle part il n'existe de doc indiquant la liste des codes d'erreurs.
        Akikondimerci ? Merci Microsoft.

        (Et là on comprend pourquoi l'opensource ça a du bon.)
        1. Bonsoir,

          en fait dans la doc sur les MS-DOS jusqu'au 6.22 et dans la doc de certains programmes sous DOS (encore les supers d'Islande avec F-PROT.EXE l'antivirus), il est indiqué les codes d'erreurs renvoyés par le DOS qu'on peut traiter dans des batches. Mais cela ne va pas au delà de 5 ce qui est déjà suffisant dans 99 % des cas.

          Exemple pour XCOPY : 0 = copie sans erreurs, 1 = aucun fichier trouvé, 2 = arrêt par Ctr+C, 4 = erreur système, 5 = erreur INT24
          et bizarrement je n'ai pas trouvé l'erreur 3 (???), nulle part !

          Mais c'est sûr que ces histoires de N° d'erreur renvoyés, et donc utilisables, restent un grand mystère pour les 3/4 des commandes
          sous DOS !

          Si un génie sait où trouver l'intégrale, qu'il communique cette rarissime bible !

          Olivier Fournier