| Предыдущий | Следующий |
| MF_E_NO_CAPTURE_DEVICES_AVAILABLE | MF_E_CAPTURE_SINK_MIRROR_ERROR |
MF_E_CAPTURE_SINK_OUTPUT_NOT_SET
Что означает MF_E_CAPTURE_SINK_OUTPUT_NOT_SET
MF_E_CAPTURE_SINK_OUTPUT_NOT_SET (0xC00DABE1) — Для записи не задан выход.
Код 0xC00DABE1 относится не ко всему компоненту «COM/WinRT», а к операции в области «контракт вызываемого interface, аргументы и state объекта». Сообщение «для записи не задан выход» позволяет начать с темы «mf, capture, sink, выход, не, набор».
Что проверить и как подтвердить исправление
Сначала сопоставьте первый отказ с фактическими параметрами операции. Для 0xC00DABE1 в условии «для записи не задан выход» воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.
Перед повтором 0xC00DABE1 зафиксируйте IID и method, thread/apartment, argument values, object state и исходный HRESULT; отдельно запишите IMFCaptureEngine::GetSink, IMFCaptureSink::AddStream, IMFCapturePhotoSink, IMFCaptureRecordSink. Различия по теме «mf, capture, sink, выход, не, набор» для 0xC00DABE1 покажут, изменился ли первый неуспешный этап.
Практическое исправление для 0xC00DABE1: исправьте параметры и жизненный цикл объекта в соответствии с контрактом первого неуспешного метода. В контексте условия «для записи не задан выход» для 0xC00DABE1 оно должно устранить подтверждённую причину, а не скрыть исходный HRESULT.
После исправления повторите тот же вызов на прежних данных; у результата 0xC00DABE1 должен измениться первый неуспешный этап, а не только последующее сообщение.
Документация для результата 0xC00DABE1: IMFCapturePhotoSink · IMFCaptureRecordSink · StartRecord.
Нужно найти другой код? Найти другой код состояния или ошибки.
