【问题标题】:CreateFileMapping() fails for Volume卷的 CreateFileMapping() 失败
【发布时间】:2012-01-08 23:42:04
【问题描述】:

我在将部分卷映射到内存时遇到问题。卷已成功打开,我可以从中读取,但 CreateFileMapping() 失败。 GetLastError() 返回 87,其中following 的意思是:“参数不正确。”我已经创建了卷的图像,并且处理正确。这就是我打开文件和创建映射的方式:

/* open function */
fd->handle = CreateFile(name, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
/* mapping function */
LARGE_INTEGER li;
li.QuadPart = offset;
handle = CreateFileMapping(fd->handle, NULL, PAGE_READONLY, li.u.HighPart, li.u.LowPart, NULL);

我正在使用 Windows XP SP3(但代码也应该适用于较新版本),管理员帐户。

【问题讨论】:

    标签: c windows winapi mapping


    【解决方案1】:

    CreateFileMapping 仅支持映射文件。它返回“参数不正确”,因为句柄不是文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-11
      • 1970-01-01
      • 2021-04-05
      • 1970-01-01
      • 2017-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多