内存映射文件

#include <Windows.h>

int _tmain(int argc, _TCHAR* argv[])
{
TCHAR filePath[]
= TEXT("F:\\sample.txt");
HANDLE hFile
= CreateFile(filePath, GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
HANDLE hFileMapping
= CreateFileMapping(hFile, NULL, PAGE_READWRITE, 0, 0, NULL);
PBYTE pbFile
= (PBYTE)MapViewOfFile(hFileMapping, FILE_MAP_READ | FILE_MAP_WRITE, 0, 0, 0);
//READ
BYTE bSomeByte = pbFile[0];
//WRITE
pbFile[0] = 'A';
FlushViewOfFile(pbFile,
1);
UnmapViewOfFile(pbFile);
CloseHandle(hFileMapping);
CloseHandle(hFile);
return 0;
}

 

posted @ 2010-09-27 20:19  penink  阅读(133)  评论(0)    收藏  举报