Aí moçada? Tudo blz?
Negócio é o seguinte, eu preciso desenvolver um programa que ejete ou feche a gaveta do CD-rom. Tem algum pacote especial para isso, ou os pacotes padrões do java suportam?
Valeu a força,
Junior
Aí moçada? Tudo blz?
Negócio é o seguinte, eu preciso desenvolver um programa que ejete ou feche a gaveta do CD-rom. Tem algum pacote especial para isso, ou os pacotes padrões do java suportam?
Valeu a força,
Junior
Eu em particular não gosto desse recurso de que o programa é que ejeta o CD (acho melhor eu mesmo apertar o botão, principalmente porque às vezes tenho de desobstruir o caminho da gavetinha antes de abrir), mas veja se o Java Media Framework suporta isso. (Se não me engano ele consegue tocar uma música do CD, mas não sei sobre o controle da gaveta).
De qualquer maneira não é uma coisa padrão, você precisa mandar um instalador (no caso seria o instalador do JMF).
Cara...
olha que legal eu não testei mas ai vai...
e pelo que parece só roda em windows esse código java, e inclusive estava lendo outros fóruns e creio que isso seja um comando específico para cada S.O.
//**************************************
// Name: Cdopener
// Description:Opens and closes a cd tray
// By: Jon Boyce
//
//
// Inputs:None
//
// Returns:None
//
//Assumes:This code is actually visual j++ the package com.ms.win32 is not part of the java api and is not standard sun code.!!!!!!!!!!
//
//Side Effects:You need a very up to date virual machine to interpret the java bytecode otherwise the code will not work, ie5 has a very good up to date virtual machine, i highly recomend this as it will make life a lot easier
//This code is copyrighted and has limited warranties.
//Please see http://www.1JavaStreet.com/xq/ASP/txtCodeId.1659/lngWId.2/qx/vb/scripts/ShowCode.htm
//for details.
//**************************************
import com.ms.win32.*;
public class Cdopener
{
private static String OPEN = "set cdaudio door open";
private static String CLOSE = "set cdaudio door open";
private static final int MAX_ERROR_SIZE = 64;
private static StringBuffer sbreturn = new StringBuffer(MAX_ERROR_SIZE);
public static void main (String[] args)
{
//call open() to open it and close() in the main method to
//close it
}
public static void open()
{
Winmm.mciSendString(OPEN,sbreturn,127,0);
}
public static void close()
{
Winmm.mciSendString(CLOSE,sbreturn,127,0);
}
}
fonte chupado do site... http://www.1javastreet.com/vb/scripts/ShowCode.asp?txtCodeId=1659&lngWId=2
O programa mostrado só funciona em Microsoft JVM
(em aplicações; mas em applets irá requer assinatura,
e modificação do código para solicitar mais permissões),
ou então se você escrever uma DLL JNI que faça a função equivalente
(enviar comandos MCI).
Mas é legal porque às vezes você tem de escrever algo que
sabidamente só vai rodar em MSJVM
(bom, hoje em dia não sei, nem a Microsoft
recomenda usar a MSJVM…)
Olha isso:
Esse código não vai funcionar em nenhuma JVM que siga a especificação.