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


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

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

Синтаксис

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

Параметры

[in] DeviceObject

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

[in] Irp

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

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

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

STATUS_SUCCESS

STATUS_INVALID_PARAMETER

STATUS_INSUFFICIENT_RESOURCES

Если средство изменения не поддерживает инициализацию диапазона элементов определенного типа и метод ChangerInitializeElementStatus вызывается с типом элемента, отличного от AllElements, он возвращает STATUS_INVALID_PARAMETER.

Комментарии

Эта подпрограмма является обязательной.

ChangerInitializeElementStatus обновляет внутреннюю память модуля изменения с текущей информацией об его элементах.

Драйвер класса changer проверяет длину входного буфера в расположении стека ввода-вывода перед вызовом ChangerInitializeElementStatus.

Irp-SystemBuffer> указывает на структуру CHANGER_INITIALIZE_ELEMENT_STATUS в качестве входного параметра, указывающего элементы, для которых инициализируется состояние, и указывает, следует ли инициализировать состояние элемента данными, полученными из меток штрихкода.

Для устройства изменения SCSI ChangerInitializeElementStatus создает SRB с CDB для инициализации состояния элемента, преобразует отсчитываемые от нуля адреса элементов в адреса, относящиеся к устройству, и отправляет SRB драйверу системного порта.

ChangerInitializeElementStatus устанавливает для поля Information в блоке состояния ввода-вывода значение sizeof(CHANGER_INITIALIZE_ELEMENT_STATUS) перед возвратом к драйверу класса changer.

Требования

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

См. также раздел

CHANGER_ELEMENT_LIST

CHANGER_INITIALIZE_ELEMENT_STATUS

ChangerGetElementStatus