| Предыдущий | Следующий |
| E_APPLICATION_VIEW_EXITING | RO_E_UNSUPPORTED_FROM_MTA |
RO_E_MUST_BE_AGILE
Что означает RO_E_MUST_BE_AGILE
RO_E_MUST_BE_AGILE (0x8000001C) — объект должен поддерживать доступ из разных COM/WinRT apartment, но передаваемый объект таким свойством не обладает.
Что проверить
- Определите apartment, в котором объект создан, и поток или apartment, из которого выполняется неуспешный вызов.
- Проверьте поддержку
IAgileObjectили используйте agile reference, если объект должен передаваться между apartment. - Для обычного COM-объекта используйте предусмотренный COM marshaling вместо сохранения и передачи прямого указателя между потоками.
Как подтвердить исправление
Повторите тот же межпоточный сценарий после корректного marshaling или получения agile-ссылки. Объект должен оставаться доступным в требуемом apartment на протяжении всего времени его использования.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.