Finding installed Network Printers
I've been trying to figure out how to find the installed network printers on a computer, but I'm only seeing the ability to find [locally installed] printers which doesn't seem to find a printer if it was installed from a print server...
How do I go about getting that information back?
PDQ Inventory doesn't collect printers from print servers. It only grabs printers that are local or have ports defined.
Well, I sort of found a way to separate the printers by setting a collection of computers that have a hardware ID of 'printer' and a name that reference the print server, but I was hoping there would be a cleaner way. It doesn't seem to bring back all of the systems that have a printer installed, but it did bring back most of them...
Any reason PDQ Inventory doesn't detect installed printers on a workstation when it is added FROM a print server? Technically it is a local driver install...
Do you see any Print Queues under Hardware on a computer window? The values you want may be there.
Right, that's the value that I'm bringing back, but I just looked for 'Print' to open up the variables. I think I found out why it didn't bring back all of the systems. Some of the systems didn't scan due to permission issues.
Print Queues (under the Hardware window/table) are only available in Windows 8 and higher. You won't see them for your Windows 7 computers.
AH!!!! Haha that would make sense as to why they aren't coming back as I was expecting.
Thanks for your help! Your tool is friggin' awesome! I'm playing around with the free version and working on building a bunch of use case scenarios so that I can convince my boss to buy both PDQ Inventory and PDQ Deploy!
Thanks for the kind words. Please let us know if we can help with anything else.
You are just gonna love me! I have spent the past week messing with detecting and adding TCP/IP printers. I found where the ports live in the registry, so we can have some fun detecting IP printers (whether by IP or hostname).
set up a scan profile that scans the registry keys starting in
HKLM\System\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports
and get all subkeys.
Create a dynamic collection
match: Registry - Value Name - Contains - HostName
match: Registry - Value - Matches Expression - 'regular expression matching your ports'
You can even select multiple expressions to match (IP range, host name similarities, etc...)
I have been able to create a dynamic collection to let me know ports that exist as IP addresses and push hostname updates to them. I also created a report that lets me see the IP based printers installed on everyone's system.
That is great, thank you!!!
Looks like I need to upgrade to at least PRO to scan registry keys though.
@Dwreese - I found an issue with the Registry location you are using. Most printers are installed on a user-basis so I'm having to use:
edit: Unfortunately that doesn't seem to work correctly either since it only applies to the user that is logged into the machine. I think this goes back to what Shane said about Windows 7 not reporting on this feature...
I'm working on some PowerShell scripts to [hopefully] help out with this problem...
Where u able to create some powershell scripts to do this function? I have an request to find all printers and provide list.
Any update on this? Getting list of network printers installed on the user's PC will be very useful.
In Powershell, there's a "Get-Printer" command that lists all printers installed on the computer. Don't want to mess up PDQ Inventory - but I saw there's a "TOOLS" section. Can this Get-Printer PS command be added in the Tools library/menu and ran as part of the scan/collection?
I must not be doing this right, because I don't get anything.
Please sign in to leave a comment.