m0_50130511
m0_50130511
采纳率66.7%
2021-03-05 10:05

VS 如何访问共享内存

已采纳

WINSHAREMEMORY_EXPORTS_API HANDLE OpenShareMemory(const char * NameStamp, size_t * ShmSize);
WINSHAREMEMORY_EXPORTS_API void   CloseShareMemory(HANDLE hWinShm);

提供了上面的代码,想要访问共享内存,应该怎么处理

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • gehong3641 我福了 1月前
    • 参考Windows API共享内存的步骤
    int main ()
    {
        /*使用winapi的步骤*/
        // 1.被共享方
        CreateFileMapping(); //创建
        MapViewOfFile();     //读写
        /*等待数据交互完成*/
        CloseHandle();       //关闭
        // 2.共享方
        OpenFileMapping();   //打开
        MapViewOfFile();     //读写
        CloseHandle();       //关闭
    
        return 0;
    }
    • 该导出接口的可能步骤
    int main ()
    {
        /*使用该导出函数 假设OpenShareMemory自行判断是创建还是打开*/
        // 1.被共享方
        OpenShareMemory();
        MapViewOfFile();
        /*等待数据交互完成*/
        CloseShareMemory();
        // 2.共享方
        OpenShareMemory();
        MapViewOfFile();
        CloseShareMemory();
    
        return 0;
    }
    点赞 1 评论 复制链接分享