代码迁移用,求大侠把下面Windows的内存文件映射(或内存共享)代码改写为linux下的,加分!

gdlk159 2013-08-14 08:46:45
#003 void FileMapping(void)
#004 {
#005 //打开共享的文件对象。
#006 m_hMapFile = OpenFileMapping(FILE_MAP_ALL_ACCESS,
#007 FALSE,_T("TestFileMap"));
#008 if (m_hMapFile)
#009 {
#010 //显示共享的文件数据。
#011 LPTSTR lpMapAddr = (LPTSTR)MapViewOfFile(m_hMapFile,FILE_MAP_ALL_ACCESS,
#012 0,0,0);
#013 OutputDebugString(lpMapAddr);
#014 }
#015 else
#016 {
#017 //创建共享文件。
#018 m_hMapFile = CreateFileMapping( (HANDLE)0xFFFFFFFF,NULL,
#019 PAGE_READWRITE,0,1024,_T("TestFileMap"));
#020
#021 //拷贝数据到共享文件里。
#022 LPTSTR lpMapAddr = (LPTSTR)MapViewOfFile(m_hMapFile,FILE_MAP_ALL_ACCESS,
#023 0,0,0);
#024 std::wstring strTest(_T("TestFileMap"));
#025 wcscpy(lpMapAddr,strTest.c_str());
#026
#027 FlushViewOfFile(lpMapAddr,strTest.length()+1);
#028 }
#029 }
...全文
86 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sduxiaoxiang 2013-08-14
  • 打赏
  • 举报
回复
换开源库吧 省得自己写需要跨平台的东西
whizer 2013-08-14
  • 打赏
  • 举报
回复
试试mmap. 1)先man mmap看看介绍. 2)baidu/google mmap用法,照猫画虎修改一下试试.
majia2011 2013-08-14
  • 打赏
  • 举报
回复
大清早,就遇到牛人,跟着学习

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧