OpenFileMappingFromApp function (memoryapi.h)

Opens a named file mapping object.

Syntax

HANDLE OpenFileMappingFromApp(
  [in] ULONG  DesiredAccess,
  [in] BOOL   InheritHandle,
  [in] PCWSTR Name
);

Parameters

[in] DesiredAccess

The access to the file mapping object. This access is checked against any security descriptor on the target file mapping object. For a list of values, see File Mapping Security and Access Rights. You can only open the file mapping object for FILE_MAP_EXECUTE access if your app has the codeGeneration capability.

[in] InheritHandle

If this parameter is TRUE, a process created by the CreateProcess function can inherit the handle; otherwise, the handle cannot be inherited.

[in] Name

The name of the file mapping object to be opened. If there is an open handle to a file mapping object by this name and the security descriptor on the mapping object does not conflict with the DesiredAccess parameter, the open operation succeeds. The name can have a "Global" or "Local" prefix to explicitly open an object in the global or session namespace. The remainder of the name can contain any character except the backslash character (\). For more information, see Kernel Object Namespaces. Fast user switching is implemented using Terminal Services sessions. The first user to log on uses session 0, the next user to log on uses session 1, and so on. Kernel object names must follow the guidelines outlined for Terminal Services so that applications can support multiple users.

Return value

If the function succeeds, the return value is an open handle to the specified file mapping object.

If the function fails, the return value is NULL. To get extended error information, call GetLastError.

Remarks

You can call OpenFileMappingFromApp from Windows Store apps with just-in-time (JIT) capabilities to use JIT functionality. The app must include the codeGeneration capability in the app manifest file to use JIT capabilities. OpenFileMappingFromApp lets Windows Store apps use the MemoryMappedFile class in the .NET Framework.

The handle that OpenFileMappingFromApp returns can be used with any function that requires a handle to a file mapping object.

When modifying a file through a mapped view, the last modification timestamp may not be updated automatically. If required, the caller should use SetFileTime to set the timestamp.

When it is no longer needed, the caller should call release the handle returned by OpenFileMappingFromApp with a call to CloseHandle.

Requirements

Requirement Value
Minimum supported client Windows 10 [desktop apps | UWP apps]
Minimum supported server Windows Server 2016 [desktop apps | UWP apps]
Target Platform Windows
Header memoryapi.h (include Windows.h)
Library WindowsApp.lib
DLL Kernel32.dll

See also

CreateFileMapping

File Mapping Functions

Memory Management Functions

OpenFileMapping

Sharing Files and Memory