Site icon EfmSoft

Что означает код HRESULT 0x8000001C (RO_E_MUST_BE_AGILE)?

 
Также может означать:
КонстантаТипОС
STATUS_MEDIA_CHANGEDNTSTATUSWindows
Предыдущий Следующий
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 на протяжении всего времени его использования.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.

Exit mobile version