@CLS @ECHO OFF FOR /F "skip=1 tokens=*" %%x IN ('REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers" ^| FIND "["') DO CALL :REGREAD "%%x" ENDLOCAL GOTO:EOF :REGREAD SET P=%1 SET P=%P:[=% SET P=%P:]=% SET P=%P:"=% ECHO. FOR /F "tokens=2* delims= " %%x IN ('REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers\%P%\Name"') DO ECHO Name: %%y FOR /F "tokens=2* delims= " %%x IN ('REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers\%P%\Port"') DO ECHO Port: %%y