我需要一种简单的方法来通过 c++/c#/powershell 脚本追溯禁用/启用 Windows 7 中的所有 USB 设备,而无需重新启动机器。
我知道更改 GPO 是一种选择,但我似乎找不到任何无需重新启动即可执行此操作的实现。
请详细解释您的解决方案,我是 Windows 管理的新手。
我需要一种简单的方法来通过 c++/c#/powershell 脚本追溯禁用/启用 Windows 7 中的所有 USB 设备,而无需重新启动机器。
我知道更改 GPO 是一种选择,但我似乎找不到任何无需重新启动即可执行此操作的实现。
请详细解释您的解决方案,我是 Windows 管理的新手。
使用 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