Что означает код NTSTATUS 0xC0020023 (RPC_NT_INVALID_BOUND)?

 
Предыдущий Следующий
RPC_NT_INVALID_TAG RPC_NT_NO_ENTRY_NAME

RPC_NT_INVALID_BOUND

Границы массива NDR не соответствуют контракту IDL

Заглушки RPC маршалируют массивы переменной длины и согласуемые данные с указанием границ. Этот статус означает, что переданная или полученная граница недопустима для объявленного типа IDL, например превышает разрешённый диапазон или противоречит другому полю размера.

Ошибочное значение обычно находится в данных заглушки, а не в сопоставителе конечных точек. Проверьте сформированный контракт MIDL, максимальное количество элементов, фактическую длину буфера и все поля длины, передаваемые вызывающей стороной.

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

  • Записывайте переданные максимальное количество элементов, смещение и фактическое количество для массивов переменной длины.
  • Проверяйте поля длины вызывающей стороны до выполнения вызова RPC.
  • Проверьте, совпадают ли версии клиентской и серверной заглушек.

Ссылки


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