Включить / отключить драйвер устройства через командную строку
Я выполнил поиск в Google и нашел такие инструменты, как devcon и devmanview, но они полезны только для отключения / включения устройства, а не драйвера устройства. Что я хочу сделать, это иметь возможность отключить / включить определенный драйвер устройства через командную строку. Кто-нибудь знает какой-нибудь инструмент, который может помочь мне сделать это?
В моем случае я действительно хочу отключить / включить драйвер запоминающего устройства Nvme Mass.
Обновление - я попытался использовать предложенный sc.exe, но мне не удалось остановить драйвер. Любая помощь?
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.
5 ответов
Вы можете использовать sc.exe
Утилита для этого.
sc query type= driver | findstr WHAT_IM_LOOKING_FOR
Если вы найдете то, что ищете, вы можете остановить водителя с помощью:
sc stop EXACT_DRIVER_NAME_AS_LISTED_BY_QUERY
Очевидно, что для этого вам понадобится оболочка с правами администратора. Если вы хотите автоматизировать это при входе в систему, вы можете создать пакетный файл и установить его в качестве администратора с помощью планировщика задач. Установленные задачи, которые требуют прав администратора, но были установлены администратором, не будут запрашивать привилегии при запуске, но будут предоставлены им автоматически.
Мне удалось установить бесплатную утилиту devcon.exe из комплекта драйверов Windows 10 от Microsoft.
Эта утилита позволит вам включить / отключить все, что вы видите в диспетчере драйверов. В моем случае я обнаружил, что звуковая шина высокого разрешения от Microsoft в Windows 10 была написана плохо и всегда занимала 10% процессорного времени. Я отключил это с:
devcon.exe отключить PCI\VEN_8086"&"DEV_9D71*
Вы должны запустить его как администратор, поэтому я поместил его в файл.bat и сделал для него ярлык "Запуск от имени администратора".
pnputil
включен (сейчас?) в Win10.
pnputil /disable-device "PCI/VEN_..."
Найдите путь к экземпляру в диспетчере устройств и укажите его здесь.
pnputil /enable-device "PCI/VEN_..."
Запуск от имени администратора.
Я могу остановить водителя
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
Но соответствующий графический интерфейс не обновляется в devmgmt.msc. Обычно, когда я отключаю драйвер в диспетчере устройств, появляется стрелка вниз на значке драйвера, чтобы подтвердить, что драйвер отключен.
с командной строкой sc стрелка вниз не появляется