Функция RpcNsBindingLookupBeginW (rpcnsi.h)
Функция RpcNsBindingLookupBegin создает контекст подстановки для интерфейса и объекта .
Синтаксис
RPC_STATUS RpcNsBindingLookupBeginW(
unsigned long EntryNameSyntax,
RPC_WSTR EntryName,
RPC_IF_HANDLE IfSpec,
UUID *ObjUuid,
unsigned long BindingMaxCount,
RPC_NS_HANDLE *LookupContext
);
Параметры
EntryNameSyntax
Синтаксис параметра EntryName .
Чтобы использовать синтаксис, указанный в записи значения реестра HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax, укажите значение RPC_C_NS_SYNTAX_DEFAULT.
EntryName
Указатель на имя записи, с которой начинается поиск совместимых привязок.
Чтобы использовать имя записи, указанной в записи значения реестра HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultEntry, укажите пустой указатель или пустую строку. В этом случае параметр EntryNameSyntax игнорируется, а библиотека времени выполнения использует синтаксис по умолчанию.
IfSpec
Структура, созданная заглушками, указывающая интерфейс для поиска. Если спецификация интерфейса не экспортирована или не имеет никакого значения для вызывающего объекта, укажите значение NULL для этого параметра. В этом случае возвращаемые привязки гарантированно будут иметь только совместимую и поддерживаемую последовательность протоколов и содержать указанный UUID объекта. Требуемый интерфейс может не поддерживаться контактным сервером.
ObjUuid
Указатель на необязательный объект UUID.
Для ненулевого UUID совместимые дескрипторы привязки возвращаются из записи, только если сервер экспортировал указанный объект UUID.
Для значения указателя NULL или nil UUID для этого параметра возвращенные дескрипторы привязки содержат один из UUID объекта, экспортированных совместимым сервером. Если сервер не экспортировал идентификаторы UUID объекта, возвращенные совместимые дескрипторы привязки содержат UUID объекта nil.
BindingMaxCount
Максимальное количество привязок, возвращаемых в параметре BindingVec из функции RpcNsBindingLookupNext .
Укажите нулевое значение, чтобы использовать число RPC_C_BINDING_MAX_COUNT_DEFAULT по умолчанию.
LookupContext
Возвращает указатель на дескриптор службы имен для использования с функциями RpcNsBindingLookupNext и RpcNsBindingLookupDone .
Возвращаемое значение
Значение | Значение |
---|---|
|
Вызов выполнен успешно. |
|
Недопустимый синтаксис имени. |
|
Синтаксис имени не поддерживается. |
|
Имя является неполным. |
|
Запись name-service не найдена. |
|
Служба имен недоступна. |
|
Недопустимый объект. |
Комментарии
Функция RpcNsBindingLookupBegin создает контекст подстановки для поиска совместимых с клиентом дескрипторов привязки на серверах, которые предлагают указанный интерфейс и объект .
Перед вызовом RpcNsBindingLookupNext клиентское приложение должно сначала вызвать RpcNsBindingLookupBegin для создания контекста подстановки. Параметры этой функции управляют работой функции RpcNsBindingLookupNext .
В windows 2000 среда RPC использует Active Directory в качестве базы данных службы имен, а порядок, в котором среда выполнения выполняет поиск, выглядит следующим образом:
- Поиск в локальном кэше.
- Если запись не найдена в локальном кэше, выполните поиск в Active Directory этого компьютера.
- Если запись не найдена на локальном компьютере, отправьте широковещательные запросы во все остальные службы Active Directory в домене.
Обратите внимание, что если запись существует в Active Directory, но с ней нет сведений, среда выполнения не будет выдавать этот широковещательный запрос.
Примечание
Заголовок rpcnsi.h определяет RpcNsBindingLookupBegin в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | rpcnsi.h (включая Rpc.h) |
Библиотека | Rpcns4.lib |
DLL | Rpcns4.dll |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по