IOCTL_CHANGER_GET_ELEMENT_STATUS IOCTL (ntddchgr.h)

返回所有元素的状态或特定类型的指定数量的元素的状态。

有关可能的元素类型的说明,请参阅 CHANGER_ELEMENT

主要代码

IRP_MJ_DEVICE_CONTROL

输入缓冲区

Irp->AssociatedIrp.SystemBuffer 的缓冲区包含指示要返回状态的元素类型和元素数的 CHANGER_READ_ELEMENT_STATUS 数据。

如果调用方将 VolumeTagInfo 成员CHANGER_READ_ELEMENT_STATUS设置为 TRUE,则返回的元素状态将包括卷标记信息。

输入缓冲区长度

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

输出缓冲区

changer miniclass 驱动程序返回缓冲区中的 changer 元素状态数据,Irp->AssociatedIrp.SystemBufferChangerDrive 类型的某些元素 返回产品信息数据。 如果设备提供产品信息,微型类驱动程序将报告类型为 CHANGER_ELEMENT_STATUS_EX的元素状态数据。 微型类驱动程序在 标志 结构成员中设置ELEMENT_STATUS_PRODUCT_DATA,以指示它包含产品信息数据。 对于除 ChangerDrive以外的所有类型的元素,驱动程序将报告类型 CHANGER_ELEMENT_STATUS结构中的元素状态数据。

输出缓冲区长度

Parameters.DeviceIoControl.OutputBufferLength 指示输出的参数缓冲区的大小(以字节为单位)。 对于 ChangerDrive类型的元素,此值必须 >= NumberOfElements * sizeof(CHANGER_ELEMENT_STATUS_EX)。 对于所有其他类型的元素,此值必须 >= NumberOfElements * sizeof(CHANGER_ELEMENT_STATUS)。

状态块

信息 字段设置为返回的字节数。 状态 字段设置为STATUS_SUCCESS,或者可能设置为STATUS_BUFFER_TOO_SMALL、STATUS_INFO_LENGTH_MISMATCH、STATUS_INSUFFICIENT_RESOURCES、STATUS_INVALID_ELEMENT_ADDRESS或STATUS_INVALID_PARAMETER。

要求

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

另请参阅

CHANGER_ELEMENT

CHANGER_ELEMENT_STATUS

CHANGER_ELEMENT_STATUS_EX

ChangerGetElementStatus