1

我需要一种简单的方法来通过 c++/c#/powershell 脚本追溯禁用/启用 Windows 7 中的所有 USB 设备,而无需重新启动机器。

我知道更改 GPO 是一种选择,但我似乎找不到任何无需重新启动即可执行此操作的实现。

请详细解释您的解决方案,我是 Windows 管理的新手。

4

1 回答 1

1

使用 PowerShell 你可以这样做

打开注册表并导航到以下注册表项并查看 reg 项 start 在其中具有什么值如果它设置为“3”意味着在 PC 上启用了 USB 驱动器。

Get-ItemProperty  "HKLM:\SYSTEM\CurrentControlSet\services\USBSTOR" -name start


PSPath       : 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 start


PSPath       : 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
于 2012-11-12T13:03:59.507 回答