内存映射读取器找不到全局内存映射对象

时间:2019-05-05 22:22:28

标签: c# c++

我正在编写一个C#程序,该程序创建并写入内存映射文件。一个C ++程序(从here粘贴的副本)打开内存映射文件并读取内容。但是,C ++程序找不到内存映射文件。

我已将对象名称设置为全局名称(即“ Global \ MyMemoryMappedObject”),这是用于创建和打开程序的名称(here),但这尚未解决问题。

这是我编写的用于创建和写入MMF的C#代码

.time

我希望C ++程序能够读取内容,因为它使用相同的对象句柄和偏移量,但是根本找不到以mmf对象开头的内容。有人可以帮我吗?

1 个答案:

答案 0 :(得分:1)

问题在于您似乎正在打开和关闭它(并释放资源)。

x86_64-w64-mingw32-gcc -DSIZEOF_VOID_P=8 -DMS_WIN64 ...

如果要与其他进程共享此文件,则需要保持打开状态