Using RMTShare.exe, I have scripted ListPrinter.bat to report the shared printers that are installed on a specified computer.

The syntax for using ListPrinter.bat is:

ListPrinter NetBIOS_Computer_Name

Where NetBIOS_Computer_Name is the NetBIOS computer name of the 'server' whose printers you wish to enumerate.

Example:

<b>listprinter JSI001</b>

returns:

"\\JSI001\ZFax","ZFax"
"\\JSI001\HP2250","HP Business Inkjet 2250 (PCL5C)"
"\\JSI001\HP2250T1","HP Business Inkjet 2250 Tray 1 (PCL5C)"
"\\JSI001\HPOffice","HP Officejet 6200 series"
ListPrinter.bat contains:
@echo off
if \{%1\}==\{\} @echo Syntax ListPrinters Computer&goto :EOF
setlocal ENABLEDELAYEDEXPANSION
set c1=%1
set c1=%c1:"=%
set c1=%c1:\=%
set c1=\\%c1:\=%
set b1=FIND /V ":"
set b2=FIND /V "The command completed successfully."
set b3=FIND "Path"
for /f "Skip=4 Tokens=*" %%a in ('rmtshare %c1%^|%b1%^|%b2%') do (
 set line=%%a
 if "!line:~13,1!" NEQ " " call :c1prt !line:~0,12!
)
endlocal
goto :EOF
:c1Prt
for /f "Tokens=1*" %%b in ('rmtshare %c1%\%1^|%b3%') do (
 set work=%%c
 set work=!work:,LocalsplOnly=!
 @echo "%c1%\%1","!work!"
)