求大神C盘最后一个扇区数据读写的问题

qq_35757392 2018-07-19 10:05:23
HANDLE m_hDevice = CreateFileA(
"\\\\.\\C:",GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
OPEN_EXISTING, NULL, NULL);
if (m_hDevice == INVALID_HANDLE_VALUE){
m_hDevice = NULL;
printf("CreateFileA error!!\n");
return -1;
}

ULARGE_INTEGER FreeAv, TotalBytes, FreeBytes;
GetDiskFreeSpaceExW(L"C:", &FreeAv, &TotalBytes, &FreeBytes);

LARGE_INTEGER liCurrentPosition;
liCurrentPosition.QuadPart = TotalBytes.QuadPart - 512; //最后
SetFilePointerEx(m_hDevice, liCurrentPosition, &liCurrentPosition, FILE_BEGIN);
DWORD DCount = 0; //计数}
char lpOutBuffer512[1024];
BOOL bResult = ReadFile(m_hDevice, lpOutBuffer512, 1024, &DCount, NULL);
for (int i = 0; i < 1024; i++)
printf("%c\t", lpOutBuffer512[i]);
CloseHandle(m_hDevice);
getchar();

return 0;
}
...全文
223 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

21,595

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧