VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 786|回复: 6

关于OpenFileMapping

[复制链接]

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-2 19:10:01 | 显示全部楼层 |阅读模式
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不相等呢,我错在那里呢?谢谢各位帮忙了。
回复

使用道具 举报

0

主题

21

帖子

15.00

积分

新手上路

Rank: 1

积分
15.00
发表于 2020-1-2 19:12: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.
回复

使用道具 举报

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-2 20:36:01 | 显示全部楼层
我只是想在内存中存储一个结构体而已。其它进程访问。我并不是把一个文件映射到内存。你的意思我不是很明白。能否具体点,贴段代码呢?
回复

使用道具 举报

0

主题

30

帖子

22.00

积分

新手上路

Rank: 1

积分
22.00
发表于 2020-1-2 22:03:01 | 显示全部楼层
那就创建一个共享段。
回复

使用道具 举报

0

主题

24

帖子

19.00

积分

新手上路

Rank: 1

积分
19.00
发表于 2020-1-2 22:36:01 | 显示全部楼层
具体什么错误?
回复

使用道具 举报

1

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-6 13:45:01 | 显示全部楼层
已经解决了。谢谢各位
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-9-4 16:45:02 | 显示全部楼层
楼主,共享一个结构体是怎么实现的,能否留下源码或者提示?
我在进程A将一个结构体读入内存了,但是进程B没有得到。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表