Windows Device Console (Devcon.exe)

DevCon (Devcon.exe), the Device Console, is a command-line tool that displays detailed information about devices on computers running Windows. You can use DevCon to enable, disable, install, configure, and remove devices.

Important

PnPUtil ships with every release of Windows and makes use of the most reliable and secure APIs available and its use is recommended. For more information on using PnPutil instead of devcon, see Replacing DevCon.

Where can I download DevCon?

DevCon (Devcon.exe) is included when you install the WDK, Visual Studio, and the Windows SDK for desktop apps. For information about downloading the kits, see Windows Hardware Downloads.

  • Windows Driver Kit (WDK) and Windows Driver Kit (WDK) X.Y version (installation path)
  • %WindowsSdkDir%\tools\X.Y\x64\devcon.exe
  • %WindowsSdkDir%\tools\X.Y\x86\devcon.exe
  • %WindowsSdkDir%\tools\X.Y\arm\devcon.exe

Note

The Visual Studio environment variable, %WindowsSdkDir%, represents the path to the Windows kits directory where the kits are installed, for example, C:\Program Files (x86)\Windows Kits\10.

In this section

What you can do with DevCon

Windows driver developers and testers can use DevCon to verify that a driver is installed and configured correctly, including the proper INF files, driver stack, driver files, and driver package. You can also use the DevCon commands (enable, disable, install, start, stop, and continue) in scripts to test the driver.

DevCon is a command-line tool that performs device management functions on local computers.

Devcon features include:

  • Display driver and device info DevCon can display the following properties of drivers and devices on local computers:

    • Hardware IDs, compatible IDs, and device instance IDs. These identifiers are described in detail in Device Identification Strings.
    • Device setup classes
    • The devices in a device setup class
    • INF files and device driver files
    • Details of driver packages
    • Hardware resources
    • Device status
    • Expected driver stack
    • Third-party driver packages in the driver store
  • Search for devices DevCon can search for devices on a local computer by hardware ID, device instance ID, or device setup class.

  • Change device settings DevCon can change the status or configuration of Plug and Play (PnP) devices on the local computer in the following ways:

    • Enable a device
    • Disable a device
    • Update drivers (interactive and noninteractive)
    • Install a device (create a devnode and install software)
    • Remove a device from the device tree and delete its device stack
    • Rescan for Plug and Play devices
    • Add, delete, and reorder the hardware IDs of root-enumerated devices
    • Change the upper and lower filter drivers for a device setup class
    • Add and delete third-party driver packages from the driver store
  • Restart the device or computer DevCon can restart a local device, reboot the local system on demand, or reboot the local system if required for another DevCon operation.

DevCon source code

The DevCon source code is also available so that you can examine the methods that DevCon uses to retrieve and change setup and configuration data. DevCon illustrates the use of general setup functions, device installation functions, and PnP Configuration Manager functions. The source code for the Device Console (DevCon) Tool is available in the Windows driver samples repository on GitHub.