2009-04-17 11 views
0

現在私が扱っているプロジェクトは、プロセス間通信に基づいています。ビジュアルスタジオと共有メモリ

また、このプロセス間通信に共有メモリの概念を使用しています。

いくつかのファイルがありますが、私は、たとえば、共有メモリの概念を使用する場合、SYS/ipc.h、SYS/shm.h

は、これらのファイルは、Visual Studioのinsatallationの一部であるか、それは私が肝炎に何かある必要TATダウンロードする。

ビジュアルスタジオ2005を再インストールして、プロセス間通信を有効にする必要があるかどうかを知る必要があります。そうすれば、これらのファイルを自動的に使用することができます。しかし、CreateFileMapping関数がファイルにマップするright.I必要性をマッピングすることです。コンセプトは、私は窓に

EDITをメモリを共有するために使用することができるのSolarisへのリンクreferesについて

チェックこのリンクhttp://www.cs.cf.ac.uk/Dave/C/node27.html

、この場合は別のプロセスにメモリ位置、その場所に格納されたデータを使用するように...

は、私は、コードを試しますありがとう..

答えて

0

ヘッダあなたが言及したファイルは、UNIXのようなシステム用です。 UNIXとWindowsは一般に共有メモリとIPCに対して異なるアプローチを使用しているため、ヘッダーをダウンロードするとうまくいかないでしょう。詳細については、CreateFileMappingおよび関連機能を参照してください。

編集:引用したリンクは、WindowsではなくSolarisに明示的に言及しています。すでに述べたように、Windows上で共有メモリを使用する場合は、CreateFileMappingのようなメモリマップファイル関数を使用する必要があります。アウトラインでは、両方のプロセスがファイルマッピングを作成する必要があり、マッピングされたファイルを共有メモリとして扱うことができます。例はhereです。

+0

これらのファイルはWindowsでも使用されているとは思いません。 –

+0

ちょっと感謝して、そのコードを試してください。 –

+0

@neha:完全に間違っています。 POSIXとWin32のAPIは、「共有メモリ」以外のあらゆる点で異なります。 – Richard