gpt4 book ai didi

c++ - 内存映射物理磁盘和卷

转载 作者:行者123 更新时间:2023-11-30 01:00:58 24 4
gpt4 key购买 nike

在 Windows 中,可以通过 CreateFile() 打开设备和卷。之前我已经成功地使用它从设备中读取 ReadFile(),但现在我想切换到内存映射。在下面的代码中,我收到 INVALID_HANDLE_VALUE 作为 b 的值,c 设置为 87ERROR_INVALID_PARAMETER

HANDLE a = ::CreateFileA("\\\\.\\h:", GENERIC_READ, FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_READONLY | FILE_FLAG_NO_BUFFERING, NULL);
HANDLE b = ::CreateFileMappingA(a, NULL, PAGE_READONLY, 0, 0, NULL);
DWORD c = ::GetLastError();

我怎样才能让它工作?

最佳答案

你不能。 CreateFileMapping 只能创建到文件的映射。查看文档中 ReadFile 的 hFile 参数之间的差异和 CreateFileMapping .对于 ReadFile,它列出了它接受的所有不同类型的句柄(包括设备),对于 CreateFileMapping,它只列出了文件。

关于c++ - 内存映射物理磁盘和卷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1628913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com