Я хочу иметь возможность программно получить размер физического диска или логические диски, которые являются частью физического диска.Получить размер диска и/или диск с неизвестным файловым форматом, C# .NET Framework?
В нормальных условиях получение логического размера диска очень просто. Но для диска, который я использую, я намеренно написал для него необработанные данные, и, следовательно, ожидается, что нет известного формата диска.
Из-за того, что формат диска неизвестен Windows, свойства диска Windows и DriveInfo .NET Framework не могут определить размер логического диска (дисков), составляющих этот физический диск. В DriveInfo foo по формату я имею в виду foo.DriveFormat, foo.IsReady - false, а foo.TotalSize вызывает исключение. Просто щелкнув диск и получив размер вручную через параметр свойств Windows, он отображает 0 байтов для размера диска.
Рекомендуется использовать C# с использованием .NET Framework 4.0 или более ранней версии в системе Windows 7, как узнать размер физического диска или логические диски, составляющие физический диск, если логические диски, связанные с у него нет известной файловой структуры? В частности, размер физического диска предпочтительнее для моих целей.
Я знаю, что есть общий способ использования Windows 7, так как я видел, что приложения дают точный размер физического диска того же диска.
Вы видели этот вопрос? http://stackoverflow.com/questions/4008620/getting-disk-size-properly –
Возможны ли сообщения управления IO? IOCTL_DISK_GET_LENGTH_INFO/IOCTL_DISK_GET_DRIVE_GEOMETRY –
@ LasseV.Karlsen, я нашел вопрос до и. После некоторых дальнейших усилий я обнаружил, что я не использовал IOCTL_DISK_GET_LENGTH_INFO в .NET Framework должным образом (использование маркером указателей и структур было неправильным). Я соответствующим образом обновлю ответ. –