Batch condition ERROR

Salutation,
J'ai un soucis avec mon batch !
J'ai ici mon batch qui permet d'ajouter a l'ordinateur une imprimante quelconque au réseaux d'un lycée.
Maintenant je veux mettre une condition pour dire a l'utilisateur que son imprimante a bien était ajoutée aux réseaux, mais avec ou sans erreurs, je rentre quand même dans la boucle IF :( !
Voila en espérant que vous puissiez m'aider ! :)
Amicalement Nodoka.
Ps : Sinon j'avais pensé a une autre solution, c'est de vérifié dans la base de registre si l'imprimante a été installée, mais la je ne sais pas du tout qu'elle est le code, je n'est jamais fait de batch ... :( Je me renseigne un peut sur tout les tuto/forum mais bon je m'y perd ! help meeeeeeeeeeeeeee ! merci :wahoo:

[CODE] :

cls
:begin

echo off

rundll32 printui.dll,PrintUIEntry /q /in /n \\Roodsevelt\LS_LIB

if errorlevel 0 Goto fin

"C:\Program Files\Internet Explorer\iexplore.exe" "http://www.asparis.fr:82/printers/successful.html"

:fin

echo Fin du batch.

pause
Configuration: Windows XP
Firefox 2.0.0.14

14 réponses

  1. Erf
    Oui se n'est pas le but ! ^^
    Je ne sait pas trop comment sa fonctionne le batch :( c'est la toute premiere fois que je l'utilise :s
    1. Oops me suis trompé !

      :End
      echo Fin du batch.

      :Install_Pdriver3
      "C:\Program Files\Internet Explorer\iexplore.exe" "http://www.asparis.fr:82/printers/successful.html"

      pause

      la fin c'est comme sa
      1. J'ai peur de ne plus rien comprendre à ce que tu veux faire là.

        Si tu as une erreur et que tu fais un GOTO END le programme va faire ton ECHO mais va ensuite continuer et donc t'ouvrir la page web. Il ne me semblait pas que c'était le but...
    2. Sinon j'ai pensé a sa :

      cls
      :begin

      echo off

      rundll32 printui.dll,PrintUIEntry /q /in /n \\Roosesvelt\LS_LIB

      If %errorlevel% EQU 1 CLS && Echo Error importing registry file && Goto End

      If %errorlevel% EQU 0 CLS && Echo Registry Import Successful && Goto Spooler

      :Spooler
      If NOT %errorlevel% EQU 0 CLS && Echo Print Driver Installation Successful
      && Goto Install_Pdriver3

      :End
      "C:\Program Files\Internet Explorer\iexplore.exe" "http://www.asparis.fr:82/printers/successful.html"
      echo Fin du batch.

      :Install_Pdriver3
      "C:\Program Files\Internet Explorer\iexplore.exe" "http://www.asparis.fr:82/printers/successful.html"

      pause

      Mais bon vu que je ne connais pas du tout le Batch ... j'ai fait sa pas pure logique xD
      1. Sa fontionne bien la il me dit que l'imprimante est intallé !
        1. Et bien on avance :-)

          Le problème est donc l'ouverture de ta page web et non pas le test de réussite d'installation de l'imprimante.
      2. cls
        :begin

        echo off

        rundll32 printui.dll,PrintUIEntry /q /in /n \\Roosevelt\LS_LIB

        IF ERRORLEVEL 0 "C:\Program Files\Internet Explorer\iexplore.exe" "http://www.asparis.fr:82/printers/successful.html"

        echo Fin du batch.

        pause

        Marche pas, je commence a me dire se n'est pas la bonne fonction que j'utilise :o
        1. Attends, te décourage pas.

          Commence par faire :

          cls
          :begin

          echo on

          rundll32 printui.dll,PrintUIEntry /q /in /n \\Roosevelt\LS_LIB

          ECHO ERRORLEVEL

          IF ERRORLEVEL 0 echo Imprimante installée

          echo Fin du batch.

          pause

          Juste pour voir où ça coince !
      3. Fonctionne toujours pas :( désespéré .
        C'est chiant :( !
        1. Dans ce cas il suffit de retourner la clause if:

          IF ERRORLEVEL 0 "C:\Program Files\Internet Explorer\iexplore.exe" "http://www.asparis.fr:82/printers/successful.html"

      4. Oui sa ok, mais quand l'installation est réussi je met coi xD ^^
        Parce que au pire windows me le dit quand le chemin UNC est mauvais ou quand l'imprimante n'existe pas, j'ai un maître de stage assé chiant ^^ donc voila ^^ lui il veut que j'affiche une page disant que l'installation c'est bien faite :) ou dans le cas contraire que rien se passe, le message d'erreur windows s'affiche et tout se ferme.
        Voila :/
        1. Désolé, essayes ça à la place :

          IF NOT ERRORLEVEL 0 ECHO Erreur installation imprimante
          1. Avec se code la il rentre même pas dans la boucle, c'est a dire que avec ou sans erreurs dans le chemin UNC il m'affiche pas ma page html :s

            [CODE]

            cls
            :begin

            echo off

            rundll32 printui.dll,PrintUIEntry /q /in /n \\Roosevelt\LS_LIB

            if %errorlevel% EQU 0 goto fin

            "C:\Program Files\Internet Explorer\iexplore.exe" "http://www.asparis.fr:82/printers/successful.html"

            :fin

            echo Fin du batch.

            pause
            1. Non sa fonctionne pas il rentre toujours dans la boucle que sa fonctionne ou pas :s
              1. Saurais tu commenté un peut les lignes ?
                Se que je dois changer pour l'adapté a mon code etc ?
                Parce que la je suis vraiment perdu ! :'(
                1. Salut,

                  Le problème est que tu utilises errorlevel qui est une chaîne de caractère et non une variable. Pour utiliser le contenu de la variable errorlevel tu dois ajouter le signe % devant et derrière -->
                  %errorlevel%

                  Et voilà après cela fonctionnera je pense.
              2. ;)
                Oki merci ^^
                J'ai rien compris a se que tu as écrit mais je vais mettre le nez dedans et essayé de comprendre tous sa ^^
                Merci encore !
                1. Contributeur
                  Hello
                  il y a là un exemple avec une syntaxe un peu différente:

                  Echo ******* Installing Ricoh 1022 Driver *****************
                  
                  rundll32 printui.dll,PrintUIEntry /if /b "ITS L1 Ricoh 1022" /f
                  %windir%\inf\ricoh1022\oemsetup.inf /r "IP_130.130.69.96" /m "RICOH Aficio
                  1022 PCL 6" /z
                  If NOT %errorlevel% EQU 0 CLS && Echo Print Driver Installation Successful
                  && Goto Install_Pdriver3
                  :END