Função IoRemoveShareAccess (wdm.h)
A rotina IoRemoveShareAccess remove as informações de acesso e de acesso de compartilhamento para uma determinada instância aberta de um objeto de arquivo.
Sintaxe
void IoRemoveShareAccess(
[in] PFILE_OBJECT FileObject,
[in, out] PSHARE_ACCESS ShareAccess
);
Parâmetros
[in] FileObject
Ponteiro para o objeto de arquivo, que geralmente está sendo fechado pelo thread atual.
[in, out] ShareAccess
Ponteiro para a estrutura de acesso a compartilhamento que descreve como o objeto de arquivo aberto está sendo acessado no momento.
Valor de retorno
Nenhum
Observações
Essa rotina é recíproca para IoUpdateShareAccess .
IoRemoveShareAccess não é uma operação atômica. Portanto, os drivers que chamam essa rotina devem proteger o objeto de arquivo compartilhado passado para IoRemoveShareAccess 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.
Os chamadores do IoRemoveShareAccess devem estar em execução no IRQL = PASSIVE_LEVEL e no contexto do thread que solicitou que o FileObject ser fechado.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows 2000. |
da Plataforma de Destino | Universal |
cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL (consulte a seção Comentários) |
regras de conformidade de DDI | HwStorPortProhibitedDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm) |