91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

createfilemapping函數怎么用

小億
104
2023-07-12 21:40:55
欄目: 編程語言

CreateFileMapping函數是Windows API中的一個函數,用于創建一個文件映射對象。它的語法如下:

HANDLE CreateFileMapping(

HANDLE hFile,

LPSECURITY_ATTRIBUTES lpAttributes,

DWORD flProtect,

DWORD dwMaximumSizeHigh,

DWORD dwMaximumSizeLow,

LPCTSTR lpName

);

參數說明:

  • hFile:要映射到文件的句柄。可以是一個打開的文件句柄,或者是INVALID_HANDLE_VALUE表示映射一個物理磁盤文件,或者是NULL表示映射一個頁文件。

  • lpAttributes:指向SECURITY_ATTRIBUTES結構體的指針,用于指定映射對象的安全描述符。如果為NULL,則映射對象默認為不可繼承的。

  • flProtect:指定映射對象的訪問保護方式,可以是以下值之一:

  • PAGE_READONLY:只讀訪問

  • PAGE_READWRITE:可讀可寫訪問

  • PAGE_WRITECOPY:可寫拷貝訪問

  • PAGE_EXECUTE:可執行訪問

  • PAGE_EXECUTE_READ:可執行可讀訪問

  • PAGE_EXECUTE_READWRITE:可執行可讀可寫訪問

  • PAGE_EXECUTE_WRITECOPY:可執行可寫拷貝訪問

  • dwMaximumSizeHigh:表示映射對象的最大大小,高32位字節。如果為0,則表示映射整個文件。

  • dwMaximumSizeLow:表示映射對象的最大大小,低32位字節。

  • lpName:映射對象的名稱。可以為NULL,表示創建一個無名稱的映射對象。

CreateFileMapping函數的返回值是一個HANDLE類型的映射對象句柄,如果創建映射對象失敗,則返回NULL。

下面是一個示例代碼,演示如何使用CreateFileMapping函數創建一個映射對象:

#include <Windows.h>
int main() {
HANDLE hFile = CreateFile(
"test.txt",
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_ALWAYS,
FILE_ATTRIBUTE_NORMAL,
NULL
);
if (hFile == INVALID_HANDLE_VALUE) {
// 創建文件失敗
return 1;
}
HANDLE hMapping = CreateFileMapping(
hFile,
NULL,
PAGE_READWRITE,
0,
0,
NULL
);
if (hMapping == NULL) {
// 創建映射對象失敗
CloseHandle(hFile);
return 1;
}
// 使用映射對象進行文件操作
// 關閉映射對象和文件句柄
CloseHandle(hMapping);
CloseHandle(hFile);
return 0;
}

以上代碼創建了一個文件句柄hFile,并使用該句柄創建一個映射對象hMapping。然后可以在映射對象上進行文件操作。最后記得關閉映射對象和文件句柄。

0
刚察县| 大同市| 吉林市| 高唐县| 万年县| 武邑县| 平安县| 两当县| 九江市| 荥阳市| 文化| 玉林市| 化德县| 大足县| 嘉定区| 龙门县| 手游| 唐山市| 襄汾县| 明光市| 巴东县| 雷州市| 恩平市| 南城县| 缙云县| 浑源县| 普安县| 靖西县| 长岭县| 嘉善县| 弥渡县| 崇阳县| 房山区| 咸丰县| 北宁市| 瑞丽市| 抚松县| 玉溪市| 原平市| 临颍县| 浦北县|