VB.Net, возможно ли получить эксклюзивный доступ (записать файлы) к внешнему хранилищу, подключенному через USB?

Из соображений безопасности я хочу исключительно копировать файлы локального компьютера на внешний USB-накопитель (например, на USB-накопитель или жесткий диск).

Это означает, что пользователь не может получить доступ к USB-накопителю через проводник, а также пользователь не может запускать и копировать какие-либо файлы на USB-накопителе.

Но через «Программу» пользователь может копировать файлы с локального компьютера на USB-накопитель, и пользователь может видеть структуру каталогов.

Таким образом, возможно ли создать программу, которая имеет эксклюзивное разрешение (привилегию) на доступ к внешнему хранилищу, подключенному через USB?

Нужна ли ДРАЙВЕР-вещь?

VB.Net предпочтительнее, но может подойти и любой другой язык.


person klados    schedule 25.07.2015    source источник


Ответы (1)


Можно ли создать программу с исключительным доступом (привилегией) к внешнему хранилищу, подключенному через USB?

Лучшим вариантом было бы создать свой собственный диалог сохранения, который содержит древовидное представление, показывающее только съемные диски и их содержимое для сохранения пользователем:

Dim saveFileDialog As New System.Windows.Forms.SaveFileDialog()
saveFileDialog.CustomPlaces.Clear()
saveFileDialog.CustomPlaces.Add(AddGuidOfTheExternalDriveOneByOne)
...
saveFileDialog.ShowDialog()

И вот как вы перечисляете диски, помеченные как «съемный диск»:

Dim ListDrives As DriveInfo() = DriveInfo.GetDrives()

For Each Drive As DriveInfo In ListDrives
    If Drive.DriveType = DriveType.Removable Then
        Add to RemovableDrive list or somethiing
    End If
Next
person Xavier Peña    schedule 25.07.2015
comment
это не было бы решением, потому что пользователь может получить доступ к съемным дискам через Проводник, Мой компьютер, а также любое другое программное обеспечение. Я хочу заблокировать пользователям доступ через любое другое программное обеспечение, кроме моей программы. - person klados; 26.07.2015