| Предыдущий | Следующий |
| VFW_E_DVD_CHAPTER_DOES_NOT_EXIST | DB_E_BADACCESSORHANDLE |
VFW_E_BAD_KEY
Практический смысл
VFW_E_BAD_KEY (0X800403F2) относится к DirectShow filter graph. Конкретный признак: медиа-ключ или ключевой параметр некорректен. Смысл кода следует проверять на том объекте и generation, где он был возвращён впервые.
Это failure HRESULT; успешность следующего шага подтверждайте отдельным результатом, а не отсутствием исключения в верхнем слое. В первую очередь проверяйте конкретный stage filter graph: pin negotiation, media type, allocator, renderer, source filter или graph lifecycle. Не переносите вывод с соседнего HRESULT только потому, что у него тот же facility или общий компонент.
Специфичные признаки исходного описания
Retry and recovery Retry rule for this result: Retry after supported repair or verified registry correction; repeated reads of the same corrupt value cannot succeed.
How it differs from nearby results REGDB_E_INVALIDVALUE is a general COM registration database result, while it identifies corrupt registry data encountered by a DirectShow path.
Keep those cases separate in telemetry, UI messages and retry policy because their next actions are different.
Implementation notes Code that handles it should preserve the original HRESULT, the failed stage and an opaque correlation identifier.
Что сохранить до исправления
- interface/method и CLSID первого компонента, вернувшего HRESULT
- graph state, pin names и negotiated media type
- allocator/renderer/device state и первый preceding HRESULT
Как проверить границу
Если состояние исчезает после повторной enumeration, отдельно проверьте race между получением объекта и вызовом метода. Для состояния «медиа-ключ или ключевой параметр некорректен» сначала воспроизведите минимальную операцию без параллельных изменений конфигурации, затем сравните before/after evidence.
Исправление и повтор
Исправляйте только подтверждённый prerequisite на уровне DirectShow filter graph: входной параметр, capability, object state, provider/graph topology или внешний ресурс. После изменения заново получите актуальные объекты, если их состояние могло устареть, и повторите исходный минимальный вызов.
Технические ссылки
- Microsoft: DirectShow error and success codes.
- Microsoft: using the Filter Mapper.
- Microsoft: DirectShow filters and pins.
Нужно найти другой код? Найти другой код состояния или ошибки.
