共用方式為


IOCTL_SCSI_GET_CAPABILITIES IOCTL (ntddscsi.h)

傳回基礎 SCSI HBA 的功能和限制。 MaximumTransferLengthAlignmentMask 成員中會傳回最重要的資訊。 IOCTL_SCSI_PASS_THROUGH IOCTL_SCSI_PASS_THROUGH_DIRECT的類別驅動程式和 用戶 必須接受這些限制。

只有舊版驅動程式可以發出此要求。 如果要求傳送至埠驅動程式所建立的 PDO,要求就會失敗。

若要取得 SCSI 功能數據,隨插即用 驅動程式必須針對驅動程式已新增 (的每個裝置發出IOCTL_STORAGE_QUERY_PROPERTYSTORAGE_ADAPTER_DESCRIPTOR數據的 PDO 要求,也就是驅動程式收到 AddDevice 呼叫) 。 舊版驅動程序應該將此要求轉送至埠驅動程式。 如果傳送至適配卡的 FDO,此要求就會失敗。

注意 未來可能會變更或無法使用 SCSI 埠驅動程式和 SCSI 迷你埠驅動程式模型。 相反地,我們建議使用 Storport 驅動程式Storport 迷你埠 驅動程式模型。
 

主要程序代碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

無。

輸入緩衝區長度

無。

輸出緩衝區

更新IO_SCSI_CAPABILITIES資訊會傳回至 Irp-AssociatedIrp.SystemBuffer> 的緩衝區。

輸出緩衝區長度

I/O 堆棧位置中的 Parameters.DeviceIoControl.OutputBufferLength 表示緩衝區的大小,以位元組為單位,這必須是 >= sizeof (IO_SCSI_CAPABILITIES) 。

狀態區塊

[資訊] 欄位包含輸出緩衝區中傳回的位元組數目。 [ 狀態 ] 欄位會指出作業的結果。

規格需求

需求
標頭 ntddscsi.h (包含 Ntddscsi.h)

另請參閱

IO_SCSI_CAPABILITIES