| Предыдущий | Следующий |
| ERROR_DIRECT_ACCESS_HANDLE | ERROR_SEEK_ON_DEVICE |
ERROR_NEGATIVE_SEEK
Запрошенная позиция в файле отрицательна
ERROR_NEGATIVE_SEEK возвращается, когда вычисление позиции файла даёт смещение до нулевого байта. Частые причины: выход знакового значения за нижнюю границу, вычитание размера заголовка из слишком малой позиции или неверно выбранное начало отсчёта.
Проверки
- Запишите текущую позицию, смещение и начало отсчёта.
- Проверяйте допустимость вычитания до его выполнения.
- Последовательно используйте для смещений знаковую 64-разрядную арифметику.
- Проверьте преобразования беззнаковых размеров в знаковые позиции.
Исправление
Отклоняйте или ограничивайте недопустимые позиции в соответствии с контрактом формата файла. Не продолжайте ввод-вывод, как будто позиционирование завершилось успешно.
Ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.