zoukankan      html  css  js  c++  java
  • CreateFileMapping

    CreateFileMapping

      VB声明

      Declare Function CreateFileMapping Lib "kernel32" Alias "CreateFileMappingA" (ByVal hFile As Long, lpFileMappigAttributes As SECURITY_ATTRIBUTES, ByVal flProtect As Long, ByVal dwMaximumSizeHigh As Long, ByVal dwMaximumSizeLow As Long, ByVal lpName As String) As Long

      说明

      创建一个新的文件映射对象

      返回值

      Long,新建文件映射对象的句柄;零意味着出错。会设置GetLastError。即使函数成功,但倘若返回的句柄属于一个现成的文件映射对象,那么GetLastError也会设置成ERROR_ALREADY_EXISTS。在这种情况下,文件映射的长度就是现有对象的长度,而不是这个函数指定的尺寸

      参数表

      参数 类型及说明

      hFile Long,指定欲在其中创建映射的一个文件句柄。&HFFFFFFFF&表示在内存中创建一个文件映射

      lpFileMappigAttributes SECURITY_ATTRIBUTES,指定一个安全对象,在创建文件映射时使用。如果为NULL(用ByVal As Long传递零),表示使用默认安全对象

      flProtect Long,下述常数之一:

      PAGE_READONLY 以只读方式打开映射

      PAGE_READWRITE 以可读、可写方式打开映射

      PAGE_WRITECOPY 为写操作留下备份

      可组合使用下述一个或多个常数

      SEC_COMMIT 为文件映射一个小节中的所有页分配内存

      SEC_IMAGE 文件是个可执行文件

      SEC_RESERVE 为没有分配实际内存的一个小节保留虚拟内存空间

      dwMaximumSizeHigh Long,文件映射的最大长度(高32位)

      dwMaximumSizeLow Long,文件映射的最小长度(低32位)。如这个参数和dwMaximumSizeHigh都是零,就用磁盘文件的实际长度

      lpName String,指定文件映射对象的名字。如存在这个名字的一个映射,函数就会打开它。用vbNullString创建一个无名的文件映射

      调用CreateFileMapping的时候GetLastError的对应错误

      ERROR_FILE_INVALID 如果企图创建一个零长度的文件映射

      ERROR_INVALID_HANDLE 内存空间的命名和现有的内存映射, 互斥量, 信号量, 临界区有同名

      ERROR_ALREADY_EXISTS 表示内存空间命名已经存在

  • 相关阅读:
    scrapy安装教程
    【bzoj4200】[Noi2015]小园丁与老司机 STL-map+dp+有上下界最小流
    【bzoj4889】[Tjoi2017]不勤劳的图书管理员 树状数组+分块+二分
    【bzoj4198】[Noi2015]荷马史诗 贪心+堆
    【bzoj2989】数列 KD-tree+旋转坐标系
    【bzoj4212】神牛的养成计划 Trie树+可持久化Trie树
    【bzoj4242】水壶 BFS+最小生成树+倍增LCA
    【bzoj4238】电压 DFS树
    【bzoj4240】有趣的家庭菜园 贪心+树状数组
    【bzoj4237】稻草人 分治+单调栈+二分
  • 原文地址:https://www.cnblogs.com/hackpig/p/1669084.html
Copyright © 2011-2022 走看看