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

Вниз

Как программно замедлить скорость вращения CD-ROMа   Найти похожие ветки 

 
delpher_g   (2007-11-27 14:43) [0]

Ув. мастера!
Подскажите как можно в Дельфи программно замедлить скорость вращения CD-ROM"а до минимума, а потом восстановить до максимума.
Если возможно с примерами.
Спасибо.


 
Rouse_ ©   (2007-11-27 15:30) [1]

uses ASPI; // в инете где-то лежит

function SetCDSpeed(Host,Target:byte;Speed:integer):BOOL;
var
 dwASPIStatus: DWORD;
 hEvent: THandle;
 srbExec: SRB_ExecSCSICmd;
begin
 if Speed<176 then result:=false
 else
 begin
 hEvent:=CreateEvent(nil, true, false, nil);
 Fillchar(srbExec,sizeof(SRB_ExecSCSICmd),0);
 srbExec.SRB_Cmd:= SC_EXEC_SCSI_CMD;
 srbExec.SRB_Flags:= SRB_DIR_OUT or SRB_EVENT_NOTIFY;
 srbExec.SRB_Target:= Target;
 srbExec.SRB_HaId:= Host;
 srbExec.SRB_Lun:= 0;
 srbExec.SRB_SenseLen:= SENSE_LEN;
 srbExec.SRB_CDBLen:= 12;
 srbExec.SRB_PostProc:=Pointer(hEvent);
 srbExec.CDBByte[0]:= $BB; // команда изменения скорости привода
 srbExec.CDBByte[2]:= Speed shr 8;
 srbExec.CDBByte[3]:= Speed;
 srbExec.CDBByte[4]:= $FF;
 srbExec.CDBByte[5]:= $FF;
 ResetEvent(hEvent);
 dwASPIStatus:= SendASPI32Command(@srbExec);
 if dwASPIStatus=SS_PENDING
 then
 begin
   WaitForSingleObject(hEvent,INFINITE);
 end;
 if srbExec.SRB_Status<>SS_COMP
 then
 begin
   MessageBox(0,"Error processing the SRB.","Error",MB_OK);
   result:=false;
 end
 else
 result:=true;
 end;
end;


 
slow!alfamoon!com   (2007-11-27 17:14) [2]

инклуды искать например на http://delphi-jedi.org/



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
2-1217104217
++vist++
2008-07-27 00:30
2008.09.14
Как считать коды яркостей RGB


2-1217528751
deras
2008-07-31 22:25
2008.09.14
Как (какой прогой) читать архив форумов?


15-1215880737
No_Dead
2008-07-12 20:38
2008.09.14
от нечего делать &amp;#151; задумался (IT и автомобили)


15-1216708121
Dennis I. Komarov
2008-07-22 10:28
2008.09.14
Порекомендуйте снифф


2-1217593979
l_v
2008-08-01 16:32
2008.09.14
NetShareAdd