Usando el nivel de error en un archivo por lotes para agregar una impresora de red

Usando el nivel de error en un archivo por lotes para agregar una impresora de red

Estoy intentando escribir un script para que la gente pueda agregar una impresora de red con solo escribir su nombre.

REM Adding network printer 

@echo off
:addprinter
set /p printer="Please enter the name of the printer you wish to add: "
echo.
echo Adding %printer%
echo.


REM Add printer
rundll32 printui.dll,PrintUIEntry /in /n\\printserver\%printer%
if %errorlevel% == 1 (
        echo.
        echo Printer not recognized
        echo.
goto :addprinter
)
if %errorlevel% == 0 (
        echo.
        echo Printer added
        echo.
    timeout /t 3 > nul
    goto :default
)


:default

El problema es que las comprobaciones del nivel de error no funcionan, siempre devuelven el nivel de error 0, incluso cuando la impresora no pudo agregar.

¿Alguien que pueda ayudarme aquí?

Respuesta1

Eso significa

if %errorlevel% 1 (

en lugar de

if %errorlevel% == 1 (

Un archivo por lotes no es C++ :)

información relacionada