CreateFileMapping和MapViewOfFile函数 在release下的使用

【问题描述】

通过 http://blog.csdn.net/dongzhiquan/article/details/5506054 的介绍,
用 CreateFileMapping和MapViewOfFile函数 进行数据共享。
一个进程写数据 一个进程读数据
debug下可以成功,但是release下却没法正常返回。

m_hReceiveMap = OpenFileMapping(FILE_MAP_ALL_ACCESS , FALSE, (LPCTSTR)"DataMapTest");
m_hReceiveMap 是一个 null 。
尝试用 GetLastError 返回的是 2 The system cannot find the file specified.


【解决办法】
在共享文件对象名称前加上 Global\\
如 OpenFileMapping (FILE_MAP_ALL_ACCESS , FALSE, (LPCTSTR)"Global\\DataMapTest");

 

【其他】
算是解决了 ,具体原因也不知道是怎样的。

MSDN 上的例子 http://msdn.microsoft.com/en-us/library/aa366551(v=vs.85).aspx

 

讨论过程详细见 http://topic.csdn.net/u/20120110/13/c2494c73-215c-47be-a49b-1ab20a09e4ed.html

posted @ 2012-02-27 20:11  IamJason  阅读(335)  评论(0编辑  收藏  举报