| Предыдущий | Следующий |
| STATUS_PIPE_NOT_AVAILABLE | STATUS_PIPE_BUSY |
STATUS_INVALID_PIPE_STATE
Операция не соответствует текущему состоянию канала
Эти статусы относятся к пути именованных каналов Windows. Для STATUS_INVALID_PIPE_STATE именованный канал может иметь несколько экземпляров с одним именем, но каждый экземпляр имеет собственные состояние, буфер, дескрипторы, режим типа, чтения и ожидания.
Именованные каналы проходят состояния прослушивания, подключения, закрытия и отключения. Этот статус означает, что дескриптор действителен, но запрошенная операция недопустима в текущем состоянии.
Для диагностики STATUS_INVALID_PIPE_STATE запишите имя канала, серверный или клиентский конец, число экземпляров, блокирующий или неблокирующий режим, байтовый или сообщенийый режим, состояние перекрывающейся операции и подключён ли дескриптор, слушает, закрывается или отключён.
Что проверить
- Проверьте, не были ли ConnectNamedPipe, DisconnectNamedPipe, чтение или запись вызваны в неправильном порядке.
- Зафиксируйте состояния серверного и клиентского дескрипторов.
- Ищите гонки между завершением перекрывающейся операции и очисткой.
Ссылки для STATUS_INVALID_PIPE_STATE
- Открытые спецификации Microsoft: значения NTSTATUS
- Microsoft: именованные каналы
- Microsoft: тип, режимы чтения и ожидания именованного канала
- Microsoft: операции именованных каналов
Нужно найти другой код? Найти другой код состояния или ошибки.