Аппаратное обеспечение персонального компьютера

Запись IOCTL Output


При помощи команды IOCTL Output программа может заставить драйвер выполнять различные операции, такие как управление механизмом извлечения компакт-диска.

Формат заголовка запроса:

// ---------------

// Код команды 12

// ---------------

#pragma pack(1)

typedef struct _IOCTL_Output

{            

  ReqHdr rh;

  BYTE   bMediaDescriptor;

  DWORD  lpTransferAddress;

  WORD   wDataSize;

  WORD   wStartSector;



  DWORD  lpVolID;

} IOCTL_Output;      

Заполнение полей заголовка запроса:

Поле

Описание

rh.wStatus

После вызова драйвера содержит слово состояния

bMediaDescriptor

Байт описания среды носителя данных, должен быть равен нулю

lpTransferAddress

Адрес буфера

wDataSize

Размер буфера

wStartSector

Номер начального сектора, должен быть равен нулю

lpVolID

Указатель на идентификатор тома, если при выполнении команды возникла ошибка с кодом 0Fh

Рассмотрим форматы заголовков различных функций, выполняемых в рамках команды IOCTL Output.



Содержание раздела