Отключить USB-порт от доступа к памяти смартфона (без групповой политики) в C# - PullRequest
0 голосов
/ 16 марта 2020

Привет. В настоящее время я работаю над приложением, чтобы программно отключить / включить USB-порт в C#

. Я нашел следующий фрагмент кода для включения / отключения USB-порта. Работает нормально с обычными флешками. Но, к сожалению, это не отключает доступ к карте памяти смартфона.

//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#?

1 Ответ

0 голосов
/ 21 марта 2020

Я мог бы решить эту проблему путем изменения значения реестра. Подробности приведены ниже:

Для отключения USB-порта от доступа к памяти смартфона, а также к картам памяти:

создан параметр DWORD Deny_All со значением 00000001 в реестре ключ HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ RemovableStorageDevices .

для разрешения доступа:

создано DWORD параметр Deny_All со значением 00000000 в реестре ключ HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ RemovableStorageDevices .

Примечание: - Чтобы изменить разрешение доступа , нам нужно перезапустить P C

Фрагмент кода C# выглядит следующим образом ,

для разрешения доступа:

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

Для ограничения доступа:

Registry.Set Значение (@ "HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows \ RemovableStorageDevices", "Deny_All", 1, RegistryValueKind.DWord);

...