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创建一个无名的文件映射 |