| Anterior | Siguiente |
| ERROR_SXS_CORRUPTION | ERROR_SXS_INVALID_DEACTIVATION |
ERROR_SXS_EARLY_DEACTIVATION
Interpretación de ERROR_SXS_EARLY_DEACTIVATION
ERROR_SXS_EARLY_DEACTIVATION (14084, 0x00003704) — El contexto de activación que se intenta desactivar no es el activado más recientemente.
Side-by-Side resuelve identidades, manifiestos, políticas y contextos de activación antes de cargar el componente. Un fallo de esa resolución no equivale a “DLL no encontrada”.
Condición que hay que demostrar
La evidencia debe explicar exactamente «El contexto de activación que se intenta desactivar no es el activado más recientemente» en el componente que devolvió el valor.
Qué comprobar
- Captura <code>sxstrace</code> durante la activación y registra el thread/process, assembly identity y contexto que se activa o desactiva.
- Respeta el stack LIFO de activation contexts: un handle válido puede ser incorrecto si no corresponde al contexto activado más recientemente en ese hilo.
- Conserva como etiqueta de correlación «sxs · early · deactivation» y la descripción exacta «El contexto de activación que se intenta desactivar no es el activado más recientemente»; evita mezclar esta incidencia con otro código de la misma familia.
Diferencia frente a otro estado
ERROR_SXS_CANT_GEN_ACTCTX (14001) significa «La aplicación no pudo iniciarse porque su configuración side-by-side es incorrecta. Consulte el registro de eventos de la aplicación o utilice sxstrace.exe para obtener más información». Aquí la condición es «El contexto de activación que se intenta desactivar no es el activado más recientemente».
Recuperación segura
Ejemplo de aislamiento
Una aplicación o servicing devuelve 14084.
Distinción diagnóstica específica
La condición propia de esta página es «El contexto de activación que se intenta desactivar no es el activado más recientemente.». El estado más cercano por contenido, ERROR_SXS_INVALID_DEACTIVATION, describe en cambio «El contexto de activación que se intenta desactivar no está activo para el subproceso actual.». Ambos comparten Side-by-Side, deactivation, pero aquí el discriminante operativo es early.
Reconstruye el lifetime del activation context y el punto donde se desactivó antes de tiempo. Una desactivación temprana no equivale a una llamada de deactivation estructuralmente inválida.
La prueba de cierre debe demostrar que «early» desapareció sin reemplazarla por la condición de ERROR_SXS_INVALID_DEACTIVATION; regenera el componente desde su fuente y valida el activation context resultante.
Prueba discriminante del estado
Esta página se aísla en lifetime del activation context. Usa sxstrace para conservar cookie, stack y momento en que el contexto se retiró antes de terminar su uso; la interpretación correcta exige la causa es temporal: desactivación anticipada.
ERROR_SXS_INVALID_DEACTIVATION informa «El contexto de activación que se intenta desactivar no está activo para el subproceso actual.», mientras este estado informa «El contexto de activación que se intenta desactivar no es el activado más recientemente.». La comparación es útil solo para descartar el vecino; la corrección debe seguir la tabla, identidad o fase indicada por este código.
Corrige la fuente del manifiesto/ensamblado o el estado que originó lifetime del activation context, regenera el artefacto y crea de nuevo el activation context. No edites WinSxS para hacer desaparecer el síntoma.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.