Что означает код HRESULT 0xC00D9C42 (MF_E_CLOCK_STATE_ALREADY_SET)?

 
Предыдущий Следующий
MF_E_CLOCK_NO_TIME_SOURCE MF_E_CLOCK_NOT_SIMPLE

MF_E_CLOCK_STATE_ALREADY_SET

Что означает MF_E_CLOCK_STATE_ALREADY_SET

MF_E_CLOCK_STATE_ALREADY_SET (0xC00D9C42) — Часы уже находятся в запрошенном состоянии.

Код 0xC00D9C42 относится не ко всему компоненту «COM/WinRT», а к операции в области «контракт вызываемого interface, аргументы и state объекта». Сообщение «часы уже находятся в запрошенном состоянии» позволяет начать с темы «mf, clock, состояние, already, набор».

Что проверить и как подтвердить исправление

До изменения конфигурации сопоставьте первый отказ с фактическими параметрами операции. Для 0xC00D9C42 с описанием «часы уже находятся в запрошенном состоянии» установите идентичность и владельца уже существующего объекта; не создавайте второй экземпляр, пока не проверен жизненный цикл первого.

Чтобы локализовать 0xC00D9C42, соберите IID и method, thread/apartment, argument values, object state и исходный HRESULT; отдельно запишите IMFClockStateSink, IMFPresentationClock, IMFPresentationClock::Start. Затем для 0xC00D9C42 сравните исправный и неуспешный запуск в части «mf, clock, состояние, already, набор», меняя одно условие за раз.

Исправляя 0xC00D9C42, меняйте только подтверждённую причину: исправьте параметры и жизненный цикл объекта в соответствии с контрактом первого неуспешного метода. Результат 0xC00D9C42 с описанием «часы уже находятся в запрошенном состоянии» должен исчезнуть на исходных данных без обхода штатной проверки.

Считайте исправление подтверждённым только после устойчивого повтора исходного сценария без результата 0xC00D9C42 и без обхода штатных проверок.

Документация для результата 0xC00D9C42: IMFPresentationClock · IMFPresentationClock::Start · IMFClockStateSink.


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