3

I need to create a list of computers on the network that will also tell me what printers are installed on each machine. I would then need to further filter only those that are Local drivers, and further filter to locally attached printers (either USB or Parrallel)

All the computers are part of Microsoft ADS 2003 mixed mode. Clients range from Win2k to Win7.

Is it possible to create a script? Are there free tools to do this? Are there paid for tools that can collect this type info?

an additional concern includes how often I need to scan the network for changes etc...

2 Answers 2

2

This is only a partial solution, as it won't tell you anything about the drivers. I collect printer information via the logon script (VBS). The relevant part is:

objOutputFile.WriteLine "Printers:"
objOutputFile.WriteLine "========="
set objPrinters = objNetwork.EnumPrinterConnections

For i = 0 to objPrinters.Count - 1 Step 2
    objOutputFile.WriteLine "Port " & objPrinters.Item(i) & " = " & objPrinters.Item(i+1)
Next
set objPrinters = Nothing

While Local printers can be identified by the port. Works on XP, Server 2003 and Win7 and I have no reason to think it won't work on every "NT" based version of Windows.

0

At a previous job, I used parts of an open source tool named Open-AudIT to populate a database of all the Windows PC's on the LAN. Open-AudIT uses WMI to inventory Windows hardware and software, so it's quite thorough. I'm quite certain it can do what you've asked for.

Just one caveat, though. It has been a few years since I used it, and at the time, there were still some rough edges in the software. The upside is that it is open source, and I was able to get it to do what I needed with only a little bit of code tweaking. It looks like the project is still alive, so it has probably improved since then.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .