Отключить / включить драйверы USB без перезагрузки с C ++ / C # / PowerShell в Windows 7

Мне нужен простой способ ретроактивно отключить / включить все USB-устройства в Windows 7 с помощью сценария c ++ / c # / powershell БЕЗ перезагрузки компьютера.

Я понимаю, что изменение объекта групповой политики является вариантом, но я не могу найти какую-либо реализацию, которая делает это без перезагрузки.

Пожалуйста, объясните ваше решение подробно, я новичок в администрировании на Windows.

1

Решение

Используя PowerShell, вы можете сделать это, как показано ниже

Откройте реестр и перейдите к следующему разделу реестра и посмотрите, какое значение имеет в нем ключ запуска reg. Если установлено значение «3», это означает, что USB-накопитель включен на ПК.

Get-ItemProperty  "HKLM:\SYSTEM\CurrentControlSet\services\USBSTOR" -name startPSPath       : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\USBSTOR
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services
PSChildName  : USBSTOR
PSDrive      : HKLM
PSProvider   : Microsoft.PowerShell.Core\Registry
Start        : 3

Если вы хотите отключить его, вы можете установить значение 4, используя следующую команду

Set-ItemProperty  "HKLM:\SYSTEM\CurrentControlSet\services\USBSTOR" -name start -Value 4

Если я снова проверю значение ключа reg, то вижу, что оно было изменено на 4, и если я подключу USB-накопитель, оно не будет обнаружено

Get-ItemProperty  "HKLM:\SYSTEM\CurrentControlSet\services\USBSTOR" -name startPSPath       : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\USBSTOR
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services
PSChildName  : USBSTOR
PSDrive      : HKLM
PSProvider   : Microsoft.PowerShell.Core\Registry
Start        : 4
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]