Site icon EfmSoft

Что означает код NTSTATUS 0xC0000004 (STATUS_INFO_LENGTH_MISMATCH)?

 
Предыдущий Следующий
STATUS_INVALID_INFO_CLASS STATUS_ACCESS_VIOLATION

STATUS_INFO_LENGTH_MISMATCH

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

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

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

  • Сравните фактический sizeof с length, переданным API.
  • Учитывайте архитектуру 32/64 bit, packing и выравнивание.
  • Для versioned структур проверьте поля Size/Version и версию headers на обеих сторонах интерфейса.
  • Если API возвращает требуемый размер, используйте его вместо жёстко заданной константы.

Не лечите ошибку произвольным увеличением буфера. Сначала определите точный layout, который ожидает выбранный information class, иначе можно лишь скрыть несовместимость структуры.

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


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

Exit mobile version