我对一个磁盘进行读取一个扇区时出现:参数不正确。代码如下:m_hDisk = CreateFileA("\\.\C:", GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE,
NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
这个函数式打开某个磁盘如:\\.\C: 
现在用ReadFile来读取这个磁盘LARGE_INTEGER li;  //这个是用来设置读取的位置
li.QuadPart = 0 * 512;  //从开始位置开始
DWORD dwRet = SetFilePointer(m_hDisk, li.LowPart, &li.HighPart, FILE_BEGIN);  //这一步是成功的DWORD dwRead = 1 * 512;  //读取一个扇区
char* pBuf = new char[512];
BOOL bRet = ReadFile(m_hDisk, pBuf, dwRead, &dwRet, NULL);
到这里就出现ReadFile参数不正确了,求各位大神看看,这个是哪里的问题
ReadFile