| Предыдущий | Следующий |
| COMADMIN_E_CAN_NOT_START_APP | COMADMIN_E_CANT_SUBSCRIBE_TO_COMPONENT |
COMADMIN_E_CAN_NOT_EXPORT_SYS_APP
COMADMIN_E_CAN_NOT_EXPORT_SYS_APP: граница сбоя, проверка и исправление
Windows возвращает COMADMIN_E_CAN_NOT_EXPORT_SYS_APP (0x8011044C), когда выполняется следующее условие: Системное приложение нельзя экспортировать.
Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP старший бит HRESULT делает значение ошибкой. Константа COMADMIN_E_CAN_NOT_EXPORT_SYS_APP объявлена в winerror.h и относится к области «каталог и администрирование COM+».
Почему важен контекст вызова
Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP результат возвращает административный API COM+ при чтении или изменении каталога приложений, компонентов, ролей, разделов и зависимых коллекций. Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP изменения следует выполнять в правильной родительской коллекции и фиксировать через SaveChanges, не смешивая объекты из разных поколений каталога.
Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP одинаковый HRESULT может быть виден в нескольких слоях. Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP в журнале нужно отделить исходный возврат от последующих ошибок очистки, повторов и обёрток.
В имени COMADMIN_E_CAN_NOT_EXPORT_SYS_APP закодированы ориентиры для расследования: COMADMIN — технический признак «comadmin»; NOT — отсутствие требуемого условия; EXPORT — технический признак «export»; APP — приложение. Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP эти ориентиры задают конкретный предмет проверки, но не заменяют контракт вызвавшего API.
Интерпретация HRESULT: признаки в имени константы
Маркер COMADMIN в COMADMIN_E_CAN_NOT_EXPORT_SYS_APP направляет проверку на технический признак «comadmin». Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP сопоставьте этот признак с фактическими параметрами первого неуспешного вызова.
Компонент имени NOT уточняет смысл COMADMIN_E_CAN_NOT_EXPORT_SYS_APP: речь идёт про отсутствие требуемого условия. Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP эту границу следует воспроизвести отдельно от последующей обработки ошибки.
Маркер EXPORT в COMADMIN_E_CAN_NOT_EXPORT_SYS_APP направляет проверку на технический признак «export». Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP сопоставьте этот признак с фактическими параметрами первого неуспешного вызова.
Компонент имени APP уточняет смысл COMADMIN_E_CAN_NOT_EXPORT_SYS_APP: речь идёт про приложение. Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP эту границу следует воспроизвести отдельно от последующей обработки ошибки.
Минимальный набор свидетельств
- До повторной попытки по
COMADMIN_E_CAN_NOT_EXPORT_SYS_APPнужно сохранить имя приложения COM+, Application ID и Component CLSID. - Для воспроизводимого отчёта по
COMADMIN_E_CAN_NOT_EXPORT_SYS_APPнужно сохранить экспорт приложения или резервную копию каталога перед ремонтом.
Как локализовать причину
- Для
COMADMIN_E_CAN_NOT_EXPORT_SYS_APP: Получить свежий объект каталога и заново Populate нужную коллекцию; сохраните первый hresult и точное время результата. - Для
COMADMIN_E_CAN_NOT_EXPORT_SYS_APP: Проверить существование родительского приложения, раздела или компонента; отдельно отметьте изменение состояния объекта. - Для
COMADMIN_E_CAN_NOT_EXPORT_SYS_APP: Внести одно минимальное изменение и отдельно вызвать SaveChanges; все остальные условия оставьте неизменными. - Для
COMADMIN_E_CAN_NOT_EXPORT_SYS_APP: Не переиспользовать объект каталога после удаления, импорта или изменения родителя; не удаляйте исходные данные до завершения сравнения. - Для
COMADMIN_E_CAN_NOT_EXPORT_SYS_APP: После исправления активировать компонент и проверить роли, транзакции и завершение процесса; повторите шаг на исправном контрольном примере.
Как доказать исправление
Корректирующее действие для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP должно устранять условие «Системное приложение нельзя экспортировать» на уровне каталог и администрирование COM+. Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP простое подавление HRESULT, бесконечный повтор или очистка всех настроек не доказывают восстановление контракта.
Для COMADMIN_E_CAN_NOT_EXPORT_SYS_APP исправление считается подтверждённым, когда исходная операция проходит в том же окружении, отрицательный тест по-прежнему предсказуемо отклоняется, а журнал не содержит нового скрытого сбоя.
Полезные материалы
- Microsoft: коды ошибок COMADMIN — COMADMIN_E_CAN_NOT_EXPORT_SYS_APP
- Microsoft: Microsoft: ICOMAdminCatalog::ExportApplication — COMADMIN_E_CAN_NOT_EXPORT_SYS_APP
- Microsoft: Microsoft: deploying COM+ applications — COMADMIN_E_CAN_NOT_EXPORT_SYS_APP
- Microsoft: Microsoft: deploying application proxies — COMADMIN_E_CAN_NOT_EXPORT_SYS_APP
- Microsoft: Microsoft: types of COM+ applications — COMADMIN_E_CAN_NOT_EXPORT_SYS_APP
Нужно найти другой код? Найти другой код состояния или ошибки.
