2010-10-20 6 views
1

Я хочу заблокировать USB на основе тома с помощью C#. Например, я хочу заблокировать USB-накопитель, если емкость превышает 8 ГБ.Блок USB, основанный на объеме/емкости

Посмотрите, есть способ заблокировать USB на ПК с помощью реестра. но это сделает USB непокрытым, поэтому я не могу получить информацию о громкости.

Я хочу это сделать Если моя клиентская программа работает на какой-либо машине, и я установил ограничение на то, что емкость USB> = 8 ГБ должна быть ограничена, поэтому мой код на C# должен безопасно удалить USB и теперь должен отображать любой воздушный шар, я имею в виду тихонько удалите его.

+0

Этот вопрос нуждается в еще большем контексте. Можете ли вы пересмотреть свой вопрос, чтобы объяснить, что делает программа, и где в нее вставляется USB-блокировка? –

+0

Метод реестра сделает USB непонятным, поэтому я не могу получить информацию о громкости. –

+0

Какой метод реестра вы используете? – kyndigs

ответ

1

Если вы отключите ключ USBSTOR, вы предотвратите «ДОСТУП» к нему, включая сбор информации из него.

Я предлагаю вам посмотреть здесь: WM_DEVICECHANGE

С помощью этого вы можете поймать, когда вошел в USB, а затем получить букву диска и использовать DEV_BROADCAST_VOLUME для сбора информации о нем, то вы можете отключить его с помощью метода реестра ,

+0

Поскольку вопрос отмечен как C#, было бы хорошо знать, есть ли эквиваленты .NET для этих событий Win32. –

+0

Вы можете использовать пространство имен System.Management, показанное здесь: http://msdn.microsoft.com/msdnmag/issues/02/05/WMIMan/default.aspx – kyndigs

+0

Кроме того, как получить событие вставки USB, чтобы моя программа активируется? –

 Смежные вопросы

  • Нет связанных вопросов^_^