我正在编写一个C#程序,该程序创建并写入内存映射文件。一个C ++程序(从here粘贴的副本)打开内存映射文件并读取内容。但是,C ++程序找不到内存映射文件。
我已将对象名称设置为全局名称(即“ Global \ MyMemoryMappedObject”),这是用于创建和打开程序的名称(here),但这尚未解决问题。
这是我编写的用于创建和写入MMF的C#代码
.time
我希望C ++程序能够读取内容,因为它使用相同的对象句柄和偏移量,但是根本找不到以mmf对象开头的内容。有人可以帮我吗?
答案 0 :(得分:1)
问题在于您似乎正在打开和关闭它(并释放资源)。
x86_64-w64-mingw32-gcc -DSIZEOF_VOID_P=8 -DMS_WIN64 ...
如果要与其他进程共享此文件,则需要保持打开状态