Что вы, вероятно, хотите сделать, это создать файл с отображением в памяти. Вы можете создать файл с отображением в памяти, который не имеет резервного хранилища на диске, но вместо этого поддерживается файлом системной страницы. Посмотрите документацию для CreateFileMapping
, особенно когда первый параметр равен INVALID_HANDLE_VALUE
.
Вы можете присвоить такому сопоставлению файлов уникальное общесистемное имя, а затем другие приложения смогут открывать его, используя OpenFileMapping
и предоставляя то же имя.
Если у вас есть такой блок совместно используемой памяти, вы можете поместить в него любую информацию, которая вам нравится. Обратите внимание, что, поскольку память распределяется между процессами, вы не хотите хранить какие-либо указатели в блоке памяти (что исключает выполнение таких вещей, как сохранение std::string
там).