Compartir a través de


Función ChangerMoveMedium (mcd.h)

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

Sintaxis

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

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

STATUS_SUCCESS

STATUS_DESTINATION_ELEMENT_FULL

STATUS_INVALID_ELEMENT_ADDRESS

STATUS_INVALID_DEVICE_REQUEST

STATUS_INVALID_PARAMETER

STATUS_INSUFFICIENT_RESOURCES

STATUS_SOURCE_ELEMENT_EMPTY

Comentarios

Esta rutina es necesaria.

ChangerMoveMedium mueve un elemento multimedia de un elemento a otro.

El controlador de clase changer comprueba la longitud del búfer de entrada en la ubicación de la pila de E/S antes de llamar a ChangerMoveMedium. Irp-SystemBuffer>apunta a una estructura de CHANGER_MOVE_MEDIUM que indica el elemento de transporte, el origen, el destino y si se va a voltear el medio.

ChangerMoveMedium comprueba primero que las direcciones del elemento de transporte, origen y destino son válidas y, a continuación, convierte las direcciones de elementos de base cero en direcciones específicas del dispositivo. A continuación, crea una SRB con un CDB para mover el elemento de medio y enviarlo al controlador de puerto del sistema.

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

Requisitos

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

Consulte también

,

CHANGER_ELEMENT

CHANGER_MOVE_MEDIUM

ChangerExchangeMedium