# Install Driver

> Installs a driver using PnPUtil. You can specify either a single .inf file or a directory containing multiple .inf files.

Source: https://docs.capaone.com/capaone/application-manager/powerbricks/bricks/install-driver/  
Product: CapaOne — a separate CapaSystems product; do not apply this page to any other.

Installs a driver using PnPUtil. You can specify either a single .inf file or a directory containing multiple .inf files. If a directory is specified, all .inf files within it will be installed recursively.

## Parameters

#### Driver Path
*Required*

Specifies the full path to the driver .inf file or a directory containing driver files. If a directory is specified, all .inf files within it will be installed recursively.\\nSample: $PackageRoot\\driver.inf or $PackageRoot \\nRemember to include the [Download Content] PowerBrick when using $PackageRoot.

#### Return Code Handles
*Required*

Specify how each return code from the process is handled. Success continues the job, Failure stops the job as failed with that return code, and Retry Execution Later stops the job and runs it again later. Any return code not in the list stops the job as failed. Allowed values: `Success`, `Failure`, `Retry Execution Later`.

## Details

- **Category:** Installer
- **Brick ID:** `Driver-Install`

## Raw JSON definition

```json
{
  "category": "installer",
  "description": "Installs a driver using PnPUtil. You can specify either a single .inf file or a directory containing multiple .inf files. If a directory is specified, all .inf files within it will be installed recursively.",
  "developerVendor": "CapaSystems A/S",
  "displayName": null,
  "id": "Driver-Install",
  "name": "Install Driver",
  "parameters": [
    {
      "allowManualInput": false,
      "defaultValue": "",
      "defaultValueObject": null,
      "description": "Specifies the full path to the driver .inf file or a directory containing driver files. If a directory is specified, all .inf files within it will be installed recursively.\\nSample: $PackageRoot\\driver.inf or $PackageRoot \\nRemember to include the [Download Content] PowerBrick when using $PackageRoot.",
      "id": "DriverPath",
      "name": "Driver Path",
      "regExValidation": "",
      "required": true,
      "type": "TextBox",
      "value": null,
      "values": [],
      "valuesObject": null
    },
    {
      "allowManualInput": false,
      "defaultValue": [
        {
          "code": 0,
          "option": {
            "name": "Success",
            "id": "success"
          }
        },
        {
          "code": 3010,
          "option": {
            "name": "Success",
            "id": "success"
          }
        },
        {
          "code": 1641,
          "option": {
            "name": "Success",
            "id": "success"
          }
        }
      ],
      "defaultValueObject": null,
      "description": "Specify how each return code from the process is handled. Success continues the job, Failure stops the job as failed with that return code, and Retry Execution Later stops the job and runs it again later. Any return code not in the list stops the job as failed.",
      "id": "Codehandle",
      "name": "Return Code Handles",
      "regExValidation": "",
      "required": true,
      "type": "CodeHandles",
      "value": null,
      "values": [],
      "valuesObject": [
        {
          "id": "success",
          "name": "Success"
        },
        {
          "id": "failure",
          "name": "Failure"
        },
        {
          "id": "retrylater",
          "name": "Retry Execution Later"
        }
      ]
    }
  ],
  "powershell": {
    "base64Encoded": true,
    "function": "ZnVuY3Rpb2..."
  },
  "type": "powerbrick",
  "version": "2026.10.8.2"
}
```
