我试图从我的NVMe SSD读取1块数据。我将NVMeCmd设置如下:
NVMeCmd[0] = 2; //OPC = 2 for I/O Read
NVMeCmd[1] = 1; //NSID = 1
NVMeCmd[6] = &pMyBuffer[0]; //Set PRP1 to address of buffer
NVMeCmd[10] = 0; //Start LBA = 0
NVMeCmd[12] = 0; //1-block read (it is 0-based counting)
我还在NVME_PASS_THROUGH_IOCTL结构中设置了QueueID = 1(我已经验证我有11个I / O提交队列和1个I / O完成队列。
但每次我向DeviceIoControl发出此命令时,:: GetLastError()都会返回0x45D(即"由于设备I / O错误,请求无法执行)。
Thanxs提供任何帮助!