IOCTL_CHANGER_EXCHANGE_MEDIUM IOCTL (ntddchgr.h)

将一段媒体从源元素移动到一个目标,将最初在第一个目标中的媒体片段移动到第二个目标。 源和第二个目标通常相同,这实质上交换了两个媒体片段。

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

Irp->AssociatedIrp.SystemBuffer 上的缓冲区包含 CHANGER_EXCHANGE_MEDIUM 数据,该数据指示源、目标以及是否应翻转两个媒体(假设设备支持双面媒体)。

输入缓冲区长度

I/O 堆栈位置中的 Parameters.DeviceIoControl.InputBufferLength 指示参数缓冲区的大小(以字节为单位),必须 >= sizeof(CHANGER_EXCHANGE_MEDIUM)。

输出缓冲区

没有。

输出缓冲区长度

没有。

状态块

信息 字段设置为零。 状态 字段设置为STATUS_SUCCESS,或者可能设置为STATUS_DESTINATION_ELEMENT_FULL、STATUS_INFO_LENGTH_MISMATCH、STATUS_INSUFFICIENT_RESOURCES、STATUS_INVALID_DEVICE_REQUEST、STATUS_INVALID_ELEMENT_ADDRESS、STATUS_INVALID_PARAMETER或STATUS_SOURCE_ELEMENT_EMPTY。

要求

要求 价值
标头 ntddchgr.h (包括 Ntddchgr.h)

另请参阅

CHANGER_EXCHANGE_MEDIUM

ChangerExchangeMedium