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 識別碼命令。 |
CAP_SMART_CMD | 裝置支援SMART命令。 |
dwReserved[4]
保留的。
備註
SMART_GET_VERSION控件程式代碼會傳回裝置的版本資訊、功能遮罩和位掩碼。 此 IOCTL 必須由支援 Self-Monitoring Analysis and Reporting Technology (SMART) 的驅動程序處理。
輸入參數
Parameters.DeviceIoControl.OutputBufferLength 指出緩衝區的大小,以位元組為單位,緩衝區的大小必須是 >= sizeof (GETVERSIONINPARAMS) 。
輸出參數
驅動程式會將資訊傳回至 Irp-AssociatedIrp.SystemBuffer> 的緩衝區。
I/O 狀態區塊
驅動程式會將 [資訊] 字段設定為 sizeof (GETVERSIONINPARAMS) ,當它將 [狀態] 字段設定為 [STATUS_SUCCESS]。 否則,驅動程式會將 [資訊] 字段設定為零,並將 [狀態] 字段設定為可能STATUS_INVALID_PARAMETER。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 |
標頭 | ntdddisk.h (包含 Ntdddisk.h) |