![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Открытие/Закрытие CD/DVD привода [D7, WinXP]
***VipeR*** © (2004-04-04 00:00:00)У меня 2 привода: один обыкновенный CD, другой DVD. Подскажите пожалуйста, как Открыть/Закрыть CD/DVD. Пытался MPlayer'ом открыл(но не закрыл) только CD(скорее всего у меня кривые руки).
Wiz@rd (2004-04-04 14:49:00) [1]procedure OpenCD;
var
OpenParm: MCI_OPEN_PARMS;
Err: Integer;
CurDrive: PChar;
begin
CurDrive := 'E:';
FillChar(OpenParm, SizeOf(MCI_OPEN_PARMS),0);
OpenParm.dwCallback := 0;
OpenParm.lpstrDeviceType := 'CDAudio';
OpenParm.lpstrElementName := CurDrive;
Err := mciSendCommand(0, MCI_OPEN, MCI_OPEN_ELEMENT or MCI_OPEN_TYPE,LongInt(@OpenParm));
if Err <> 0 then MessageBox(MainFOrm.Form.GetWindowHandle, 'Нет устройства!','Не могу открыть!',MB_ICONERROR or MB_OK)
else mciSendCommand(OpenParm.wDeviceID,MCI_SET,MCI_SET_DOOR_OPEN, 0);
if OpenParm.wDeviceID <> 0 then
mciSendCommand(OpenParm.wDeviceID, mci_Close, 0, Longint(@OpenParm));
end;
procedure CloseCD;
var
OpenParm: MCI_OPEN_PARMS;
Err: Integer;
CurDrive: PChar;
begin
CurDrive := 'E:';
FillChar(OpenParm, SizeOf(MCI_OPEN_PARMS),0);
OpenParm.dwCallback := 0;
OpenParm.lpstrDeviceType := 'CDAudio';
OpenParm.lpstrElementName := CurDrive;
Err := mciSendCommand(0, MCI_OPEN, MCI_OPEN_ELEMENT or MCI_OPEN_TYPE,LongInt(@OpenParm));
if Err <> 0 then MessageBox(MainForm.Form.GetWindowHandle, 'Нет устройства!','Не могу открыть!',MB_ICONERROR or MB_OK)
else mciSendCommand(OpenParm.wDeviceID,MCI_SET,MCI_SET_DOOR_CLOSED, 0);
if OpenParm.wDeviceID <> 0 then
mciSendCommand(OpenParm.wDeviceID, mci_Close, 0, Longint(@OpenParm));
end;