| Предыдущий | Следующий |
| NS_E_NETWORK_SINK_WRITE | NS_E_MMS_NOT_SUPPORTED |
NS_E_FIREWALL
Диагностика NS_E_FIREWALL в конвейере Windows Media
Этот результат (0xC00D2EF9) возвращается в управляющий обмен проходит, но ожидаемые медиапакеты не поступают клиенту. Код указывает на контрольную точку streaming через firewall, поэтому диагностику начинайте с объекта и операции-владельца этой точки, а не с общего сброса Player.
Запрос Windows Media streaming проходит DNS, выбор proxy, согласование protocol, authentication, создание session и доставку packets при проверке «управляющий обмен проходит, но ожидаемые медиапакеты не поступают клиенту». WMSP и связанные protocols сохраняют состояние session, поэтому успешный TCP connect сам по себе не доказывает работоспособность media session при проверке «блокировка медиатрафика firewall». В случае этот результат, сохраняйте самый ранний результат нижнего уровня: оболочки способны сопоставить разные причины одному HRESULT.
Где возникает сбой
К этой контрольной точке предыдущие предварительные условия уже приняты, но компонент не может пройти границу: управляющий обмен проходит, но ожидаемые медиапакеты не поступают клиенту. Успешные file open, DNS resolution или COM object creation не доказывают допустимость этого последующего этапа.
Наиболее показательная проверка — сохранить working control channel и разрешить только ожидаемые media endpoints/ports, затем повторить тот же stream. Если после этого единственного изменения тот же вызов проходит дальше, данные подтверждают исходную границу. Если нет, вернитесь к первому вложенному результату, не расширяя область исправления. Этот результат. Если этого не произошло, вернитесь к первой вложенной ошибке, а не расширяйте область исправлений при контролируемой повторной проверке firewall.
Сетевые и протокольные данные
| Зафиксируйте | Как это помогает выделить этот результат |
|---|---|
| Вызов-владелец | Зафиксируйте метод API, идентификатор объекта, thread или callback и временную метку для контрольной точки «блокировка медиатрафика firewall». |
| Решающие значения | результат управляющего канала, локальная и удалённая конечные точки, последовательность и временные метки пакетов, счётчики приёма, идентификаторы повторной передачи или FEC и первая ошибка сокета |
| Поколение объекта | Отметьте время создания reader, writer, graph, URL object, streaming session или metadata provider; устаревшее состояние может повторно вызвать он после изменения конфигурации. |
| Первый вложенный результат | Сохраните самый ранний status codec, COM, socket, DNS, parser или provider до него; более поздние сообщения UI менее конкретны. |
| Случай для сравнения | Используйте один заведомо рабочий ресурс, проходящий ту же контрольную точку «блокировка медиатрафика firewall», и изменяйте только отклонённое предварительное условие. |
Повторная проверка с сохранением протокола
- Запишите
0xC00D2EF9, он, точную операцию и время первого сбоя. - Сохраните результат управляющего канала, локальная и удалённая конечные точки, последовательность и временные метки пакетов, счётчики приёма, идентификаторы повторной передачи или FEC и первая ошибка сокета.
- Не используйте повторно graph, session, reader или metadata object, созданные до изменения соответствующей конфигурации или ресурса при проверке «управляющий обмен проходит, но ожидаемые медиапакеты не поступают клиенту».
- Выполните один изолированный тест: сохранить working control channel и разрешить только ожидаемые media endpoints/ports, затем повторить тот же stream.
- Повторите запрос через тот же API и protocol path; другой Player или локальная копия служат только сравнением и сами по себе не доказывают устранение исходной сетевой границы.
- Подтвердите ожидаемое следующее состояние и сохраните любой новый HRESULT как отдельный downstream result для состояния «управляющий обмен проходит, но ожидаемые медиапакеты не поступают клиенту».
Интерпретация следующего состояния сети
| Результат повторной проверки | Толкование для него |
|---|---|
| Тот же вызов по-прежнему возвращает этот код | Значения, определяющие «блокировка медиатрафика firewall», не изменились либо caller всё ещё использует объект предыдущего поколения. |
| Новый объект работает успешно | На результат повлияли lifetime объекта или cached state он; исправьте пересоздание объекта вместо обходного решения на уровне всего компьютера. |
| Вызов доходит до другого HRESULT для состояния «управляющий обмен проходит, но ожидаемые медиапакеты не поступают клиенту» | Исходная граница пройдена. Диагностируйте новый код отдельно на его собственной стадии format, graph, URL, network или metadata для состояния «управляющий обмен проходит, но ожидаемые медиапакеты не поступают клиенту». |
| Сбой возникает только для одного ресурса | Данные указывают на состояние конкретного content, URL, publishing point, stream, attribute или object, а не на общий сетевой сбой. |
Близкие результаты не взаимозаменяемы
Основное различие: Рабочий control channel не доказывает прохождение media packets; эти два сетевых пути нужно проверять раздельно.
| Близкий HRESULT | Как его сравнивать |
|---|---|
NS_E_PROXY_SOURCE_ACCESSDENIED | Сравните ответственный API и первое отклонённое значение: соседний HRESULT относится к другой контрольной точке и не обязан иметь ту же причину, что он. |
NS_E_NETWORK_SINK_WRITE | Используйте состояние объекта и порядок операций, чтобы определить исходный код, если оба появляются в одной трассировке. |
NS_E_MMS_NOT_SUPPORTED | Сохраните он отдельно, если он появляется только после устранения условия он. |
Действия, вводящие в заблуждение
- открытие произвольных диапазонов портов без фиксации protocol и endpoints, фактически согласованных при контролируемой повторной проверке firewall.
- Не стирайте первое появление он многократными повторами; callbacks и reconnect могут заменить полезное исходное состояние более поздней ошибкой оболочки.
- Не публикуйте credentials, материалы protected content или полные private URL. Записывайте обезличенные identifiers, lengths, hashes и protocol fields, необходимые для воспроизведения.
Технические ссылки
- Обзор протокола потоковой передачи Windows Media по HTTP
- Получение ответа WMSP
- Взаимодействие Windows Media с прокси
- Связи протоколов потоковой передачи Windows Media
- Реестр HRESULT Microsoft
Завершайте диагностику только после того, как исходная операция он успешно выполняется на актуальном объекте и наблюдается ожидаемое следующее состояние.
Нужно найти другой код? Найти другой код состояния или ошибки.
