Я хотел бы получить количество полных секторов на носителе, вставленном в привод CD-ROM. Есть ли способ для этого в C#? Я проверил класс управления в .NET, но у него, похоже, нет метода.Как получить общие сектора диска в среде?
1
A
ответ
2
Функция Windows API DeviceIoControl
получит эту информацию для вас. К сожалению, в библиотеках .NET нет простой оболочки.
This sample показывает, как сделать то, что вы хотите в С. Переводя, что C# не является тривиальным, но вы могли бы найти некоторые полезные указатели здесь: Calling DeviceIoControl from C# with IOCTL_DVD_* Control Codes
Пример, вы имеете в виду использования Disk_Geometry структуры, которая возвращает только используемые сектора на диске, а не общая емкость диска. Мне нужно учиться на полную мощность. Как я могу это понять? –
@Mert: взгляните на http://stackoverflow.com/questions/82993/windows-cd-burning-api. В принятом ответе есть образец C++, который использует API-интерфейс Image Mastering (http://msdn.microsoft.com/en-us/library/aa366450(v=VS.85).aspx). Есть пример использования его с C# по адресу http://www.codeproject.com/KB/miscctrl/imapi2.aspx. –
К сожалению, этот API работает только тогда, когда диск горит. В противном случае это исключает. Там должен быть простой способ сделать это. –