Поделиться через


Функция RpcBindingReset (rpcdce.h)

Функция RpcBindingReset сбрасывает дескриптор привязки, чтобы узел был указан, но сервер на этом узле не указан.

Синтаксис

RPC_STATUS RpcBindingReset(
  RPC_BINDING_HANDLE Binding
);

Параметры

Binding

Дескриптор привязки сервера для сброса.

Возвращаемое значение

Значение Значение
RPC_S_OK
Вызов выполнен успешно.
RPC_S_INVALID_BINDING
Недопустимый дескриптор привязки.
RPC_S_WRONG_KIND_OF_BINDING
Это был неправильный тип привязки для операции.
 
Примечание Список допустимых кодов ошибок см. в разделе Возвращаемые значения RPC.
 

Комментарии

Клиент вызывает функцию RpcBindingReset , чтобы отменить связь определенного экземпляра сервера с дескриптором привязки сервера, указанным в параметре Binding . Функция RpcBindingReset отменяет связь экземпляра сервера, удаляя часть конечной точки адреса сервера в дескрипторе привязки. Узел остается неизменным в дескрипторе привязки. Результатом является частично привязанный дескриптор привязки сервера.

RpcBindingReset не влияет на сведения о проверке подлинности параметра Binding , если таковые имеются.

Если клиент хочет обслуживаться любым совместимым экземпляром сервера на узле, указанном в дескрипторе привязки, клиент вызывает функцию RpcBindingReset перед выполнением удаленного вызова процедуры с помощью дескриптора привязки привязки . Клиенты не должны вызывать функцию RpcBindingReset для дескрипторов привязки, на которых выполняются вызовы.

Когда клиент выполняет следующий удаленный вызов процедуры с помощью привязки сброса (частично привязанной), библиотека времени выполнения RPC клиента использует общеизвестную конечную точку из спецификации интерфейса клиента, если таковой имеется. В противном случае библиотека времени выполнения клиента автоматически взаимодействует со службой сопоставления конечных точек на указанном удаленном узле, чтобы получить конечную точку совместимого сервера из базы данных сопоставления конечных точек. При обнаружении совместимого сервера библиотека времени выполнения RPC обновляет привязку с помощью новой конечной точки. Если совместимый сервер не найден, удаленный вызов процедуры завершается ошибкой. Для вызовов, использующих протокол подключения (ncacn), клиенту возвращается код состояния EPT_S_NOT_REGISTERED. Для вызовов, использующих протокол datagram (ncadg), клиенту возвращается код состояния RPC_S_COMM_FAILURE.

Серверные приложения должны регистрировать все дескрипторы привязки, вызывая RpcEpRegister и RpcEpRegisterNoReplace , если сервер хочет быть доступным для клиентов, выполняющих удаленный вызов процедуры для дескриптора привязки сброса.

Требования

   
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header rpcdce.h (включая Rpc.h)
Библиотека Rpcrt4.lib
DLL Rpcrt4.dll

См. также раздел

RpcEpRegister

RpcEpRegisterNoReplace