C# 在C中禁用USB端口访问智能手机内存(无组策略)#

C# 在C中禁用USB端口访问智能手机内存(无组策略)#,c#,windows,usb,registry,smartphone,C#,Windows,Usb,Registry,Smartphone,您好,我目前正在开发一个应用程序,用C语言编程禁用/启用USB端口# 我找到了下面的代码片段来启用/禁用USB端口。使用普通的U盘工作正常。但不幸的是,它没有禁用智能手机的存储卡访问。 //disable USB storage... Microsoft.Win32.Registry.SetValue(@"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR", "Start", 4, Microsoft.Win32.Regis

您好,我目前正在开发一个应用程序,用C语言编程禁用/启用USB端口#

我找到了下面的代码片段来启用/禁用USB端口。使用普通的U盘工作正常。但不幸的是,它没有禁用智能手机的存储卡访问。

//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);

我在谷歌上搜索了一个更好的解决方案来解决这个问题。我发现了一些使用集团策略实现同样目标的建议。但我的应用程序并不打算使用组策略。因此,是否有任何解决方案可用,如编辑任何注册表项以实现智能手机的内存访问限制程序?

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

对于禁用USB端口以访问智能手机存储器和记忆棒:

在注册表项HKEY\U LOCAL\U MACHINE\SOFTWARE\Policys\Microsoft\Windows\RemovableStorageDevices中创建了DWORD参数Deny\u All,其值为00000001

要允许访问,请执行以下操作:

在注册表项HKEY\U LOCAL\U MACHINE\SOFTWARE\Policys\Microsoft\Windows\RemovableStorageDevices中创建了DWORD参数Deny\u All,值为00000000

注意:-要更改访问权限,我们必须重新启动电脑

C#代码片段如下:

要允许访问,请执行以下操作:

Registry.SetValue(@“HKEY_LOCAL_MACHINE\SOFTWARE\Policys\Microsoft\Windows\RemovableStorageDevices”,“拒绝所有”,0,RegistryValueKind.DWord)

要限制访问,请执行以下操作:


Registry.SetValue(@“HKEY_LOCAL_MACHINE\SOFTWARE\Policys\Microsoft\Windows\RemovableStorageDevices”、“拒绝所有”,1,RegistryValueKind.DWord)

看起来你需要重新启动。看看这里。