| Предыдущий | Следующий |
| EUNATCH | EIDRM |
EILSEQ
Что означает EILSEQ в Windows UCRT
EILSEQ: Недопустимая последовательность байтов. Сохраняйте исходные байты и активные locale/encoding rules: замена входа Unicode-строкой после неудачного преобразования уничтожает доказательство неправильной последовательности.
В Windows UCRT сначала зафиксируйте, какой слой выдал ошибку: errno, Win32 GetLastError и Winsock WSAGetLastError являются разными каналами и не должны подменять друг друга. Полезные технические маркеры из контекста этой ошибки: EILSEQ, mbsrtowcs, mbrlen, errno, mbstate_t, UCRT, POSIX. Записывайте их фактические значения или режимы, а не только символическое имя errno.
Диагностика
- Сохраните исходные bytes в шестнадцатеричном виде, выбранную locale/code page и точную функцию преобразования.
- Найдите первый недопустимый byte offset и проверьте границы multibyte sequence, не заменяя данные символом replacement до диагностики.
- Сравните поведение на минимальном фрагменте входа с явно заданной кодировкой, чтобы исключить зависимость от process locale.
- Для Windows сопоставьте CRT descriptor с нативным handle/socket и проверьте, что объект не был закрыт или переиспользован до чтения кода ошибки.
Ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.