![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Блокирование 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]А ВинАпи почитеть уже в лом?