| Предыдущий | Следующий |
| VFW_E_NOT_RUNNING | VFW_E_START_TIME_AFTER_END |
VFW_E_WRONG_STATE
Что означает результат
VFW_E_WRONG_STATE: Фильтр DirectShow находится в состоянии, в котором запрошенный метод по контракту выполнять нельзя. Причина определяется конкретным методом и текущим переходом Run/Pause/Stop.
Что проверить
- Зафиксируйте метод, фактическое и ожидаемое состояние объекта.
- Проверьте предыдущий управляющий вызов и дождитесь его завершения вместо предположения, что состояние изменилось синхронно.
- Исключите параллельный Run, Pause, Stop или динамическую перестройку из другого потока.
- Не продолжайте использовать объект после отдельной terminal ошибки, если его состояние уже требует нового жизненного цикла.
Диагностика и исправление
Перенесите операцию в разрешённую фазу жизненного цикла и повторите после подтверждения состояния. Пересоздание всего graph требуется только если предыдущая ошибка действительно сделала объект непригодным.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.