1

我想向 SAS(SATA 附加 SCSI)总线上的驱动器发送“ATA Pass through Direct”命令。驱动器为 SATA 驱动器,在 Windows XP(x86) 环境下。我希望有一个 STP(SATA 隧道协议)层可以将 ATA 命令转换为 STP,以通过 SCSI 总线发送到我的 SATA 驱动器。但是,当向 Win32 API DeviceIOControl() 发送“ATA Pass through direct”命令时,状态返回错误“错误功能”。Windows XP 中是否存在 STP 层,它必须,Win32 API Readfile()/Writefile() 工作。但是如何让“ATA Pass through direct”命令与 SAS 总线上的 Win32 API 一起工作?

4

1 回答 1

2

如果驱动器被 Windows XP 识别为 SCSI,那么您将不得不使用IOCTL_SCSI_PASS_THROUGH_DIRECT并使用 SCSI 到 ATA 转换协议来发送所需的 ATA 命令。SAT 规范可以在这里找到。

于 2011-04-07T05:39:51.337 回答