Я работаю над определением, доступен ли съемный диск только для чтения, используя C # (.NET 4.0). Я прочитал много статей, в которых подробно описывается процесс определения того, доступен ли каталог только для чтения, используя следующий код, полученный из эту страницу:
var di = new DirectoryInfo(folderName);
if(di.Exists)
{
if (di.Attributes.HasFlag(FileAttributes.ReadOnly))
{
//IsReadOnly...
}
}
Тем не менее, я пробовал этот метод с использованием корневого каталога, и хотя весь диск доступен только для чтения (я использую заблокированную SD-карту), я никогда не добираюсь до строки //IsReadOnly...
. Содержимое диска не может быть гарантировано (он может быть пустым или содержать много-много файлов), поэтому о тестировании любого подкаталога не может быть и речи. Я знаю, что простой тест - записать небольшой файл на диск и перехватить любые исключения, но я бы предпочел другой метод.
Кто-нибудь знает хорошее решение этой проблемы?
WMI
, если нет, вот хорошее чтение, а также хорошее место для начала Класс Win32_LogicalDisk - person MethodMan   schedule 29.10.2014