服务端涉及的API
1、CreateFileMapping 创建一个特定大小的文件映射对象,对象名为该函数的最后一个参数. 另外这个函数的第一个参数是 物理文件句柄,
2、 MapViewOfFile 把这个文件对象 映射到 该进程的地址空间,即该进程可以用这个 文件对象了,返回一个指针,如m_pSharedBlock
3、利用返回的指针,可以往里面写数据。如 memcpy(m_pSharedBlock,(char*)str.GetBuffer(str.GetLength()),str.GetLength());
4、可以利用该指针,获取数据。GetDlgItem(IDC_EDIT2)->SetWindowText((LPCTSTR)m_pSharedBlock);
5、结束映射 UnmapViewOfFile(m_pSharedBlock);
6关闭映射文件
::CloseHandle(m_hFileMapping) ;
客户端涉及的API
1、OpenFileMapping 根据服务端创建的文件映射对象名,来打开该对象(与服务端的联系是通过映射对象名)
2、MapViewOfFile 把文件映射到当前进程的地址空间,返回一个地址
3、 同服务端的4 样,获取该地址下的数据。
4、结束映射
UnmapViewOfFile(pView);
5、关闭映射文件
CloseHandle(hMapFile);
参考 http://www.51testing.com/html/63/n-845063.html
参考 http://blog.sina.com.cn/s/blog_628af5cf01010d6r.html