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


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

Структура RPC_ENDPOINT_TEMPLATE указывает свойства конечной точки сервера группы интерфейса RPC, включая последовательность и имя протокола.

Синтаксис

typedef struct {
  unsigned long Version;
  RPC_CSTR      ProtSeq;
  RPC_CSTR      Endpoint;
  void          *SecurityDescriptor;
  unsigned long Backlog;
} RPC_ENDPOINT_TEMPLATEA, *PRPC_ENDPOINT_TEMPLATEA;

Члены

Version

Это поле зарезервировано и должно иметь значение 0.

ProtSeq

Указатель на строковый идентификатор последовательности протокола для регистрации в библиотеке времени выполнения RPC. Поддерживаются только ncalrpc, ncacn_ip_tcp и ncacn_np. Это значение не должно иметь значение NULL.

Endpoint

Необязательный указатель на сведения об адресе конечной точки для использования при создании привязки для последовательности протокола, указанной в параметре Protseq . Укажите ЗНАЧЕНИЕ NULL для использования динамических конечных точек.

SecurityDescriptor

Указатель на необязательный параметр, предоставленный для подсистемы безопасности. Используется только для последовательностей протоколов ncacn_np и ncalrpc. Все остальные последовательности протоколов игнорируют этот параметр. Использование дескриптора безопасности в конечной точке для обеспечения безопасности сервера не рекомендуется.

Backlog

Длина очереди невыполненной работы для последовательности протокола ncacn_ip_tcp . Все остальные последовательности протоколов игнорируют этот параметр. Используйте RPC_C_PROTSEQ_MAX_REQS_DEFAULT , чтобы указать значение по умолчанию. Дополнительные сведения см. в разделе "Примечания".

Комментарии

Значение, указанное в разделе Невыполненная работа приложений, является лишь подсказкой. Время выполнения RPC или поставщик сокетов Windows может переопределить значение. Например, в Windows XP или Windows 2000 Профессиональная значение ограничено 5. Значения больше 5 игнорируются, а вместо этого используется 5. В Windows Server 2003 и Windows 2000 Server это значение будет учитываться.

Приложения должны быть осторожны, чтобы передать разумные значения в невыполненной работы. Большие значения на сервере, расширенном сервере или сервере центра обработки данных могут привести к использованию большого объема памяти нестраничного пула. Использование слишком малого значения также является неблагоприятным, так как это может привести к тому, что пакеты TCP SYN будут удовлетворены TCP RST с сервера, если очередь невыполненной работы будет исчерпана.

Разработчик приложения должен сбалансировать объем памяти и требования к масштабируемости при определении правильного значения для невыполненной работы.

Примечание

Заголовок rpcdce.h определяет RPC_ENDPOINT_TEMPLATE в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

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

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

RpcServerInqBindings