¿Qué significa el código NTSTATUS 0xC01C0002 (STATUS_FLT_CONTEXT_ALREADY_DEFINED)?

 
Anterior Siguiente
STATUS_FLT_NO_HANDLER_DEFINED STATUS_FLT_INVALID_ASYNCHRONOUS_REQUEST

STATUS_FLT_CONTEXT_ALREADY_DEFINED

Qué significa STATUS_FLT_CONTEXT_ALREADY_DEFINED

STATUS_FLT_CONTEXT_ALREADY_DEFINED indica que el objeto de Filter Manager ya posee un context de ese tipo para esa instance/minifilter. El segundo set entra en conflicto con el estado existente.

Esto puede ser una race legítima: dos threads crean contextos en paralelo y sólo uno gana. Las APIs de FltMgr permiten políticas como keep-if-exists o replace-if-exists según el tipo de operación; el caller debe manejar el resultado y liberar el context que perdió la carrera.

No convierta toda aparición en un error fatal. Si el diseño acepta singleton context por objeto, recuperar el context existente puede ser la ruta correcta.

Qué comprobar

  • Revise la política/flags usados al establecer el context.
  • Busque inicialización concurrente del mismo file/stream/instance/volume.
  • Libere correctamente el context nuevo si otro thread ya instaló uno.
  • Determine si el context existente es válido antes de reemplazarlo.

Referencias técnicas


¿Buscas un código diferente? Buscar otro código de estado o error.