Site icon EfmSoft

Что означает код NTSTATUS 0x80000005 (STATUS_BUFFER_OVERFLOW)?

 
Предыдущий Следующий
STATUS_SINGLE_STEP STATUS_NO_MORE_FILES

STATUS_BUFFER_OVERFLOW

Что означает STATUS_BUFFER_OVERFLOW

Выходные данные не полностью помещаются в предоставленный буфер. В зависимости от API часть данных может быть возвращена вместе с этим статусом.

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

  • Зафиксируйте переданный размер буфера и фактически требуемый размер, если API его сообщает.
  • Проверьте документацию: для некоторых вызовов STATUS_BUFFER_OVERFLOW является ожидаемым способом сообщить о частичном результате.
  • Не считайте возвращённые данные полными, если статус указывает на усечение.
  • При повторе выделяйте размер по значению, которое вернул сам API, с проверкой переполнения.

Учитывайте выравнивание и переменную длину структур. Исправьте стратегию выделения буфера вместо бесконечного повтора с одним и тем же размером.

Технические ссылки


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

Exit mobile version