GETVERSIONINPARAMS 结构 (ntdddisk.h)
GETVERSIONINPARAMS 结构与 SMART_GET_VERSION 请求结合使用,以检索指示设备的版本信息、功能掩码和位掩码。
语法
typedef struct _GETVERSIONINPARAMS {
UCHAR bVersion;
UCHAR bRevision;
UCHAR bReserved;
UCHAR bIDEDeviceMap;
ULONG fCapabilities;
ULONG dwReserved[4];
} GETVERSIONINPARAMS, *PGETVERSIONINPARAMS, *LPGETVERSIONINPARAMS;
成员
bVersion
包含一个整数,指示二进制驱动程序的版本号。
bRevision
包含一个整数,指示二进制驱动程序的修订号。
bReserved
保留。
bIDEDeviceMap
包含位图。 下表解释了位图的含义:
位图标志 | 含义 |
---|---|
位 0 设置为 1。 | 设备是 SATA 驱动器或 IDE 驱动器。 如果是 IDE 驱动器,则它是主通道上的主设备。 |
位 1 设置为 1。 | 设备是 IDE 驱动器,是主通道上的从属设备。 |
位 2 设置为 1。 | 设备是 IDE 驱动器,是辅助通道上的主设备。 |
位 3 设置为 1。 | 设备是 IDE 驱动器,是辅助通道上的从属设备。 |
位 4 设置为 1。 | 设备是 ATAPI 驱动器,是主通道上的主设备。 |
位 5 设置为 1。 | 设备是 ATAPI 驱动器,是主通道上的从属设备。 |
位 6 设置为 1。 | 设备是 ATAPI 驱动器,它是辅助通道上的主设备。 |
位 7 设置为 1。 | 设备是 ATAPI 驱动器,是辅助通道上的从属设备。 |
fCapabilities
包含驱动程序功能的位掩码。
位图标志 | 含义 |
---|---|
CAP_ATA_ID_CMD | 设备支持 ATA ID 命令。 |
CAP_ATAPI_ID_CMD | 设备支持 ATAPI ID 命令。 |
CAP_SMART_CMD | 设备支持 SMART 命令。 |
dwReserved[4]
保留。
注解
SMART_GET_VERSION控制代码返回设备的版本信息、功能掩码和位掩码。 此 IOCTL 必须由支持 Self-Monitoring 分析和报告技术的驱动程序处理 (SMART) 。
输入参数
Parameters.DeviceIoControl.OutputBufferLength 指示缓冲区的大小(以字节为单位),该缓冲区必须 >= sizeof (GETVERSIONINPARAMS) 。
输出参数
驱动程序将信息返回到 Irp-AssociatedIrp.SystemBuffer> 的缓冲区。
I/O 状态块
驱动程序将“状态”字段设置为“STATUS_SUCCESS”时,将“信息”字段设置为 size of (GETVERSIONINPARAMS) 。 否则,驱动程序会将“信息”字段设置为 0,并将“状态”字段设置为可能STATUS_INVALID_PARAMETER。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 |
标头 | ntdddisk.h (包括 Ntdddisk.h) |