Función ChangerInitializeElementStatus (mcd.h)

ChangerInitializeElementStatus controla los aspectos específicos del dispositivo de un IRP de control de dispositivo con el código IOCTL IOCTL_CHANGER_INITIALIZE_ELEMENT_STATUS.

Sintaxis

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

Parámetros

[in] DeviceObject

Puntero al objeto de dispositivo que representa el modificador.

[in] Irp

Puntero al IRP.

Valor devuelto

ChangerInitializeElementStatus devuelve el estado devuelto por el controlador de puerto del sistema o uno de los siguientes valores:

STATUS_SUCCESS

STATUS_INVALID_PARAMETER

STATUS_INSUFFICIENT_RESOURCES

Si el modificador no admite la inicialización de un intervalo de elementos de un tipo determinado y se llama a ChangerInitializeElementStatus con un tipo de elemento distinto de AllElements, devuelve STATUS_INVALID_PARAMETER.

Comentarios

Esta rutina es necesaria.

ChangerInitializeElementStatus actualiza la memoria interna del modificador con información actual sobre sus elementos.

El controlador de clase del modificador comprueba la longitud del búfer de entrada en la ubicación de la pila de E/S antes de llamar a ChangerInitializeElementStatus.

Irp-SystemBuffer> apunta a una estructura de CHANGER_INITIALIZE_ELEMENT_STATUS como parámetro de entrada que indica los elementos para los que se va a inicializar el estado y si se va a inicializar el estado del elemento con los datos obtenidos a partir de etiquetas de código de barras.

Para un modificador SCSI, ChangerInitializeElementStatus compila una SRB con un CDB para inicializar el estado del elemento, traduce las direcciones de elementos de base cero a direcciones específicas del dispositivo y envía la SRB al controlador de puerto del sistema.

ChangerInitializeElementStatus establece el campo Información del bloque de estado de E/S en sizeof(CHANGER_INITIALIZE_ELEMENT_STATUS) antes de volver al controlador de clase de modificador.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado mcd.h (incluye Mcd.h, Ntddchgr.h)
IRQL PASSIVE_LEVEL

Consulte también

CHANGER_ELEMENT_LIST

CHANGER_INITIALIZE_ELEMENT_STATUS

ChangerGetElementStatus