Поскольку у некоторых пользователей может быть
подключено несколько CD-ROM, мы объявили тип TCDROMs, содержащий в себе
информацию о количестве CD-ROM и массив элементов TCDROM. А теперь давайте напишем
функцию для определения всех имеющихся в системе устройств CD-ROM, объявив
перед этим глобальную переменную Cdroms: TCDROMs.
// в качестве параметра
передаётся количество всех SCSI-адаптеров,
// имеющихся в системе.
Результат работы функции – количество CD-ROM.
function GetCDROMs(var Adapters:Byte): Integer;
var
sh: TSRB_HAInquiry;
sd: TSRB_GDEVBlock;
maxTgt: Byte;
H, T, L: byte;
Begin
Result := 0;
if Adapters = 0 then
exit; // если количество адаптеров 0 –
выходим
// начинаем перебирать все адаптеры
for H := 0 to Adapters - 1 do
begin
FillChar(sh,sizeof(sh),0); // инициализируем структуру TSRB_HAInquiry
// (константа SC_HA_INQUIRY = $00) запрос ASPI для получения
информации
// об адаптерах.
sh.SRB_Cmd := SC_HA_INQUIRY;
sh.SRB_HaID := H;
SendASPI32Command(@sh); // посылаем ASPI
команду
Рекомендуем скачать другие рефераты по теме: шпоры по гражданскому праву, заказать дипломную работу.