Compartilhar via


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 de dados comuns de acesso a 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 a FileObject. Os drivers devem tratar essa estrutura como opaca.

Valor de retorno

Nenhum

Observações

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 recursos, a fim de evitar a corrupção das contagens de acesso compartilhado.

Antes de chamar IoUpdateLinkShareAccess, o chamador deve chamar com êxito IoCheckLinkShareAccess com Update definido 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 de SHARE_ACCESS. IoUpdateLinkShareAccess realmente atualiza a estrutura de SHARE_ACCESS associada ao objeto de arquivo.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 10, versão 1709
servidor com suporte mínimo Windows Server 2016
da Plataforma de Destino Universal
cabeçalho wdm.h
biblioteca NtosKrnl.lib
de DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Consulte também

IoCheckLinkShareAccess

IoRemoveLinkShareAccess

IoSetLinkShareAccess