Что означает код NTSTATUS 0xC00000B4 (STATUS_INVALID_READ_MODE)?

 
Предыдущий Следующий
STATUS_PIPE_LISTENING STATUS_IO_TIMEOUT

STATUS_INVALID_READ_MODE

Режим чтения канала не соответствует операции

Эти статусы относятся к механизму именованных каналов Windows. Для STATUS_INVALID_READ_MODE: именованный канал может иметь несколько экземпляров с одним именем, но каждый экземпляр обладает собственным состоянием, буфером, дескрипторами, типом, режимом чтения и режимом ожидания.

Именованные каналы могут иметь байтовый тип или тип сообщений, а дескрипторы — использовать байтовый режим или режим чтения сообщений в рамках правил типа канала. Этот статус означает, что запрошенное поведение чтения требует режима, которого нет у дескриптора.

Для диагностики STATUS_INVALID_READ_MODE запишите имя канала, сторону сервера или клиента, число экземпляров, блокирующий или неблокирующий режим, байтовый режим или режим сообщений, состояние перекрывающейся операции, а также находится ли дескриптор в состоянии подключения, прослушивания, закрытия или отключения.

Что проверить

  • Проверьте соответствие PIPE_TYPE_MESSAGE и PIPE_READMODE_MESSAGE.
  • Используйте SetNamedPipeHandleState только с совместимым типом канала.
  • Убедитесь, что обе стороны одинаково понимают байтовый поток и семантику сообщений.

Справочные материалы по STATUS_INVALID_READ_MODE


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