关于OpenFileMapping

FlystarColl 2007-01-01 02:40:05
HANDLE hMap = CreateFileMapping(INVALID_HANDLE_VALUE, NULL, PAGE_READWRITE|SEC_COMMIT,0,256,"S_DATA");

}

void CTest4Dlg::OnButton2()
{
HANDLE m_hMap = OpenFileMapping(FILE_MAP_READ, FALSE, "S_DATA");

}
写了个例子,但是当我用OpenFileMapping打开映射地址后,hMap 不等于m_hMap,所有再调用MapViewOfFile在button2中读数据时就出错了。
请问各位大侠,为什么hMap和m_hMap不相等呢,我错在那里呢?谢谢各位帮忙了。
...全文
1380 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
liyu_tiger 2011-01-04
  • 打赏
  • 举报
回复
楼主,共享一个结构体是怎么实现的,能否留下源码或者提示?
我在进程A将一个结构体读入内存了,但是进程B没有得到。
FlystarColl 2007-01-01
  • 打赏
  • 举报
回复
已经解决了。谢谢各位
DentistryDoctor 2007-01-01
  • 打赏
  • 举报
回复
具体什么错误?
yjgx007 2007-01-01
  • 打赏
  • 举报
回复
那就创建一个共享段。
FlystarColl 2007-01-01
  • 打赏
  • 举报
回复
我只是想在内存中存储一个结构体而已。其它进程访问。我并不是把一个文件映射到内存。你的意思我不是很明白。能否具体点,贴段代码呢?
蒋晟 2007-01-01
  • 打赏
  • 举报
回复
If your application is running in a termal server and you need access your file mapping from another user's account, add Global\\ prefix to your object name, and modify the access control list when you create the object.

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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