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

Вниз

Извлечение 2-ух CD-приводов...   Найти похожие ветки 

 
Masta Hookah   (2005-05-23 21:41) [0]

Извлечь CD-привод в принципе могу... А ситуация стоит таким образом: Если стоит ДВА CD-Привода и извлекается по ходу только первый т.е. тот который стоит на раньшей шине (логично), а вот как извлеч ВТОРОЙ CD-привод или например ДЕСЯТЫЙ (+ засунуть его обратно)...???


 
alex-drob   (2005-05-23 21:59) [1]

Из справки по WinAPI

uses
 ... MMSystem;

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
   mciSendCommand(DeviceID, mci_Close, Flags, Longint(@OpenParm));
 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;



 
alex-drob   (2005-05-23 22:01) [2]

Параметр Drive - буква CD-ROM



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

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

Наверх




Память: 0.47 MB
Время: 0.048 c
3-1114835348
dEd
2005-04-30 08:29
2005.06.06
ADO + целостность данных


6-1110791159
frEE)stylEr
2005-03-14 12:05
2005.06.06
функции RAS


4-1113834123
Nomolos
2005-04-18 18:22
2005.06.06
Проблема с ловушкой для мыши


10-1093524855
Ragazor
2004-08-26 16:54
2005.06.06
Как в Excel задать фомат всем ячейкам - текст? (OLE)


8-1109149012
Pashka.cool
2005-02-23 11:56
2005.06.06
Помогите с OnKeyDown