createfilemapping関数の使い方は何ですか?
CreateFileMapping関数の使用方法は、ファイルマッピングオブジェクトを作成し、そのオブジェクトをプロセスの仮想アドレス空間内の1つ以上の領域にファイルにマップすることです。
関数のプロトタイプ:
HANDLE CreateFileMapping(
HANDLE hFile,
LPSECURITY_ATTRIBUTES lpAttributes,
DWORD flProtect,
DWORD dwMaximumSizeHigh,
DWORD dwMaximumSizeLow,
LPCTSTR lpName
);
説明:
- hFileは、ファイルと関連付けられたハンドルです。このハンドルを取得するためには、CreateFile関数を使用してファイルを開く必要があります。
- lpAttributesは、ファイルマッピングオブジェクトのセキュリティ属性を指定するために使用される、SECURITY_ATTRIBUTES構造体へのポインタです。NULLでも構いません。
- flProtectは、指定されたファイルマップオブジェクトのアクセス保護プロパティです。一般的な値にはPAGE_READONLY、PAGE_READWRITEなどがあります。
- dwMaximumSizeHighとdwMaximumSizeLow:指定されたファイルマッピングオブジェクトの最大サイズ。ゼロの場合、ファイル全体がマッピングされます。
- lpName:ファイルマッピングオブジェクトの名前を指定します。NULLでも構いません。
戻り値:
- 成功:ファイルマッピングオブジェクトのハンドル。
- 失敗:NULL。エラー情報はGetLastError関数を呼び出して取得できます。
CreateFileMapping関数で作成されたファイルマッピングオブジェクトは、MapViewOfFile関数を使用してプロセスの仮想アドレス空間にマップし、その後、ポインタを使用してファイルのデータにアクセスすることができます。