Export Printers to a list

All,
I have a windows 2000 machine that has about 200 printers installed on it.  I would like to export the printer information from the machine to a spreadsheet.  The printer name and IP address would be helpful, but really the printer name is all I need on the list.  Please help.  This is an urgent request since we are taking the printer server down for some maintance
dbguy2626Asked:
Who is Participating?
 
nbraaschConnect With a Mentor Commented:
put this in a file called "printers.vbs", put it at c:\printers.vbs, then open a command prompt on the machine and type "cscript c:\printers.vbs > c:\printers.txt"  Then press enter, wait for it to finish running, then open the c:\printers.txt file to confirm you have your info in there.
0
 
dbguy2626Author Commented:
I saw this script online but wouldnt know how to modify it to do what I want it to do.  Basically all this information is great.  how do I modify this script to run on the machine and output to a file>?

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colPorts =  objWMIService.ExecQuery _
    ("Select * from Win32_TCPIPPrinterPort")

For Each objPort in colPorts
    Wscript.Echo "Description: " & objPort.Description
    Wscript.Echo "Host Address: " & objPort.HostAddress
    Wscript.Echo "Name: " & objPort.Name
    Wscript.Echo "Port Number: " & objPort.PortNumber
    Wscript.Echo "Protocol: " & objPort.Protocol
    Wscript.Echo "SNMP Community: " & objPort.SNMPCommunity
    Wscript.Echo "SNMP Dev Index: " & objPort.SnMPDevIndex
    Wscript.Echo "SNMP Enabled: " & objPort.SNMPEnabled
Next
0
 
GW_TechnoCommented:
I tried to use the script above to accomplish the same task and all it did was display the IP address to the screen.  The Txt file was empty.   What can I add to the file to have it collect the shared printer's sharenames?
0
Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
preshomescCommented:
I also tried the script and the command line ... not sure what GW_Techno did but mine created the printer.txt file as advertized ...

Problem is, as GW_Techno observed, ONLY the IP address was captured and recorded ... sample of output below:

Description:
Host Address:
Name: IP_192.168.1.121
Port Number:
Protocol:
SNMP Community:
SNMP Dev Index:
SNMP Enabled:
Description:
Host Address:
Name: IP_192.168.1.122
Port Number:
Protocol:
SNMP Community:
SNMP Dev Index:
SNMP Enabled:
Description:
Host Address:
Name: IP_192.168.1.123
Port Number:
Protocol:
SNMP Community:
SNMP Dev Index:
SNMP Enabled:
Description:
Host Address:
Name: IP_192.168.1.124
Port Number:
Protocol:
SNMP Community:
SNMP Dev Index:
SNMP Enabled:
Description:
Host Address:
Name: IP_192.168.1.125
Port Number:
Protocol:
SNMP Community:
SNMP Dev Index:
SNMP Enabled:

I suspect the SQL used is incomplete.

Could someone complete the script for me, please.
0
 
forcecorpCommented:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colItems =  objWMIService.ExecQuery _
    ("Select * from Win32_Printer")

For Each objItem In colItems
Wscript.Echo "Description: " & objItem.Description
Wscript.Echo "Printer: " & objItem.DeviceID
Wscript.Echo "Driver Name: " & objItem.DriverName
Wscript.Echo "Port Name: " & objItem.PortName
Wscript.Echo "ShareName: " & objItem.ShareName
Wscript.Echo "Location: " & objItem.Location
Wscript.Echo
Wscript.Echo
Next
0
 
preshomescCommented:
Thank you FORCECORP!

THAT was the correct answer!
0
 
GW_TechnoCommented:
Thanks FORCECORP!  That worked perfectly
0
 
CheckeredCommented:
This script was very useful to me today.  Thanks to all who contributed!
0
 
IMD_IS_AdminsCommented:
Hello,
Thanks for the script, very useful and simple.
Here is a customized version that puts all on 1 line for each printer... easy to re-use in Excel (semicolon separated):

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colItems =  objWMIService.ExecQuery _
    ("Select * from Win32_Printer")

For Each objItem In colItems
Wscript.Echo "Description:" & ";" & objItem.Description & ";" & "Printer:" & ";" & objItem.DeviceID & ";" & "Driver Name:" & ";" & objItem.DriverName & ";" & "Port Name:" & ";" & objItem.PortName & ";" & "ShareName:" & ";" & objItem.ShareName & ";" & "Location:" & ";" & objItem.Location
Next

Is there a way to retrieve also other information, like some settings (trays, duplex,...) ?

Cheers

Richard
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.