我需要一种简单的方法来通过c ++ / c#/ powershell脚本追溯性地禁用/启用Windows 7中的所有USB设备,而无需重新启动计算机。
据我所知,更改GPO是一种选择,但我似乎无法找到任何执行此操作而无需重新启动。
请详细解释您的解决方案,我是Windows上的管理新手。
答案 0 :(得分:1)
使用PowerShell,您可以按照以下方式执行此操作
打开注册表并导航到以下注册表项,并查看reg键启动中的值。如果设置为“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
如果要禁用它,可以使用以下命令
将值设置为4Set-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