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


структура RPC_BINDING_HANDLE_TEMPLATE_V1_W (rpcdce.h)

Структура RPC_BINDING_HANDLE_TEMPLATE_V1 содержит основные параметры для создания дескриптора привязки RPC.

Синтаксис

typedef struct _RPC_BINDING_HANDLE_TEMPLATE_V1_W {
  unsigned long  Version;
  unsigned long  Flags;
  unsigned long  ProtocolSequence;
  unsigned short *NetworkAddress;
  unsigned short *StringEndpoint;
  union {
    unsigned short *Reserved;
  } u1;
  UUID           ObjectUuid;
} RPC_BINDING_HANDLE_TEMPLATE_V1_W, *PRPC_BINDING_HANDLE_TEMPLATE_V1_W;

Члены

Version

Версия этой структуры. Для RPC_BINDING_HANDLE_TEMPLATE_V1 это значение должно иметь значение 1.

Flags

Значения флагов, описывающие определенные свойства шаблона RPC.

Значение Значение
RPC_BHT_OBJECT_UUID_VALID
Элемент ObjectUuid содержит допустимое значение. Если этот флаг не задан, то член ObjectUuid не содержит допустимый UUID.

ProtocolSequence

Строковый литерал последовательности протокола, связанный с этим дескриптором привязки. Может быть одним из указанных далее.

ncalrpc — указывает локальный RPC. ncacn_ip_tcp — указывает RPC через TCP/IP. ncacn_np — указывает RPC по именованным каналам. ncacn_http — указывает RPC через HTTP.

NetworkAddress

Указатель на строковое представление сетевого адреса для привязки.

StringEndpoint

Указатель на строковое представление конечной точки для привязки. Если используется динамическая конечная точка, задайте для этого элемента значение NULL. После разрешения конечной точки используйте RpcBindingToStringBinding, чтобы получить ее.

u1

u1.Reserved

Зарезервировано. Для этого элемента необходимо задать значение NULL.

ObjectUuid

UUID удаленного объекта. Семантика для этого UUID совпадает с семантикой для привязки строки. После создания дескриптора привязки вызовите RpcBindingSetObject , чтобы изменить UUID при необходимости.

Комментарии

Быстрые дескрипторы привязки немного отличаются от "классических" дескрипторов привязки тем, как они обрабатываются во время вызовов RpcBindingReset. RpcBindingReset — это вызов без операции для статических дескрипторов быстрой привязки. Однако для классических дескрипторов привязки RpcBindingReset преобразует статический дескриптор привязки в динамический для сохранения обратной совместимости.

В следующей таблице показано поведение дескрипторов статических и динамических привязок в отношении RpcBindingReset и RpcEpResolveBinding.

Тип конечной точки Статические Динамический
Тип дескриптора привязки быстрый; Классический быстрый; Классический
RpcBindingReset Нет операции Преобразуется в динамический Удаляет разрешенную конечную точку, если она присутствует Удаляет разрешенную конечную точку, если она присутствует
RpcEpResolveBinding Нет операции Нет операции Разрешает конечную точку, если она не разрешена ранее Разрешает конечную точку, если она не разрешена ранее

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Верхняя часть rpcdce.h (включая Rpc.h)

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

RPC_BINDING_HANDLE

RpcBindingBindd

RpcBindingCreate