| Предыдущий | Следующий |
| CO_E_LOOKUPACCNAMEFAILED | CO_E_FAILEDTOGETWINDIR |
CO_E_SETSERLHNDLFAILED
Точная граница результата
CO_E_SETSERLHNDLFAILED означает: Не удалось установить или сбросить дескриптор сериализации. Для области COM/DCOM это указывает на границу «COM runtime», поэтому первичную проверку нужно привязать к операции, которая вернула код.
Минимальный набор фактов
- сохраните CLSID/IID, apartment, caller identity, server process и первый HRESULT исходного COM-вызова. Для условия «Не удалось установить или сбросить дескриптор сериализации» это позволяет восстановить исходный объект и не спутать его с последующим состоянием.
- приложите к инциденту технические маркеры
HRESULT,sid,SID,Sid,ACLс теми значениями, которые были видны до очистки/rollback; они привязывают «Не удалось установить или сбросить дескриптор сериализации» к реальному вызову. - снимите в трассировку момент первого результата и один исправный запуск, сохранив одинаковыми входные данные; различие должно появиться именно на стадии COM runtime.
Отделение соседних состояний
сопоставьте локализовать первый COM API, после которого состояние отличается от исправного контрольного запуска. Изменяйте только предпосылку, связанную с «Не удалось установить или сбросить дескриптор сериализации», а регистрацию, identity, входной объект и окружение по возможности оставляйте прежними.
не сводить разные стадии активации, marshaling и lifetime к общему сообщению о сбое COM; для результата «Не удалось установить или сбросить дескриптор сериализации» широкая переустановка, очистка каталога или ослабление безопасности не считается доказательством причины.
Для соседних результатов соседний HRESULT той же подсистемы сравнивайте первую различающуюся операцию. Исправление подтверждено только тогда, когда исходная граница проходит при прежних входах и следующий ожидаемый шаг получает корректное состояние.
Технические ссылки
- Microsoft: IAccessControl
- Microsoft: IAccessControl::IsAccessAllowed
- Microsoft: AccessCheck
- Microsoft: LookupAccountSidW
- Microsoft: LookupAccountNameW
- Microsoft: access control lists
Нужно найти другой код? Найти другой код состояния или ошибки.