そのため、C++ プログラムで共有メモリ セグメントを作成しようとしています。たとえば、単純な文字を書き込んで、別の C++ プログラムからその文字を読み取ることができます。
Boost
このプロセスを簡素化するライブラリを読んだので、ライブラリをダウンロードしました。基本的に 2 つの質問があります。まず、作成後にどのように書き込むのですか? では、セグメントを識別してその中の情報を読み取るには、2 番目のプログラムに何を記述すればよいでしょうか?
これは私がこれまでに得たものです。それほど多くはありませんが、私はまだこれに慣れていません (最初のプログラム):
#include "stdafx.h"
#include <boost/interprocess/windows_shared_memory.hpp>
#include <boost/interprocess/mapped_region.hpp>
int main(int argc, char *argv[])
{
using namespace boost::interprocess;
windows_shared_memory shared (create_only, "shm", read_write, 65536);
//created shared memory using the windows native library
mapped_region region (shared, read_write, 0 , 0 , (void*)0x3F000000);
//mapping it to a region using HEX
//Here I should write to the segment
return 0;
}
前もって感謝します。適切な支援を受けるために、喜んで提供させていただきます。