Compartilhar via


Função OpenFileMappingFromApp (memoryapi.h)

Abre um objeto de mapeamento de arquivo nomeado.

Sintaxe

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

Parâmetros

[in] DesiredAccess

O acesso ao objeto de mapeamento de arquivo. Esse acesso é verificado em relação a qualquer descritor de segurança no objeto de mapeamento de arquivo de destino. Para obter uma lista de valores, consulte Segurança de Mapeamento de Arquivos e Direitos de Acesso. Você só poderá abrir o objeto de mapeamento de arquivo para acesso FILE_MAP_EXECUTE se o aplicativo tiver a funcionalidade codeGeneration .

[in] InheritHandle

Se esse parâmetro for TRUE, um processo criado pela função CreateProcess poderá herdar o identificador; caso contrário, o identificador não pode ser herdado.

[in] Name

O nome do objeto de mapeamento de arquivo a ser aberto. Se houver um identificador aberto para um objeto de mapeamento de arquivo por esse nome e o descritor de segurança no objeto de mapeamento não entrar em conflito com o parâmetro DesiredAccess , a operação aberta será bem-sucedida. O nome pode ter um prefixo "Global" ou "Local" para abrir explicitamente um objeto no namespace global ou de sessão. O restante do nome pode conter qualquer caractere, exceto o caractere de barra invertida (\). Para obter mais informações, consulte Namespaces de objeto kernel. A alternância rápida de usuário é implementada usando sessões de Serviços de Terminal. O primeiro usuário a fazer logon usa a sessão 0, o próximo usuário a fazer logon usa a sessão 1 e assim por diante. Os nomes de objeto kernel devem seguir as diretrizes descritas para os Serviços de Terminal para que os aplicativos possam dar suporte a vários usuários.

Valor retornado

Se a função for bem-sucedida, o valor retornado será um identificador aberto para o objeto de mapeamento de arquivo especificado.

Se a função falhar, o valor retornado será NULL. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Você pode chamar OpenFileMappingFromApp de aplicativos da Windows Store com recursos JIT (Just-In-Time) para usar a funcionalidade JIT. O aplicativo deve incluir a funcionalidade codeGeneration no arquivo de manifesto do aplicativo para usar recursos JIT. OpenFileMappingFromApp permite que os aplicativos da Windows Store usem a classe MemoryMappedFile no .NET Framework.

O identificador que OpenFileMappingFromApp retorna pode ser usado com qualquer função que exija um identificador para um objeto de mapeamento de arquivo.

Ao modificar um arquivo por meio de uma exibição mapeada, o carimbo de data/hora da última modificação pode não ser atualizado automaticamente. Se necessário, o chamador deve usar SetFileTime para definir o carimbo de data/hora.

Quando não for mais necessário, o chamador deverá chamar liberar o identificador retornado por OpenFileMappingFromApp com uma chamada para CloseHandle.

Requisitos

   
Cliente mínimo com suporte Windows 10 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2016 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho memoryapi.h (inclua Windows.h)
Biblioteca WindowsApp.lib
DLL Kernel32.dll

Confira também

CreateFileMapping

Funções de mapeamento de arquivo

Funções de gerenciamento da memória

OpenFileMapping

Compartilhando arquivos e memória