Finding installed Network Printers

Comments

15 comments

  • Dwreese

    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.

    1
    Comment actions Permalink
  • Shane Corellian

    Hi Shane,

    PDQ Inventory doesn't collect printers from print servers. It only grabs printers that are local or have ports defined.

     

    0
    Comment actions Permalink
  • Shane Johnson

    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... 

    0
    Comment actions Permalink
  • Shane Corellian

    Do you see any Print Queues under Hardware on a computer window? The values you want may be there.

    0
    Comment actions Permalink
  • Shane Johnson

    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. 

     

     

    0
    Comment actions Permalink
  • Shane Corellian

    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.

    0
    Comment actions Permalink
  • Shane Johnson

    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! 

    :) 

    0
    Comment actions Permalink
  • Shane Corellian

    Thanks for the kind words. Please let us know if we can help with anything else.

    0
    Comment actions Permalink
  • Shane Johnson

    That is great, thank you!!!

    0
    Comment actions Permalink
  • Shane Johnson

    Looks like I need to upgrade to at least PRO to scan registry keys though.

    0
    Comment actions Permalink
  • Shane Johnson

    @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: 

    HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\PrinterPorts

     

    0
    Comment actions Permalink
  • Shane Johnson

    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...

    0
    Comment actions Permalink
  • Trav A. Tonsfeldt

    Where u able to create some powershell scripts to do this function? I have an request to find all printers and provide list.

    0
    Comment actions Permalink
  • Allan Oh

    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?

     

    Thanks.

    0
    Comment actions Permalink
  • Brent Green

    I must not be doing this right, because I don't get anything.

    0
    Comment actions Permalink

Please sign in to leave a comment.