Função FltDeleteStreamContext (fltkernel.h)
FltDeleteStreamContext remove um contexto que uma determinada instância de driver de minifiltro definiu para um determinado fluxo e marca o contexto para exclusão.
Sintaxe
NTSTATUS FLTAPI FltDeleteStreamContext(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PFLT_CONTEXT *OldContext
);
Parâmetros
[in] Instance
Ponteiro de instância opaco para a instância do driver de minifiltro cujo contexto deve ser removido da lista de contextos anexados ao fluxo de arquivos.
[in] FileObject
Ponteiro para um objeto de arquivo para o fluxo de arquivos.
[out] 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
FltDeleteStreamContext retorna STATUS_SUCCESS ou um valor NTSTATUS apropriado, como um dos seguintes:
Código de retorno | Descrição |
---|---|
STATUS_FLT_DELETING_OBJECT | O de Instância 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. |
STATUS_NOT_SUPPORTED | O sistema de arquivos não dá suporte a contextos por fluxo para esse fluxo de arquivos. 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 FltDeleteStreamContext excluir explicitamente um contexto.
Um driver de minifiltro chama FltDeleteStreamContext para remover um contexto de um fluxo de arquivos e marcar o contexto de 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 fluxo, chame FltGetStreamContext .
Para definir um contexto de fluxo, chame FltSetStreamContext.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
cabeçalho | fltkernel.h (inclua Fltkernel.h) |
biblioteca | FltMgr.lib |
IRQL | <= APC_LEVEL |