Compartir a través de


Función FltDeleteInstanceContext (fltkernel.h)

FltDeleteInstanceContext quita un contexto de una instancia determinada y marca el contexto para su eliminación.

Sintaxis

NTSTATUS FLTAPI FltDeleteInstanceContext(
  [in]  PFLT_INSTANCE Instance,
  [out] PFLT_CONTEXT  *OldContext
);

Parámetros

[in] Instance

Puntero de instancia opaco para la instancia.

[out] 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 se puede 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

fltDeleteInstanceContext devuelve STATUS_SUCCESS o un valor NTSTATUS adecuado, como uno de los siguientes:

Código devuelto Descripción
STATUS_FLT_DELETING_OBJECT El de instancia especificado se está descomponiéndose. 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.

Observaciones

Para obtener más información sobre los contextos, vea Acerca de los contextos de minifiltro.

Dado que los contextos tienen recuento de referencias, normalmente no es necesario que un controlador de minifiltro llame a una rutina como FltDeleteInstanceContext para eliminar explícitamente un contexto.

Un controlador de minifiltro llama a FltDeleteInstanceContext para quitar un contexto de una instancia 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 instancia, llame a FltGetInstanceContext.

Para establecer un contexto de instancia, llame a FltSetInstanceContext.

Requisitos

Requisito Valor
de la plataforma de destino de Universal
encabezado de fltkernel.h (incluya Fltkernel.h)
biblioteca de FltMgr.lib
irQL <= APC_LEVEL

Consulte también

fltAllocateContext

fltDeleteContext

fltGetInstanceContext

fltReleaseContext

fltSetInstanceContext