| Anterior | Siguiente |
| CO_E_EXCEEDSYSACLLIMIT | CO_E_INCOMPATIBLESTREAMVERSION |
CO_E_ACESINWRONGORDER
Qué significa CO_E_ACESINWRONGORDER
CO_E_ACESINWRONGORDER corresponde al HRESULT 0x8001013A. Windows indica: «No todas las ACE de tipo DENY_ACCESS están situadas antes que las ACE de tipo GRANT_ACCESS en el flujo.».
Este código pertenece a seguridad de COM, descriptores de acceso e impersonación durante activación o llamadas. La pista específica es: el orden de ACE viola la forma canónica esperada; registra DACL completa antes de reordenarla para no perder herencia ni máscaras.
Qué comprobar
- La traza inicial debe incluir CLSID/AppID, SID del llamador, token efectivo, descriptor de seguridad/ACL, nivel de impersonación y operación COM que realiza la comprobación y el primer error inmediatamente anterior.
- Confirma que el estado observado coincide con «No todas las ACE de tipo DENY_ACCESS están situadas antes que las ACE de tipo GRANT_ACCESS en el flujo.» y no con un HRESULT posterior provocado por el primer fallo.
Tratamiento recomendado
Conserva identidad y descriptor exactos, corrige la ACE, token o nivel de impersonación en el ámbito mínimo y repite con el mismo CLSID/AppID. No desactives controles de acceso globales para hacer pasar la activación.
Resultados cercanos que significan otra cosa
CO_E_DLLNOTFOUNDsignifica «No se encontró la DLL de la clase.».CO_E_MISSING_DISPLAYNAMEmarca una condición diferente: «La activación requiere que exista un nombre para mostrar bajo la clave CLSID.».
Después del cambio, repite desde un lifecycle limpio y verifica que «No todas las ACE de tipo DENY_ACCESS están situadas antes que las ACE de tipo GRANT_ACCESS en el flujo.» desaparece sin relajar controles globales ni sustituir datos por valores artificiales.
Referencias técnicas
¿Buscas un código diferente? Buscar otro código de estado o error.
