Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.08.28;
Скачать: CL | DM;

Вниз

CDROM открыт???   Найти похожие ветки 

 
Ronin   (2003-06-14 01:17) [0]

Hi everyone!!!
как проверить открыт ли дисковод программно
и еще как открыть нужный мне если в системе их несколько


 
dataMaster ©   (2003-06-14 09:30) [1]

Как проверить открыт или нет не знаю, как вариант могу предложить проверку на готовность, а открыть-закрыть вот как можно:

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


function CloseCD(Drive : Char) : Boolean;
Var
Err : 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;
Err := mciSendCommand(0, mci_Open, Flags, Longint(@OpenParm));
IF Err<>0 Then exit;
DeviceID:=OpenParm.wDeviceID;
try
Err:=mciSendCommand(DeviceID, MCI_SET, MCI_SET_DOOR_CLOSED, 0);
IF Err=0 Then exit;
Result:=True;
finally
mciSendCommand(DeviceID, MCI_CLOSE, Flags, Longint(@OpenParm));
end;
end;


 
Shooraniy ©   (2003-06-16 04:02) [2]

Err : MciError;
OpenParm: TMCI_Open_Parms;
Что это за типы такие? У меня ошибка выползает.


 
Song ©   (2003-06-16 08:55) [3]

Uses MMSystem;



Страницы: 1 вся ветка

Текущий архив: 2003.08.28;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
14-92237
Manfred
2003-08-09 06:22
2003.08.28
Файл QTINTF70.DLL


11-92093
Ал
2002-12-17 21:09
2003.08.28
При возникновении except в try except отладчик зависает


3-92074
W-Bazil
2003-08-01 16:19
2003.08.28
Ошибка преобразования типов


14-92188
Evg12
2003-08-10 13:02
2003.08.28
Исходник функции random


11-92092
_Ed_
2002-12-16 14:28
2003.08.28
Дополнение к OnPaint