Compartir a través de


Función ChangerGetElementStatus (mcd.h)

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

Sintaxis

NTSTATUS ChangerGetElementStatus(
  [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

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

STATUS_SUCCESS

STATUS_INFO_LENGTH_MISMATCH

STATUS_INSUFFICIENT_RESOURCES

STATUS_INVALID_DEVICE_REQUEST

STATUS_INVALID_ELEMENT_ADDRESS

Si VolumeTagInfo está establecido para un modificador que no admite información de etiquetas de volumen, ChangerGetElementStatus devuelve STATUS_INVALID_PARAMETER.

Observaciones

Esta rutina es necesaria.

ChangerGetElementStatus devuelve el estado y, opcionalmente, la información de etiquetas de volumen para todos los elementos de un modificador o el estado de un número específico de elementos de un tipo determinado.

El controlador de clase changer comprueba las longitudes del búfer de entrada y salida en la ubicación de la pila de E/S antes de llamar a ChangerGetElementStatus.

Irp:>SystemBuffer apunta a una estructura de CHANGER_READ_ELEMENT_STATUS como parámetro de entrada que indica los elementos para los que se va a notificar el estado y si se va a notificar información de etiquetas de volumen.

ChangerGetElementStatus primero compila un SRB con un CDB para leer el comando de estado del elemento y lo envía al controlador de puerto del sistema para recuperar el estado de los elementos del modificador. Para la mayoría de los tipos de elementos, ChangerGetElementStatus rellena una estructura de CHANGER_ELEMENT_STATUS en Irp->AssociatedIrp.SystemBuffer para cada elemento para el que notifica el estado. Sin embargo, algunos elementos de tipo ChangerDrive devolver datos de información del producto. Si el dispositivo proporciona información del producto, el controlador de miniclase debe notificar los datos de estado del elemento en una estructura de tipo CHANGER_ELEMENT_STATUS_EX en lugar de usar CHANGER_ELEMENT_STATUS. ChangerGetElementStatus debe indicar que la información del producto está presente estableciendo ELEMENT_STATUS_PRODUCT_DATA en el miembro Flags de la estructura.

ChangerGetElementStatus establece el campo Information en el bloque de estado de E/S en el número de bytes devueltos antes de volver al controlador de clase changer.

Requisitos

Requisito Valor
de la plataforma de destino de Escritorio
encabezado de mcd.h (incluya Mcd.h, Ntddchgr.h)
irQL PASSIVE_LEVEL

Consulte también

CHANGER_ELEMENT

CHANGER_ELEMENT_LIST

CHANGER_ELEMENT_STATUS

CHANGER_ELEMENT_STATUS_EX

CHANGER_READ_ELEMENT_STATUS

changerGetStatus de

ChangerInitializeElementStatus

ChangerQueryVolumeTags

IOCTL_CHANGER_GET_ELEMENT_STATUS