Ребят не ленитесь искать в нете
http://www.rambler.ru/srch?set=www&words=%CA%E0%EA+%EF%F0%EE%E3%F0%E0%EC%EC%ED%EE+%EE%F2%EA%F0%FB%F2%FC+CD+%EF%F0%E8%E2%EE%E4&btnG=%CD%E0%E9%F2%E8%21В частности для Борландовских продуктов дают такую рекомендацию
// чтобы программно закрыть привод CD-ROM, подключите ПОСЛЕ vcl.h заголовочный файл mmsystem.h
// и вызовите функцию mciSendString:
mciSendString("Set cdaudio door closed wait", NULL, 0, Handle);
// чтобы программно открыть привод CD-ROM, подключите ПОСЛЕ vcl.h заголовочный файл mmsystem.h
// и вызовите функцию mciSendString:
mciSendString("Set cdaudio door open wait", NULL, 0, Handle);
А на счет, есть ли диск. Можно наверно хотя бы прочитать каталог с него. Если чтение удалось, значит диск присутствует.