Winapi CreateFileMappingA是否写入文件?

Winapi CreateFileMappingA是否写入文件?,winapi,file-io,Winapi,File Io,我正在调试某个WinAPI应用程序。 在调用函数CreateFileMappingA之前,文件大小为0Kb。调用该函数后,该文件立即传遍200Kb。我试图浏览在线WindowsAPI文档,但没有发现(或者可能不理解)函数调用后是否会发生文件写入。flProtect参数的值为PAGE\u READWRITE 我真的很想知道这个函数到底做了什么,尤其是为什么要写入文件 经过一些研究,我发现函数CreateFileMappingA的调用方式如下: CreateFileMappingA(fh,NULL,

我正在调试某个WinAPI应用程序。
在调用函数
CreateFileMappingA
之前,文件大小为0Kb。调用该函数后,该文件立即传遍200Kb。我试图浏览在线WindowsAPI文档,但没有发现(或者可能不理解)函数调用后是否会发生文件写入。
flProtect
参数的值为
PAGE\u READWRITE


我真的很想知道这个函数到底做了什么,尤其是为什么要写入文件

经过一些研究,我发现函数CreateFileMappingA的调用方式如下:
CreateFileMappingA(fh,NULL,PAGE_READWRITE,0,0x336BC,“kll”)
根据文档,如果文件大小小于映射目标的长度,则文件将扩展以适合该大小。
因此,在我的例子中,文件刚刚创建。

fh = CreateFileA("file2.dat", GENERIC_READ | GENERIC_WRITE, FILE_SHARE_WRITE,
        NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);


因此,首先,将使用写权限创建文件“file2.dat”。这将是0Kb。然后,在上面调用CreateFileMappingA之后,文件大小将是0x336BC字节或206Kb。

您阅读了关于文件映射的文档了吗?你知道什么是文件映射吗?我在微软的在线文档中读了一些关于文件映射的内容。但我不是高级程序员:(,所以有时候文档中的概念对我来说很难掌握。文件映射不是文件。函数是否写入文件?否@RomanR。文件是在调用后立即写入的。所以,我有权怀疑吗?@Toni文件是创建的,但不是写入的。