Abrir cdrom pedindo direto ao sistema.
Ao contrário dos scripts presentes aqui no VivaoLinux, este script solicita ao sistema a abertura da bandeja do cdrom diretamente, sem
precisar executar "eject".
precisar executar "eject".
Descrição
Ao contrário dos scripts presentes aqui no VivaoLinux, este script solicita ao sistema a abertura da bandeja do cdrom diretamente, sem
precisar executar "eject".
precisar executar "eject".
/* Um programa besta! Mas útil para estudantes. */
#include <fcntl.h> /* Isso aqui vai declarar O_RDONLY, O_NONBLOCK e afins. */
#include <linux/cdrom.h> /* Isso aqui vai declarar CDROMEJECT, CDROMEJECT e a turma. */
#define CDDEVICE "/dev/cdrom" /* Seu drive de CD. */
int main(int argc,char **argv)
{
int cdrom; /* A função abaixo vai me retornar um inteiro. Repare que ela pede para abrir CDDEVICE em Modo Ready Only*/
if ((cdrom = open(CDDEVICE,O_RDONLY | O_NONBLOCK)) < 0) {
perror("open");
return(1);
}
/* Loop eterno :D */
for (;;){
/* CDROM VAI */
if (ioctl(cdrom,CDROMEJECT,0)<0) {
perror("ioctl");
/* Antes de sair apague a luz */
close(cdrom);
return(-1);
}
/* CDROM VOLTA */
if (ioctl(cdrom,CDROMCLOSETRAY,0)<0) {
perror("ioctl");
/* Antes de sair apague a luz */
close(cdrom);
return(-1);
}
}
/* Antes de sair apague a luz */
close(cdrom);
}
Valeu Lucas. Muito legal.