Fórum Abrir unidades de cd (E: e F:) #148998

24/03/2003

0

Olá amigos!
Possuo duas unidades de cd em minha máquina e estou precisando através de um clique em um botão abrir um dos drivers.
Já utilizei o comando :

mciSendString(´Set cdaudio door open wait´, nil, 0, handle); para abrir e

mciSendString(´Set cdaudio door closed wait´, nil, 0, handle); para fechar.

Só que este comando apenas abre a unidade E:, gostaria também de ter a opção de abrir a unidade F:

Aguém poderia me ajudar novamente ?

Obrigado + uma vez.


Anonymous

Anonymous

Responder

Posts

24/03/2003

Anonymous

Olha.. Existe outra forma.. Tenta esta..
Para Abrir:

function OpenCD(Drive : Char) : Boolean;
Var
Res : MciError;
OpenParm: TMCI_Open_Parms;
Flags : DWord;
S : String;
DeviceID : Word;
begin
Result:=false;
S:=Drive+´:´;
Flags:=mci_Open_Type or mci_Open_Element;
With OpenParm do
begin
dwCallback := 0;
lpstrDeviceType := ´CDAudio´;
lpstrElementName := PChar(S);
end;
Res := mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
IF Res<>0 Then exit;
DeviceID:=OpenParm.wDeviceID;
try
Res:=mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_OPEN, 0);
IF Res=0 Then exit;
Result:=True;
finally
mciSendCommand(DeviceID, mci_Close, Flags, Longint(@OpenParm));
end;
end;

Para Fechar:

function CloseCD(Drive : Char) : Boolean;
Var
Res : MciError;
OpenParm: TMCI_Open_Parms;
Flags : DWord;
S : String;
DeviceID : Word;
begin
Result:=false;
S:=Drive+´:´;
Flags:=mci_Open_Type or mci_Open_Element;
With OpenParm do
begin
dwCallback := 0;
lpstrDeviceType := ´CDAudio´;
lpstrElementName := PChar(S);
end;
Res := mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
IF Res<>0 Then exit;
DeviceID:=OpenParm.wDeviceID;
try
Res:=mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_CLOSED, 0);
IF Res=0 Then exit;
Result:=True;
finally
mciSendCommand(DeviceID, mci_Close, Flags, Longint(@OpenParm));
end;
end;


Responder

Gostei + 0

24/03/2003

Dor_poa

Obs.: Fui eu que lhe respondi, só que eu não estava logado...


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar