次の方法で共有


CAtlFileMappingBase::MapSharedMem

すべてのプロセスにフル アクセスを許可するファイル マップ オブジェクトを作成します。

HRESULT MapSharedMem(
   SIZE_T nMappingSize,
   LPCTSTR szName,
   BOOL* pbAlreadyExisted = NULL,
   LPSECURITY_ATTRIBUTES lpsa = NULL,
   DWORD dwMappingProtection = PAGE_READWRITE,
   DWORD dwViewDesiredAccess = FILE_MAP_ALL_ACCESS 
) throw( );

パラメーター

  • nMappingSize
    マップ サイズ。 0 の場合、ファイル マップ オブジェクトの最大サイズは、szName. で指定されたファイル マップ オブジェクトの現在のサイズに一致します。

  • szName
    マップ オブジェクト名。

  • pbAlreadyExisted
    マップ オブジェクトが既に存在している場合に TRUE に設定されるブール値へのポインター。

  • lpsa
    SECURITY_ATTRIBUTES 構造体へのポインター。この構造体は、返されたハンドルを子プロセスが継承できるかどうかを決定します。 Windows SDK の「CreateFileMapping」で lpAttributes に関する説明を参照してください。

  • dwMappingProtection
    ファイル割り当て時にファイルのビューに必要な保護。 Windows SDK の「CreateFileMapping」で flProtect に関する説明を参照してください。

  • dwViewDesiredAccess
    ファイル ビューへのアクセスの種類。これを指定することによって、ファイルによって割り当てられたページの保護も指定されます。 Windows SDK の「MapViewOfFileEx」で dwDesiredAccess に関する説明を参照してください。

戻り値

正常に終了した場合は、S_OK を返します。それ以外の場合は、エラーの HRESULT を返します。

解説

MapShareMem では、CreateFileMapping によって作成された既存のファイル マップ オブジェクトをプロセス間で共有できます。

必要条件

**ヘッダー:**atlfile.h

参照

参照

CAtlFileMappingBase クラス

その他の技術情報

CAtlFileMappingBase のメンバー