Abrir unidades de cd (E: e F:)
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.
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
Curtidas 0
Respostas
Anonymous
24/03/2003
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;
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;
GOSTEI 0
Dor_poa
24/03/2003
Obs.: Fui eu que lhe respondi, só que eu não estava logado...
GOSTEI 0