Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

привод CD-Rom


random ©   (2004-04-06 10:37:00) 

Подскажите, как открыть и закрыть лоток cd-rom средствами Delphi (вариант - нажать на кнопку не подходит - уж лень дюже)
И еще, подскажите, что там uses?


http://my.samara.ru/~Delphi   (2004-04-15 17:52:00) [1]

//vvvvvvvvvvvvvvvvvvvvvvvvv/ Open CD / Close CD /vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
function OpenCD(Drive:string):Boolean;
var
Res : MciError;
OpenParm: TMCI_Open_Parms;
Flags,DeviceID : Word;
begin
Result:=false;
Flags:=mci_Open_Type or mci_Open_Element;
with OpenParm do begin
dwCallback := 0;
lpstrDeviceType := 'CDAudio';
lpstrElementName := PChar(Drive+':');
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;

function CloseCD(Drive:string):Boolean;
var
Res : MciError;
OpenParm: TMCI_Open_Parms;
Flags,DeviceID : Word;
begin
Result:=false;
Flags:=mci_Open_Type or mci_Open_Element;
with OpenParm do begin
dwCallback := 0;
lpstrDeviceType := 'CDAudio';
lpstrElementName := PChar(Drive+':');
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;


Kremen   (2004-04-06 12:33:00) [2]

procedure  EjectCDROM(aLetter  :  char);
const  
    AliasName  =  'MyCoolCdrom';
var  s  :  string;
begin
      s  :=  'open  '  +  aLetter  +  ':  type  cdaudio  alias  '  +  AliasName  +  aLetter  +  '  shareable  wait';
      if  mciSendString(PChar(s),  nil,  0,  0)  <>  0  then  exit;  //  fails  to  open
      try
          s  :=  'set  '  +  AliasName  +  aLetter  +  '  door  open  wait';
          mciSendString(PChar(s),  nil,  0,  0);
      finally
          s  :=  'close  '  +  AliasName  +  aLetter  +  '  wait';
          mciSendString(PChar(s),  nil,  0,  0);
    end;
end;

я думаю догадаешься вместо MyCoolCdrom поставить свой сд


Наверх

Титульная страница Поиск, карта сайта Написать письмо