Поделиться через


Функция ChangerGetParameters (mcd.h)

ChangerGetParameters обрабатывает аспекты IRP управления устройствами с помощью кода IOCTL IOCTL_CHANGER_GET_PARAMETERS.

Синтаксис

NTSTATUS ChangerGetParameters(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] PIRP           Irp
);

Параметры

[in] DeviceObject

Указатель на объект устройства, представляющий средство изменения.

[in] Irp

Указатель на IRP.

Возвращаемое значение

ChangerGetParameters возвращает значение STATUS_XXX, возвращаемое драйвером системного порта или одним из следующих значений:

STATUS_SUCCESS

STATUS_INFO_LENGTH_MISMATCH

STATUS_INSUFFICIENT_RESOURCES

Замечания

Эта подпрограмма требуется.

ChangerGetParameters возвращает параметры изменяющегося объекта, включая число и тип его элементов и поддерживаемые функциональность.

Драйвер класса changer проверяет длину выходного буфера в расположении стека ввода-вывода перед вызовом ChangerGetParameters. Если длина выходного буфера меньше размера(GET_CHANGER_PARAMETERS), драйвер класса changer возвращается со значением STATUS_INFO_LENGTH_MISMATCH.

ChangerGetParameters извлекает данные параметров с устройства, создавая СБР с cdBs, чтобы получить страницу заголовка параметра SCSI, страницу адреса элемента, страницу геометрии транспорта и страницу возможностей устройства или эквивалент не SCSI этих данных.

ChangerGetParameters затем заполняет структуру GET_CHANGER_PARAMETERS по Irp—>AssociatedIrp.SystemBuffer перед возвращением в драйвер класса changer.

Требования

Требование Ценность
целевая платформа Настольный
заголовка mcd.h (включая Mcd.h, Ntddchgr.h)
IRQL PASSIVE_LEVEL

См. также

GET_CHANGER_PARAMETERS

IOCTL_CHANGER_GET_PARAMETERS