Ok I need to query for printer information and based on that run a set of task.
for example is this printer installed if so then install this printer, check if it was default if so set new default and then delete old printer.
I have this all written out but my queries are using wmic which won't work unless the user is an admin and I have to run the script as a user.
Works great if you are an admin.
echo **********************************************************************
echo * 487 - CAN-2430 check *
echo **********************************************************************
verify >nul
echo %date%,%time%,errorlevel: %errorlevel%,487 Check for 2430: Begin >> %TMP%\altirislog\printers.log
wmic PRINTER get name /format:list | findstr /i "CAN-2430" >> %TMP%\altirislog\printers.log 2>&1
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 GOTO :2430
echo %date%,%time%,errorlevel: %errorlevel%,487 Check for 2430: End - Not Found >> %TMP%\altirislog\printers.log
verify >nul
:2430
echo **********************************************************************
echo * 2430 - 2430 Printer Found *
echo **********************************************************************
echo %date%,%time%,errorlevel: %errorlevel%,487 Check for 2430: End - Found >> %TMP%\altirislog\printers.log
echo %date%,%time%,errorlevel: %errorlevel%,2430: BEGIN >> %TMP%\altirislog\printers.log
:2430i
echo **********************************************************************
echo * 2430i - Install HOM-HP2430 *
echo **********************************************************************
echo %date%,%time%,errorlevel: %errorlevel%,2430i install: Begin >> %TMP%\altirislog\printers.log
start /wait \\hom-fs1\hom-hp2430
echo %date%,%time%,errorlevel: %errorlevel%,2430i install: End >> %TMP%\altirislog\printers.log
echo **********************************************************************
echo * 2430i - Check for Default Printer *
echo **********************************************************************
echo %date%,%time%,errorlevel: %errorlevel%,2430i Default Check: Begin >> %TMP%\altirislog\printers.log
wmic PRINTER where "default='true'" get name /format:list | findstr /i "CAN-2430"
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 GOTO :2430d
echo %date%,%time%,errorlevel: %errorlevel%,2430i Default Check: End - NOT FOUND >> %TMP%\altirislog\printers.log
verify >nul
GOTO :2430z
:2430d
echo **********************************************************************
echo * 2430d - Set Default Printer *
echo **********************************************************************
echo %date%,%time%,errorlevel: %errorlevel%,2430i Default Check: End - FOUND >> %TMP%\altirislog\printers.log
echo %date%,%time%,errorlevel: %errorlevel%,2430d Set Default : Begin >> %TMP%\altirislog\printers.log
rundll32 printui.dll,PrintUIEntry /y /n\\hom-fs1\hom-hp2430
echo %date%,%time%,errorlevel: %errorlevel%,2430d Set Default : End >> %TMP%\altirislog\printers.log
:2430z
echo **********************************************************************
echo * 2430z - Remove old Printer *
echo **********************************************************************
echo %date%,%time%,errorlevel: %errorlevel%,2430z Remove old Printer : Begin >> %TMP%\altirislog\printers.log
rundll32 printui.dll,PrintUIEntry /dn /n\\can-dc1\can-2430
echo %date%,%time%,errorlevel: %errorlevel%,2430z Remove old Printer : End >> %TMP%\altirislog\printers.log
echo %date%,%time%,errorlevel: %errorlevel%,2430: END >> %TMP%\altirislog\printers.log
verify >nul
GOTO :488