Función FltDeleteVolumeContext (fltkernel.h)
FltDeleteVolumeContext quita un contexto que un controlador de minifiltro determinado ha establecido para un volumen determinado y marca el contexto para su eliminación.
Sintaxis
NTSTATUS FLTAPI FltDeleteVolumeContext(
[in] PFLT_FILTER Filter,
[in] PFLT_VOLUME Volume,
[out, optional] PFLT_CONTEXT *OldContext
);
Parámetros
[in] Filter
Puntero de filtro opaco para el autor de la llamada.
[in] Volume
Puntero de volumen opaco para el volumen.
[out, optional] OldContext
Puntero a una variable asignada por el autor de la llamada que recibe la dirección del contexto eliminado. Este parámetro es opcional y puede ser NULL. Si OldContext no es NULL y no apunta a NULL_CONTEXT, el autor de la llamada es responsable de llamar a FltReleaseContext para liberar este contexto cuando ya no sea necesario.
Valor devuelto
FltDeleteVolumeContext devuelve STATUS_SUCCESS o un valor NTSTATUS adecuado, como uno de los siguientes:
Código devuelto | Descripción |
---|---|
STATUS_FLT_DELETING_OBJECT | El volumen especificado se está descomponendo. Se trata de un código de error. |
STATUS_NOT_FOUND | No se encontró ningún contexto coincidente. Se trata de un código de error. |
Comentarios
Para obtener más información sobre los contextos, vea Acerca de los contextos de minifiltro.
Dado que los contextos son con recuento de referencias, normalmente no es necesario que un controlador de minifiltro llame a una rutina como FltDeleteVolumeContext para eliminar explícitamente un contexto.
Un controlador de minifiltro llama a FltDeleteVolumeContext para quitar un contexto de un volumen y marcar el contexto para su eliminación. Normalmente, el contexto se libera inmediatamente a menos que haya una referencia pendiente en él (por ejemplo, porque otro subproceso sigue usando el contexto).
Para asignar un nuevo contexto, llame a FltAllocateContext.
Para obtener un contexto de volumen, llame a FltGetVolumeContext.
Para establecer un contexto de volumen, llame a FltSetVolumeContext.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Encabezado | fltkernel.h (incluya Fltkernel.h) |
Library | FltMgr.lib |
IRQL | <= APC_LEVEL |