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

Вниз

Можно ли программно заблокировать лоток CD   Найти похожие ветки 

 
yaric   (2003-11-26 18:08) [0]

Можно ли программно заблокировать лоток CD, как это делает например Linux, когда сидюк примонтирован.
Если можно, то подскажите как.


 
Nick Denry ©   (2003-11-26 20:52) [1]

MCILock...
Find in help


 
AbrosimovA ©   (2003-12-02 14:47) [2]

//Блокировать(Locked=true);Разблокировать(Locked=false) CD-ROM
//DriveCD - буква привода CD(Например, F:)

procedure Door_Lock(DriveCD:string; Locked:boolean);
const IOCTL_STORAGE_MEDIA_REMOVAL = $002D4804;
var hDrive : THandle;
Returned : DWORD;
DisableEject : boolean;
Drv: string;
begin
Drv:= "\\.\"+DriveCd;
hDrive := CreateFile(PChar(Drv), GENERIC_READ, FILE_SHARE_READ, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
if GetLastError <> 0 then
MessageDlg("Ошибка:"+IntToStr(GetLastError), mtError, [mbOK], 0);
try
DisableEject := Locked;
if not DeviceIoControl(hDrive,
IOCTL_STORAGE_MEDIA_REMOVAL,
@DisableEject,
sizeof(DisableEject),
nil,
0,
Returned,
nil) then
MessageDlg("Ошибка:"+IntToStr(GetLastError), mtError, [mbOK], 0);
finally
CloseHandle(hDrive);
end;
end;


 
Dakis ©   (2003-12-17 21:34) [3]

procedure Lock(Locking : Boolean);
var
Returned: Cardinal;
hDrive : HWND;
begin
hDrive:=CreateFile("\\.\H:",GENERIC_READ, FILE_SHARE_READ, nil, OPEN_EXISTING, 0, 0);
DeviceIoControl(hDrive,PREVENT_MEDIA_REMOVAL, @Boolean(Locking), sizeof(DisableEject), nil, 0, Returned, nil);
FileClose(HDrive);
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.032 c
7-80321
KommandorDi
2003-12-03 18:06
2004.02.25
Ошибка при автозагрузке вместе с Windows


14-80120
psyched
2004-02-02 17:42
2004.02.25
Исходные тексты VCL


1-79929
senya
2004-02-06 18:03
2004.02.25
Выдает сообщение Out Of Memory


4-80344
BKGG
2003-12-19 13:22
2004.02.25
Как можно создать Stringgrid с помощю API.


1-79703
Karlson
2004-02-10 21:00
2004.02.25
Запрет нажатия *