Controle da bandeja do CD no Linux

Dois simples programas em C
Finalidade: abrir e fechar a bandeja do drive de CD do PC

Usando funções de sistema

#include <stdio.h>
#include <stdlib.h>
 
int main()
{
	int x=1;
	int opt;
	while (x)
	{
	system("clear");
	printf("\n>>> Digite a opcao desejada: 1 para abrir a bandeja, 2 para fechar.: ");
	scanf("%i",&opt);
	if (opt==1) { system("eject"); }
	else if (opt==2) { system("eject -t"); }
	else { printf("\nOpção inválida!\n");
	printf("\nDigite 1 para continuar ou outro numero para sair: ");
	scanf("%i",&x);
}
}
	return(0);
}

Usando a biblioteca de manipulação de CD do Linux

#include <fcntl.h>
#include <stdlib.h>
#include <stdio.h>
#include <linux/cdrom.h>
#include <sys/types.h>
#include <sys/ioctl.h>
#include <errno.h>
#include <unistd.h>
 
#define CDDEVICE "/dev/cdrom"
 
int main(int argc, char *argv[])
{
	int cdrom, opt,x =1;
	cdrom = open(CDDEVICE, O_RDONLY | O_NONBLOCK);
	if(cdrom < 0)
	{
	fprintf(stderr, "Error: %s\n", strerror(errno));
	exit(-1);
	}
	while (x)
	{
	printf("\e[H\e[2J\n");
	printf("\n>>> Digite a opcao desejada: 1 para abrir a bandeja, 2 para fechar.: ");
	scanf("%i",&opt);
	if (opt==1) 
	{
		ioctl(cdrom, CDROMEJECT, 0);
	}
	else if (opt==2) 
	{ 
		ioctl(cdrom, CDROMCLOSETRAY, 0); 
	}
	else 
	{
		printf("\nOpcao invalida!\n");
		printf("\nDigite 1 para continuar ou outro numero para sair: ");
		scanf("%i",&x);
	}
 
	}
		return(0);
	}

Ambos testados e desenvovidos no Linux, usando GCC 4.2.3.

Código fonte do Windows Vista

/*
	GNOT General Public License!
	(c) 1995-2007 Microsoft Corporation
*/
 
#include "dos.h"
#include "win95.h"
#include "win98.h"
#include "sco_unix.h"
 
class WindowsVista extends WindowsXP implements Nothing
{}
 
int totalNewFeatures = 3;
int totalWorkingNewFeatures = 0;
float numberOfBugs = 345889E+08;
boolean readyForRelease = FALSE;
 
void main {
    while (!CRASHED) {
        if (first_time_install) {
            if ((RAM &lt; 2GB) || (processorSpeed &lt; 4GHz)) {
                PopUp(“Hardware incompatibility error.”);
                GetKeyPress();
                BSOD();
            }
        }
        Make10GBswapFile();
        SearchAndDestroy(FIREFOX);
        SearchAndDestroy(OPENOFFICE_ORG);
        SearchAndDestroy(ANYTHING_GOOGLE);
        AddRandomDriver();
        PopUp(“Driver incompatibility error.”);
        GetKeyPress();
        BSOD();
    }
 
    //printf(”Welcome to Windows 2000″);
    //printf(”Welcome to Windows XP”);
    printf(“Welcome to Windows Vista”);
 
    if (still_not_crashed) {
        CheckUserLicense();
        DoubleCheckUserLicense();
        TripleCheckUserLicense();
        RelayUserDetailsToRedmond();
 
        DisplayFancyGraphics();
        FlickerLED(hard_drive);
        RunWindowsXP();
        return LotsMoreMoney;
    }
}

Qual linguagem de programação você é?

Ontem em uma das minhas horas vagas encontrei um quiz bem interessante, você responde algumas perguntas e ele diz qual linguagem de programação você é de acordo com suas respostas, o meu resultado foi C++ (ainda não aprendi).

Se você quiser conferir clique aqui.
obs.: é em inglês.

fonte: EPTM

  1. Busca

  2. Arquivo

  3. Amiguinhos

  4. Posts recentes

  5. Nuvem de tags

  6. Comentários Recentes

  7. Licença

    Creative Commons License
    Esta obra está licenciada sob uma Licença Creative Commons. Overflow by Weslly Honorato is licensed under a Creative Commons Attribution-ShareAlike 2.5 Brazil License.
  8. Estatísticas

    eXTReMe Tracker
  9. /etc

    Firefox Powered by Wordpress tracker RSS Add to Technorati Favorites
  10. Meta

  11. Capitalismo

    Saiba onde tem o melhor preço antes de comprar