Função IoUpdateLinkShareAccess (wdm.h)

A rotina IoUpdateLinkShareAccess atualiza o acesso de compartilhamento para o objeto de arquivo fornecido, geralmente quando o arquivo está sendo aberto.

Sintaxe

void IoUpdateLinkShareAccess(
  [in]                PFILE_OBJECT       FileObject,
  [in, out]           PSHARE_ACCESS      ShareAccess,
  [in, out, optional] PLINK_SHARE_ACCESS LinkShareAccess
);

Parâmetros

[in] FileObject

Ponteiro para o objeto de arquivo, que geralmente está sendo fechado pelo thread atual.

[in, out] ShareAccess

Um ponteiro para a estrutura comum de dados de acesso de compartilhamento associada a FileObject. Os drivers devem tratar essa estrutura como opaca.

[in, out, optional] LinkShareAccess

Um ponteiro para a estrutura de dados de acesso de compartilhamento de link comum (LINK_SHARE_ACCESS) associada ao FileObject. Os drivers devem tratar essa estrutura como opaca.

Retornar valor

Nenhum

Comentários

IoUpdateLinkShareAccess não é uma operação atômica. Portanto, os drivers que chamam essa rotina devem proteger o objeto de arquivo compartilhado passado para IoUpdateLinkShareAccess por meio de algum tipo de bloqueio, como um mutex ou um bloqueio de recurso, a fim de evitar a corrupção das contagens de acesso compartilhado.

Antes de chamar IoUpdateLinkShareAccess, o chamador deve chamar IoCheckLinkShareAccess com Atualização definida como False. Essa chamada para IoCheckLinkShareAccess determina se o acesso compartilhado solicitado é compatível com a maneira como o objeto de arquivo está sendo acessado por outras aberturas, mas não atualiza a estrutura SHARE_ACCESS . IoUpdateLinkShareAccess realmente atualiza a estrutura SHARE_ACCESS associada ao objeto de arquivo.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1709
Servidor mínimo com suporte Windows Server 2016
Plataforma de Destino Universal
Cabeçalho wdm.h
Biblioteca NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Confira também

IoCheckLinkShareAccess

IoRemoveLinkShareAccess

IoSetLinkShareAccess