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

Функция RpcBindingCopy копирует сведения о привязке и создает новый дескриптор привязки.

Синтаксис

RPC_STATUS RpcBindingCopy(
  RPC_BINDING_HANDLE SourceBinding,
  RPC_BINDING_HANDLE *DestinationBinding
);

Параметры

SourceBinding

Дескриптор привязки сервера, для которого копируются сведения о привязке, на которые ссылается ссылка.

DestinationBinding

Возвращает указатель на дескриптор привязки сервера, который ссылается на скопированные сведения о привязке.

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

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

Комментарии

Функция RpcBindingCopy копирует сведения о привязке сервера, на которые ссылается параметр SourceBinding . RpcBindingCopy использует параметр DestinationBinding для возврата нового дескриптора привязки сервера для скопированных сведений о привязке. RpcBindingCopy также копирует сведения о проверке подлинности из параметра SourceBinding в параметр DestinationBinding .

Приложение использует RpcBindingCopy , когда оно хочет предотвратить изменение сведений о привязке одним потоком от влияния на сведения привязки, используемые другими потоками.

Когда приложение вызывает RpcBindingCopy, операции, выполняемые с дескриптором привязки SourceBinding , не влияют на сведения привязки, на которые ссылается дескриптор привязки DestinationBinding . Аналогичным образом операции, выполняемые с дескриптором привязки DestinationBinding , не влияют на сведения о привязке, на которые ссылается дескриптор привязки SourceBinding .

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

После завершения работы приложения с помощью дескриптора привязки, указанного параметром DestinationBinding , приложение должно вызвать функцию RpcBindingFree , чтобы освободить память, используемую дескриптором привязки DestinationBinding , и сведениями о привязке, на которые указывает ссылка.

Примечание Microsoft RPC поддерживает RpcBindingCopy только в клиентских приложениях, но не в серверных приложениях.
 

Требования

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

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

RpcBindingFree