Installing the Agent (beta) with PDQ Deploy

Hi there! Today I would like to show you my approach to installing the PDQ Inventory Agent through PDQ Deploy. First, a quick disclaimer: the Agent is still new and has some scaling issues. Deploy it slowly and monitor the performance of your Inventory instance. If you start to notice issues, uninstall a few Agents.

In order for this deployment method to work, your targets need to be scanned by Inventory first. I’m assuming if you can deploy to them, you can scan them. Scanned computers can use the generic config file installation method. This is a file that Inventory automatically generates and contains information like the Server’s hostname, port, and public key. If the target hasn’t been scanned you have to generate a specific config file for each target, hence why you can’t easily build a package for that.

Here is the XML file for the package I built. Download that as an XML file, then import it into Deploy. In the next section, I will go over the specifics of this package and some things you may want/need to change.

Installing the Agent with PDQ Deploy


  • Copy Mode: This is set to Push because the paths to the files have to be non-UNC in order to be generic. You can change this to Pull if you change your paths to UNC format. Just don’t move these files into your Repository, they won’t automatically update when you update Inventory.

Step 1

  • Install File: If you have Inventory installed in a non-default location, you will need to edit this.
  • Parameters: /S is “silent” and /Config points to the config file that is copied from Additional Files below.
  • Additional Files: This is the path to the generic config file. If you have Inventory installed in a non-default location, you will need to edit this.

That’s how I install the Inventory Agent with Deploy. Just remember to be careful how many Agents you install. If you have any questions or run into any issues make sure to leave a comment below.

Buy PDQ Deploy

6 responses

  • When I install agents via this method, about 70% of the time the installation is successful and I can see the PDQ Inventory Agent in the application list on the target but the agent status is still Not Installed. Sometimes it takes several successful installs before it will start working, if at all. I’ve checked out one of these machines and everything matches a known working machine (config files in Program Files are identical, PDQ Agent service and process are both running).

    When I install via the right click menu in Inventory it works every time. Is there a way to make the PDQ Deploy package this consistent?

  • 1) Have you scanned these targets prior to deploying this package?
    2) Is the “PDQ Inventory Agent” service running on the misbehaving targets?
    3) Are there any “PDQ Inventory Agent” errors in the Event Log?
    4) Inventory 16.6 will be out soon and may behave better.
    5) You can use this script on the misbehaving targets to check critical settings such as the Server Host Name. Run “Check PDQ Inventory Agent.bat” as an Administrator.

  • Colby:
    1) Yes
    2) Yes
    3) Yes. I’m seeing two each time the agent is reinstalled: “The system cannot find the path specified” & “Key not valid for use in specified state”. I can provide the exported events if needed.
    4) OK I hope so
    5) Ran it and everything checks out.


  • Aha! I think it’s that “Key not valid for use in specified state” error. It looks like that should be fixed in 16.6 and 17.1.

  • I am having the same issue as described by Dave with two apparent differences

    1. The event log shows a successful installation of the Agent after deploying via PDQ Deploy
    2. I am 100% unsuccessful getting the Agent to show as “installed” or show a status after deploying via PDQ Deploy

    I am deploying the 17.1 version of the agent from PDQ Deploy using the AA provided .xml package

    I should note that deployment via PDQ Inventory has a 100% success rate.

Your email address will not be published.

Your Name

This site uses Akismet to reduce spam. Learn how your comment data is processed.