Я очень новичок в файлах с отображением в память, и я немного потерялся в чем-то.
Я знаю, что если бы у меня был файл, я мог бы загрузить его и получить к нему доступ сразу из разных процессов, используя MMaps.
Но в моей ситуации я создаю DLL-библиотеку, присоединенную к процессу A, и эта DLL-библиотека получила указатель на cSurface, который подготовил процесс A. Мне нужно поделиться этими данными cSurface с процессом B. Я действительно не хочу вызывать пустой MMap и копировать в него поверхность моего процесса A, только чтобы снова скопировать его в процесс B.
Можно ли отобразить мою поверхность так, как если бы это был файл, поэтому MMap уже указывает на данные поверхности при создании (как если бы я загружал SomeTextFile.txt)?
В принципе, мой план состоял бы в том, чтобы получить указатель на поверхность в Proc A, указать окнам разделять память этой поверхности с заданным именем и использовать мьютексы для координации доступа - идея состоит в том, что оба процесса читают одинаково физическая копия поверхности без громоздкого копирования.
Это возможно?