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

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

Блокирование CD-ROM [D6, Win95/98, WinME, NT4, Win2k, WinXP]


lmatveev ©   (2004-02-26 20:04:00) 

Как заблокировать лоток CD-ROM как это делают всякие cd-писАлки?
На каких CD-ROM это можно сделать?


SammIk   (2004-02-27 23:43:00) [1]

Да, хочется добавить к высказыванию
> BiN ©  

Сколько раз залочил сидюк, столько раз надо разлочить


BiN   (2004-02-27 17:51:00) [2]

function LockCDDoor(DriveCD:char; Locked:boolean):Boolean;
const IOCTL_STORAGE_MEDIA_REMOVAL = $002D4804;
var hDrive : THandle;
Returned : DWORD;
DisableEject : boolean;
Drv: string;
begin
 result:=False;
 Drv:= '\\.\'+DriveCd+':';
 hDrive := CreateFile(PChar(Drv), GENERIC_READ, FILE_SHARE_READ, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
 if GetLastError <> 0 then Exit;
 try
 DisableEject := Locked;
 Result:=DeviceIoControl(hDrive,
       IOCTL_STORAGE_MEDIA_REMOVAL,
       @DisableEject,
       sizeof(DisableEject),
       nil,
       0,
       Returned,
       nil);

 finally
   CloseHandle(hDrive);
 end;
end;


Иван Ширко   (2004-02-27 17:47:00) [3]

ASPI позволяет сделать это, а заодно проверить поддержку этой команды для данного CD-ROM'a.
Скорее всего можно воспользоваться и модулем mmsystem.


lmatveev   (2004-02-27 17:39:00) [4]

Вот вопрос как раз в том, что именно почитать. И в каком направлении.
Я надеялся, что у кого-нибудь уже есть опыт в подобных вещах и он поделится если уж не кодом, то уж хотя бы нужным направлением.


DVM   (2004-02-27 16:45:00) [5]


> А ВинАпи почитеть уже в лом?

Вряд-ли WinApi тут поможет. Лучше про ASPI почитать ИМХО.


Eagle-XK   (2004-02-27 16:41:00) [6]

А ВинАпи почитеть уже в лом?


Наверх

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