关于ReadFile函数求助
本人新手,想写一个直接读写设备物理扇区内容的程序,最后卡在ReadFile函数上,返回错误87,求大神帮忙
int CSectorDlg::ReadSector()
{
char devName[] = "\\\\.\\i:";
byte buffer[8] ;
DWORD bytesPerSector = 10;
HANDLE hFile = CreateFile(devName, GENERIC_READ, FILE_SHARE_READ , NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL );
if(hFile == INVALID_HANDLE_VALUE)
{
cout<<"CreateFile error: "<<GetLastError()<<std::endl;
return 0;
}
DWORD byteRead ;
SetFilePointer(hFile, 1, NULL, FILE_BEGIN);
ReadFile(hFile, buffer, 10, &byteRead, NULL);
if (byteRead == 0)
{
//<<"ReadFile error:"<<GetLastError()<<endl;
TCHAR str[20];
DWORD dw = GetLastError();
wsprintf(str, "%u", dw);
MessageBox(str, "Show a DWORD", MB_OK);
return -1;
}
CloseHandle(hFile);
return 0;
}