Вопрос похож на Как читать диск напрямую с помощью .Net? , за исключением того, что дисководом, требующим прямого доступа, является привод CD-ROM или DVD-ROM. Эти диски не являются физическими, и к ним нельзя получить доступ с помощью DeviceStream class или CreateFile Win32 API-метода, как процитировано в теме выше.
Ядро Windows автоматически создает маркеры внутренних устройств для различных подключенных блочных устройств. Первый дисковод CD-ROM отображается как \ Device \ CdRom0 , хотя попытка открыть его с помощью CreateFile () завершится неудачно (очевидно, для http://support.microsoft.com/kb/235128).
Учитывая, что неуправляемые приложения могут иметь естественный доступ к этим блочным устройствам (любое программное обеспечение для записи компакт-дисков, DD для Windows, Cygwin [через / dev / scdN]), существует ли программный метод для доступа к этим блочным устройствам (предпочтительно используемый в .NET )