Abrir cdrom pedindo direto ao sistema.

Publicado por Perfil removido 21/12/2008

[ Hits: 8.370 ]

Download cdrom.c




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".

  



Esconder código-fonte

/* 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);
}

Scripts recomendados

Crivo de Eratóstenes Simples em C

Cálculo de média usando funções e struct

Tabela ASCII

Calculando fatorial em C

Minha primeira biblioteca em C


  

Comentários
[1] Comentário enviado por albertguedes em 22/12/2008 - 15:49h

Opa, um códigozinho com chamada direta de sistema ! Essa é boa. hehehe

Valeu Lucas. Muito legal.

[2] Comentário enviado por pothix em 26/12/2008 - 16:25h

Æ!!

Idéia legal mas código gambiarrento...= /

Há braços


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts