Главная страница
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.014 c
9-91967
Andy Eremin
2003-02-27 07:35
2003.08.28
определение расстояния до объекта


14-92216
CinCinNut
2003-08-09 16:10
2003.08.28
Бэд блоки


3-92022
Cherepovets
2003-08-04 15:10
2003.08.28
Сортировка


3-91973
Петров Денис
2003-08-06 17:00
2003.08.28
is not a valid timestamp


14-92237
Manfred
2003-08-09 06:22
2003.08.28
Файл QTINTF70.DLL