创建命名共享内存
来源:互联网 发布:网络购物合同纠纷举证 编辑:程序博客网 时间:2024/06/06 02:47
Test1.cpp
#include <Windows.h>#include <iostream>using namespace std;#define BUF_SIZE 256TCHAR szName[] = TEXT("Global\\MyFileMappingObject");TCHAR szMsg[] = TEXT("Message for test file-mapping");int main(){ //----------------------------------------------------- // Create File Mapping //----------------------------------------------------- HANDLE hMapFile; hMapFile = CreateFileMapping( INVALID_HANDLE_VALUE, // use paging file NULL, // default security PAGE_READWRITE, // read/write access 0, // high order DWORD of max object size BUF_SIZE, // low order DWORD of max object size szName); // name of mapping object if (hMapFile == NULL) { cout << "CreateFileMapping failed with error:" << GetLastError() << endl; return 1; } //----------------------------------------------------- // Map View of File //----------------------------------------------------- LPTSTR pBuf = (LPTSTR)MapViewOfFile( hMapFile, // handle to map object FILE_MAP_READ | FILE_MAP_WRITE, // read/write permission 0, // high order DWORD of the file offset 0, // low order DWORD of the file offset BUF_SIZE); // number of bytes to map if (pBuf == NULL) { cout << "MapViewOfFile failed with error:" << GetLastError() << endl; return 2; } //----------------------------------------------------- // Write File and Read File //----------------------------------------------------- memcpy(pBuf, szMsg, sizeof(szMsg)); getchar(); MessageBox(NULL, pBuf, TEXT("File Mapping Test"), MB_OK); //----------------------------------------------------- // Unmap View of File and Close File Map Object //----------------------------------------------------- UnmapViewOfFile(pBuf); CloseHandle(hMapFile); //----------------------------------------------------- // exit //----------------------------------------------------- system("pause"); return 0;}
Test2.cpp
#include <Windows.h>#include <iostream>using namespace std;#define BUF_SIZE 256TCHAR szName[] = TEXT("Global\\MyFileMappingObject");int main(){ //----------------------------------------------------- // Open File Mapping //----------------------------------------------------- HANDLE hMapFile; hMapFile = OpenFileMapping( FILE_MAP_READ | FILE_MAP_WRITE, // read/write access FALSE, // handle not inheritable szName); // name of mapping object if (hMapFile == NULL) { cout << "OpenFileMapping failed with error:" << GetLastError() << endl; return 1; } //----------------------------------------------------- // Map View of File //----------------------------------------------------- LPTSTR pBuf = (LPTSTR)MapViewOfFile( hMapFile, // handle to map object FILE_MAP_READ | FILE_MAP_WRITE, // read/write permission 0, // high order DWORD of the file offset 0, // low order DWORD of the file offset BUF_SIZE); // number of bytes to map if (pBuf == NULL) { cout << "MapViewOfFile failed with error:" << GetLastError() << endl; return 2; } //----------------------------------------------------- // Write File and Read File //----------------------------------------------------- *pBuf = TEXT('H'); MessageBox(NULL, pBuf, TEXT("Test File Mapping"), MB_OK); //----------------------------------------------------- // Unmap View of File and Close File Map Object //----------------------------------------------------- UnmapViewOfFile(pBuf); CloseHandle(hMapFile); //----------------------------------------------------- // exit //----------------------------------------------------- system("pause"); return 0;}
0 0
- 创建命名共享内存
- 创建共享内存
- windows创建共享内存
- shm创建共享内存
- c++ 创建共享内存
- 创建共享内存
- win32创建共享内存
- 创建共享内存 的方式
- qt 创建共享内存举例
- Linux下的共享内存(02)---创建共享内存
- (命名)管道,信号量,消息队列,共享内存,信号,socket
- 创建内存共享的几个步骤:
- 怎样创建和读写共享内存?
- 创建共享内存分以下几个步骤
- 创建或者加载共享内存简单实现
- 创建进程间共享内存映射
- Linux下创建共享内存和测试
- 手动删除shmget创建的共享内存
- 用wordpress搭建博客
- Codeforces534B:Covered Path
- 剑指offer--孩子们的游戏(圆圈中最后剩下的数)
- 织梦DEDE网站后台如何上传附件
- linux常用命令整理总结之一
- 创建命名共享内存
- linux常用命令整理总结之二
- linux常用命令整理之三
- Emacs的C语言排版缩进模式选择
- 黑马程序员_日记58_HashMap自定义对象存取练习
- linux常用命令整理之四
- AsyncTask(异步任务)
- 面试求职之准备篇
- linux常用命令整理之五