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

 
Предыдущий Следующий
RPC_S_PROTSEQ_NOT_FOUND RPC_S_BINDING_HAS_NO_AUTH

RPC_S_PROCNUM_OUT_OF_RANGE

Номера операций RPC задаются контрактом интерфейса

RPC_S_PROCNUM_OUT_OF_RANGE означает, что сервер получил или обработал номер процедуры, который не определён зарегистрированным интерфейсом. В терминологии DCE/RPC номер операции, часто отображаемый при анализе протокола как opnum , выбирает процедуру внутри интерфейса.

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

Что следует сопоставить

  • Зафиксируйте UUID интерфейса, версию интерфейса и номер операции из завершившегося ошибкой вызова.
  • Сопоставьте точную редакцию IDL/MIDL, использованную для генерации клиентских и серверных заглушек.
  • Проверьте, не скопировал ли написанный вручную клиент DCE/RPC номера операций из другой версии интерфейса или выпуска продукта.
  • Не перебирайте соседние номера процедур. Номера операций являются значениями контракта протокола, а не динамическими слотами сервера.

Если захват трафика показывает привязку к одной версии интерфейса, за которой следует номер операции, определённый только в другой версии, согласуйте определение интерфейса и сгенерированные заглушки.

Ссылки


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