Como ejetar CD-Rom ?
Olá.
Primeiro de tudo queria avisar que fiquei um tempo sem acessar o forum pois estou cheio de coisas a fazer.
Bom, queria saber se alguem sabe e poderia me passar o código de como ejetar o CD-Rom. Eu queria um que pudesse ser informado qual o drive que eu quero ejetar.
Obrigado mesmo!
Primeiro de tudo queria avisar que fiquei um tempo sem acessar o forum pois estou cheio de coisas a fazer.
Bom, queria saber se alguem sabe e poderia me passar o código de como ejetar o CD-Rom. Eu queria um que pudesse ser informado qual o drive que eu quero ejetar.
Obrigado mesmo!
Nildo
Curtidas 0
Respostas
Gandalf
17/11/2003
{Para Abrir:}
mciSendString(´Set cdaudio door open wait´, nil, 0, handle);
{Para Fechar:}
mciSendString(´Set cdaudio door closed wait´, nil, 0, handle);
mciSendString(´Set cdaudio door open wait´, nil, 0, handle);
{Para Fechar:}
mciSendString(´Set cdaudio door closed wait´, nil, 0, handle);
GOSTEI 0
Nildo
17/11/2003
Até aí beleza.. Mas eu tenho 2 drives de CD-Rom. O Drive ´D´ e o ´E´. Ele está ejetando o drive ´D´. Como eu faço entao pra ejetar o drive ´E´?
GOSTEI 0
Gandalf
17/11/2003
não sei, peguei essa dica em um manual de dicas
tente mudar o 0 por 1 talvez de certo
tente mudar o 0 por 1 talvez de certo
GOSTEI 0
Gandalf
17/11/2003
talvez sirva para fechar apenas o cd que tem o cabo de audio
mciSendString(´Set [b:d12b7baad0]cdaudio[/b:d12b7baad0] door open wait´, nil, 0, handle);
isso deve ser usado emprogramas para tocar cd de audio
mciSendString(´Set [b:d12b7baad0]cdaudio[/b:d12b7baad0] door open wait´, nil, 0, handle);
isso deve ser usado emprogramas para tocar cd de audio
GOSTEI 0
Nildo
17/11/2003
Mas funciona. Ele abre o CD principal só.
Dae eu achei essa função que abre qual eu quiser, mas não estou conseguindo agora fechar o drive. Aki vai:
E pra chamar a função:
Será que alguem consegue fazer fechar o drive? Ps.: Só trocando os OPEN por CLOSE não funciona =(
Dae eu achei essa função que abre qual eu quiser, mas não estou conseguindo agora fechar o drive. Aki vai:
function OpenDrive(DriveLetter: char): longint; var ParamString: string; begin if DriveLetter = #0 then begin ParamString:=´set cdaudio door open´; Result:=mciSendString(PChar(ParamString),nil,0,0); end else begin ParamString:=DriveLetter + ´: Alias Drive_´ + DriveLetter + ´ Type CDAudio´; Result:=mciSendString(PChar(´open ´ + ParamString),nil,0,0); if Result=0 then Result:=mciSendString(PChar(´set ´ + ´Drive_´ + DriveLetter + ´ door open´),nil,0,0); if Result=0 then Result:=mciSendString(PChar(´close ´ + ´Drive_´ + DriveLetter),nil,0,0); end; end;
E pra chamar a função:
var b: PChar; err: Integer; begin err := OpenDrive(´D´); b := PChar(AllocMem(255)); if err <> 0 then begin mciGetErrorString(err, B, 255); ShowMessage(b); end; end;
Será que alguem consegue fazer fechar o drive? Ps.: Só trocando os OPEN por CLOSE não funciona =(
GOSTEI 0
Cebikyn
17/11/2003
Se para abrir é:
´set ´ + ´Drive_´ + DriveLetter + ´ door open´
pq não tentar:
´set ´ + ´Drive_´ + DriveLetter + ´ door [b:1bc9e876c4]closed[/b:1bc9e876c4]´ para fechar?
Deve funcionar...
´set ´ + ´Drive_´ + DriveLetter + ´ door open´
pq não tentar:
´set ´ + ´Drive_´ + DriveLetter + ´ door [b:1bc9e876c4]closed[/b:1bc9e876c4]´ para fechar?
Deve funcionar...
GOSTEI 0
Nildo
17/11/2003
Putzzz como naum lembrei do [b:5fc033d846]CLOSED[/b:5fc033d846].. Estava colocando [b:5fc033d846]CLOSE[/b:5fc033d846].
Valew Cebikyn.
Valew Cebikyn.
GOSTEI 0