15

I did a google search and found tools like devcon and devmanview but they are only useful to disable/enable the device not the device driver. What I want to do is be able to disable/enable a particular device driver via command line. Anybody know any tool which can help me do this?

In my case, I actually want to disable/enable a Nvme Mass storage device driver.

Update- I tried using the sc.exe suggested, but I didn't succeed in stopping the driver. Any help?

    C:\Users\Administrator>sc query nvme
    SERVICE_NAME: nvme
    TYPE               : 1  KERNEL_DRIVER
    STATE              : 4  RUNNING
                            (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
    WIN32_EXIT_CODE    : 0  (0x0)
    SERVICE_EXIT_CODE  : 0  (0x0)
    CHECKPOINT         : 0x0
    WAIT_HINT          : 0x0

    C:\Users\Administrator>sc stop nvme [SC] ControlService FAILED 1052:
    The requested control is not valid for this service.
kate
  • 163

5 Answers5

5

You can use the sc.exe utility for this.

sc query type= driver | findstr WHAT_IM_LOOKING_FOR

If you find what you're looking for, you can at stop the driver with:

sc stop EXACT_DRIVER_NAME_AS_LISTED_BY_QUERY

Obviously you'll need a shell with administrator privileges to do this. If you're looking to automate this at login, you can make a batch file and install it as an administrator with task scheduler. Tasks installed that require administrator privileges, but were installed by an administrator, will not prompt for privileges at startup, but will be granted them automatically.

3

pnputil is (now?) included with Win10.

pnputil /disable-device "PCI/VEN_..."

Look up the instance path in Device Manager and specify it here.

pnputil /enable-device "PCI/VEN_..."

Run as admin.

J. Scott Elblein
  • 541
  • 1
  • 6
  • 21
2

I was able to install the free devcon.exe utility inside the Windows 10 driver kit from Microsoft.

This utility will let you enable / disable whatever you see in Driver Manager; in my case, I found that the "High Definition Audio Bus" from Microsoft on Windows 10 was badly written and was consuming 10% of CPU, always.

I disabled it with:

devcon.exe disable PCI\VEN_8086"&"DEV_9D71*

You have to run this as administrator, so I put this into a .bat file, and made a 'run as administrator' shortcut for it.

J. Scott Elblein
  • 541
  • 1
  • 6
  • 21
0

i'm able to stop the driver

C:\Windows\system32>sc stop kmd
SERVICE_NAME: kmd
        TYPE               : 1  KERNEL_DRIVER
        STATE              : 3  STOP_PENDING
                                (STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

But the corresponding GUI is not updated in devmgmt.msc Usually when i disable the driver in Device Managenement, down arrow on the driver icon appears to confirm the driver is disabled.

with the command line sc, the down arrow does not appear

corning
  • 101
0

Try C:\> NET STOP drivername .