3

そのため、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;
}

前もって感謝します。適切な支援を受けるために、喜んで提供させていただきます。

4

1 に答える 1