2011-02-03 19 views
1

SAS(SATA接続SCSI)バス上にあるドライブに「ATA Pass Through Direct」コマンドを送信したいとします。 Windows XP(x86)環境では、ドライブはSATAドライブです。私は、SCSIバスを介してSATAドライブに送るために、ATAコマンドをSTPに変換するSTP(SATA Tunneled Protocol)層があることを期待していました。ただし、Win32 APIのDeviceIOControl()を使用して「ATA Pass through direct」コマンドを送信すると、ステータスが「間違った関数」というエラーを返します。 Windows XPにSTPレイヤーが存在するかどうか、Win32 API Readfile()/ Writefile()が動作する必要があります。しかし、「ATA Pass through direct」コマンドを使用して、SASバス上のWin32 APIを操作するにはどうすればよいですか?Windows XPのSASバス上でATAパススルー経由で直接

答えて

2

Windows XPでドライブがSCSIとして認識された場合は、IOCTL_SCSI_PASS_THROUGH_DIRECTを使用し、SCSIからATAへの変換プロトコルを使用して必要なATAコマンドを送信する必要があります。 SATの仕様はhereです。

関連する問題