Что означает код HRESULT 0x80098050 (WINBIO_E_CALIBRATION_BUFFER_TOO_LARGE)?

 
Предыдущий Следующий
WINBIO_E_CALIBRATION_BUFFER_TOO_SMALL WINBIO_E_CALIBRATION_BUFFER_INVALID

WINBIO_E_CALIBRATION_BUFFER_TOO_LARGE

WINBIO_E_CALIBRATION_BUFFER_TOO_LARGE указывает на чрезмерный объём калибровочных данных. Адаптер механизма получает от WBF MaxBufferSize и должен сообщить число фактически записанных байтов; это значение явно не должно превышать доступный максимум.

Проверьте все расчёты размера калибровки

  • До записи калибровочных данных сравните требуемый размер полезной нагрузки механизма с MaxBufferSize.
  • Проверьте преобразования целых между числом структур, размерами элементов, SIZE_T и полями длины протокола устройства.
  • Убедитесь, что несовпадение формата или версии не заставляет один адаптер сериализовать запись большего размера, чем ожидает другая сторона.

Память калибровочного буфера принадлежит WBF, и адаптеры не должны сохранять указатели на неё после возврата обратного вызова. Выделение собственного увеличенного буфера и передача устаревших указателей не исправляют контракт платформы. Если требуемые данные не помещаются, завершайте операцию предсказуемо и записывайте выбранный формат калибровки, ожидаемый и доступный размеры.

Обратный вызов калибровочных данных механизма · Обратный вызов калибровочных данных датчика


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