Определение размера неотформатированного диска
Процедуры GetDiskFreeSpace и GetDiskFreeSpaceEx возвращают размер диска только если он отформатирован. А как узнать какой размер у диска без файловой системы?
http://msdn.microsoft.com/en-us/library/aa363858%28VS.85%29.aspx ), а размер посмотрите через GetFileSize. Способ не проверял, но по логике должно работать.
Попробуйте открыть диск через CreateFile (как это сделать посмотрите в MSDN:
Уже пробовал - возвращает -1, даже для форматированного диска.
В таком случае, мне кажется, единственный вариант - определять размер через MBR и сопутствующие структуры.
Смотрите DISK_PARTITION_INFO
Цитата: dreamer.mas
В таком случае, мне кажется, единственный вариант - определять размер через MBR и сопутствующие структуры.
Я же говорю - диск абсолютно чист. Нет даже MBR.
Есть еще функция DeviceIoControl
Цитата: KIV
Я же говорю - диск абсолютно чист. Нет даже MBR.
Вы уже тогда научитесь отличать сам диск от его раздела.
IOCTL_DISK_GET_DRIVE_GEOMETRY_EX
Спасибо. А пример пример привести можете (желательно на FASM)