Здравствуйте, Patalog, спасибо за ответ, Вы писали:
MM>>Разобраться самому не получается (как из них вытащить информацию?).
P>Данные даны по состоянию INF-8090i Rev 5.1
P>P>enum format_codes
P>{
P> format_TOC = 0x00, /* Returned data - TOC, Track/Session field contains the track number */
P> format_session_info = 0x01, /* Returned data - Session Information, Track/Session field is reserved */
P> format_full_TOC = 0x02, /* Returned data - Full TOC, Track/Session field contains Session number */
P> format_PMA = 0x03, /* Returned data - PMA, Track/Session field is reserved */
P> format_ATIP = 0x04, /* Returned data - ATIP, Track/Session field is reserved */
P> format_CDText = 0x05 /* Returned data - CD-Text, Track/Session field contains Session number */
P>};
P>struct atip_A1_data
P>{
P> unsigned char rec_speed_hight : 4; /* Highest Usable CLV Recording Speed
.
.
.
P> unsigned char A2_value[3]; /* Reserved */
P> unsigned char res12;
P> unsigned char A3_value[3]; /* Reserved */
P> unsigned char res13;
P>};
P>
Я честно скажу, не знаю что с этим текстом делать

.
Пытаясь найти решение своей задачи получилось:
1) Могу считать к примеру SectorsPerTrack используя IOCTL_DISK_GET_DRIVE_GEOMETRY или кол-во треков на аудио диске;
2) В msdn-е нашел, как читать диск посекторно. Т.е. вся инф-я сохраняется в файле. Так может через этот метод найти ATIP? Как я понял она находится не в начальных секторах, а в другом месте... может вы знаете в каких нужно конкретно читать секторах, чтоб считать ATIP?
Или всетаки подкините кусочек кода, как это сделать по нормальному.