Что означает код ошибки Windows 9 (ERROR_INVALID_BLOCK)?

 
Также может означать:
КонстантаТипОС
KERN_MEMORY_FAILUREКод возврата ядра macOSmacOS
ippStsNanArgСтатус Intel IPPЛюбая
EBADFerrnoЛюбая
IRQL_NOT_GREATER_OR_EQUALКод BSODWindows
Предыдущий Следующий
ERROR_NOT_ENOUGH_MEMORY ERROR_BAD_ENVIRONMENT

ERROR_INVALID_BLOCK

Переданный блок памяти недействителен

ERROR_INVALID_BLOCK указывает, что блок, переданный операции управления памятью, не распознаётся как допустимое выделение. Типичные причины: освобождение неверного указателя, освобождение адреса внутри блока, повторное освобождение и смешение разных распределителей памяти.

Отладка

  • Зафиксируйте стеки выделения и освобождения для этого указателя.
  • Убедитесь, что выделение и освобождение выполняются одной средой выполнения и одной кучей.
  • Проверьте владение объектом на границах DLL.
  • Используйте диагностику кучи, чтобы найти первую недопустимую запись или операцию освобождения.

Решение

Исправьте контракт выделения памяти. Повторение той же операции освобождения или работы с кучей может усилить повреждение, поэтому его следует избегать.

Ссылки


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