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 pelo chamador que recebe o endereço do contexto excluído. Esse parâmetro é opcional e pode ser NULL. Se OldContext não for 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.

Retornar valor

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

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

Comentários

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 para 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, chame FltGetVolumeContext.

Para definir um contexto de volume, chame FltSetVolumeContext.

Requisitos

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

Confira também

FltAllocateContext

FltDeleteContext

FltGetVolumeContext

FltReleaseContext

FltSetVolumeContext