Partilhar via


Função FltDeleteVolumeContext (fltkernel.h)

FltDeleteVolumeContext remove um contexto que um determinado driver de minifiltro definiu para um determinado volume e marca o contexto para exclusão.

Sintaxe

NTSTATUS FLTAPI FltDeleteVolumeContext(
  [in]            PFLT_FILTER  Filter,
  [in]            PFLT_VOLUME  Volume,
  [out, optional] PFLT_CONTEXT *OldContext
);

Parâmetros

[in] Filter

Ponteiro de filtro opaco para o chamador.

[in] Volume

Ponteiro de volume opaco para o volume.

[out, optional] OldContext

Ponteiro para uma variável alocada por chamador que recebe o endereço do contexto excluído. Esse parâmetro é opcional e pode ser NULL. Se OldContext não estiver NULL e não apontar para NULL_CONTEXT, o chamador será responsável por chamar FltReleaseContext para liberar esse contexto quando ele não for mais necessário.

Valor de retorno

FltDeleteVolumeContext retorna STATUS_SUCCESS ou um valor NTSTATUS apropriado, como um dos seguintes:

Código de retorno Descrição
STATUS_FLT_DELETING_OBJECT O de volume de especificado está sendo derrubado. Este é um código de erro.
STATUS_NOT_FOUND Nenhum contexto correspondente foi encontrado. Este é um código de erro.

Observações

Para obter mais informações sobre contextos, consulte Sobre contextos de minifiltro.

Como os contextos são contados por referência, geralmente não é necessário que um driver de minifiltro chame uma rotina como FltDeleteVolumeContext excluir explicitamente um contexto.

Um driver de minifiltro chama FltDeleteVolumeContext para remover um contexto de um volume e marcar o contexto para exclusão. O contexto geralmente é liberado imediatamente, a menos que haja uma referência pendente nele (por exemplo, porque o contexto ainda está em uso por outro thread).

Para alocar um novo contexto, chame FltAllocateContext.

Para obter um contexto de volume, chameFltGetVolumeContext .

Para definir um contexto de volume, chame FltSetVolumeContext .

Requisitos

Requisito Valor
da Plataforma de Destino Universal
cabeçalho fltkernel.h (inclua Fltkernel.h)
biblioteca FltMgr.lib
IRQL <= APC_LEVEL

Consulte também

FltAllocateContext

FltDeleteContext

FltGetVolumeContext

FltReleaseContext

FltSetVolumeContext