| Предыдущий | Следующий |
| CO_E_INVALIDSID | CO_E_NOMATCHINGSIDFOUND |
CO_E_CONVERSIONFAILED
Где искать первичный отказ
CO_E_CONVERSIONFAILED означает: Не удалось преобразовать строку доверенного лица из расширенных символов в многобайтовую кодировку. Для области COM/DCOM это указывает на границу «OLE persistence / conversion», поэтому первичную проверку нужно привязать к операции, которая вернула код.
Минимальный набор фактов
- сохраните storage/stream format, CLSID metadata, stream version и исходный serialized payload hash. Для условия «Не удалось преобразовать строку доверенного лица из расширенных символов в многобайтовую кодировку» это позволяет восстановить исходный объект и не спутать его с последующим состоянием.
- запишите технические маркеры
RPC,HRESULT,sid,SID,Sidс теми значениями, которые были видны до очистки/rollback; они привязывают «Не удалось преобразовать строку доверенного лица из расширенных символов в многобайтовую кодировку» к реальному вызову. - зафиксируйте момент первого результата и один исправный запуск, сохранив одинаковыми входные данные; различие должно появиться именно на стадии OLE persistence / conversion.
Контроль после изменения
повторите на контрольном случае отделить определение класса и декодирование формата от создания COM-объекта. Изменяйте только предпосылку, связанную с «Не удалось преобразовать строку доверенного лица из расширенных символов в многобайтовую кодировку», а регистрацию, identity, входной объект и окружение по возможности оставляйте прежними.
не перезаписывать исходное хранилище до проверки версии и class identity на копии; для результата «Не удалось преобразовать строку доверенного лица из расширенных символов в многобайтовую кодировку» широкая переустановка, очистка каталога или ослабление безопасности не считается доказательством причины.
Для соседних результатов соседний HRESULT той же подсистемы сравнивайте первую различающуюся операцию. Исправление подтверждено только тогда, когда исходная граница проходит при прежних входах и следующий ожидаемый шаг получает корректное состояние.
Технические ссылки
- Microsoft: IAccessControl
- Microsoft: IAccessControl::IsAccessAllowed
- Microsoft: AccessCheck
- Microsoft: LookupAccountSidW
- Microsoft: LookupAccountNameW
- Microsoft: access control lists
Нужно найти другой код? Найти другой код состояния или ошибки.