| Предыдущий | Следующий |
| CO_E_EXCEEDSYSACLLIMIT | CO_E_INCOMPATIBLESTREAMVERSION |
CO_E_ACESINWRONGORDER
Что означает CO_E_ACESINWRONGORDER
CO_E_ACESINWRONGORDER означает, что ACL содержит ACE в порядке, который не соответствует ожидаемой канонической последовательности: deny-правила должны располагаться перед соответствующими allow-правилами. Ошибка относится к структуре security descriptor, а не к отсутствию конкретного разрешения.
Что проверить
- Сохраните исходный binary security descriptor и его SDDL до любой нормализации.
- Просмотрите порядок ACE, включая inherited entries и object-specific ACE.
- Если descriptor строится программно, проверьте этапы добавления deny/allow и последующей canonicalization.
Как исправить
Пересоберите ACL через штатные access-control API, сохранив исходные права и inheritance semantics. Не решайте проблему глобальным ослаблением LaunchPermission или AccessPermission: порядок ACE и объём предоставленных прав — разные вопросы.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.