在 C# 中禁用 USB 端口访问 smart-phone 内存(无组策略)

Disable USB port from access smart-phone memory (without Group policy) in C#

您好,我目前正在使用 C#

以编程方式开发 Disable/Enable USB 端口的应用程序

我找到了以下 Enable/disable USB 端口的代码片段。它与普通 USB 记忆棒一起工作正常。但不幸的是它没有禁用 Smartphone 的存储卡访问。

//disable USB storage...
Microsoft.Win32.Registry.SetValue(@"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR", "Start", 4, Microsoft.Win32.RegistryValueKind.DWord); 

//enable USB storage...
Microsoft.Win32.Registry.SetValue(@"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR", "Start", 3, Microsoft.Win32.RegistryValueKind.DWord);

我已经用谷歌搜索了一个更好的解决方案来解决这个问题。我发现了一些使用组策略来实现相同目的的建议。但是我的应用程序无意使用组策略。那么是否有任何可用的解决方案,例如 编辑任何注册表项 以在 c# 中以编程方式实现智能 phone 的内存访问限制?

我可以通过更改注册表值来解决这个问题。详情如下,

要禁止 USB 端口访问 Smart-phone 内存和记忆棒:

创建了 DWORD 参数 Deny_All,在注册表 键 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\RemovableStorageDevices.

允许访问:

创建了 DWORD 参数 Deny_All,在注册表 键 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\RemovableStorageDevices.

注意:- 要使访问权限更改生效,我们必须重新启动 PC

C#代码片段如下,

允许访问:

Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\RemovableStorageDevices", "Deny_All", 0, RegistryValueKind.DWord);

限制访问:

Registry.SetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\RemovableStorageDevices", "Deny_All", 1, RegistryValueKind.DWord);