Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Структура NSPV2_ROUTINE содержит сведения о функциях, реализованных поставщиком услуг пространства имен версии 2 (NSPv2).
Синтаксис
typedef struct _NSPV2_ROUTINE {
DWORD cbSize;
DWORD dwMajorVersion;
DWORD dwMinorVersion;
LPNSPV2STARTUP NSPv2Startup;
LPNSPV2CLEANUP NSPv2Cleanup;
LPNSPV2LOOKUPSERVICEBEGIN NSPv2LookupServiceBegin;
LPNSPV2LOOKUPSERVICENEXTEX NSPv2LookupServiceNextEx;
LPNSPV2LOOKUPSERVICEEND NSPv2LookupServiceEnd;
LPNSPV2SETSERVICEEX NSPv2SetServiceEx;
LPNSPV2CLIENTSESSIONRUNDOWN NSPv2ClientSessionRundown;
} NSPV2_ROUTINE, *PNSPV2_ROUTINE, *LPNSPV2_ROUTINE;
Members
cbSize
Тип: DWORD
Размер структуры в байтах.
dwMajorVersion
Тип: DWORD
Основная версия спецификации поставщика услуг, поддерживаемая этим поставщиком.
dwMinorVersion
Тип: DWORD
Дополнительная версия спецификации поставщика услуг, поддерживаемая этим поставщиком.
NSPv2Startup
Тип: LPNSPV2STARTUP
Указатель на функцию NSPv2Startup для этого поставщика NSPv2 .
NSPv2Cleanup
Тип: LPNSPV2CLEANUP
Указатель на функцию NSPv2Cleanup для этого поставщика NSPv2.
NSPv2LookupServiceBegin
Тип: LPNSPV2LOOKUPSERVICEBEGIN
Указатель на функцию NSPv2LookupServiceBegin для этого поставщика NSPv2.
NSPv2LookupServiceNextEx
Тип: LPNSPV2LOOKUPSERVICENEXTEX
Указатель на функцию NSPv2LookupServiceNextEx для этого поставщика NSPv2.
NSPv2LookupServiceEnd
Тип: LPNSPV2LOOKUPSERVICEEND
Указатель на функцию NSPv2LookupServiceEnd для этого поставщика NSPv2.
NSPv2SetServiceEx
Тип: LPNSPV2SETSERVICEEX
Указатель на функцию NSPv2SetServiceEx для этого поставщика NSPv2.
NSPv2ClientSessionRundown
Тип: LPNSPV2CLIENTSESSIONRUNDOWN
Указатель на функцию NSPv2ClientSessionRundown для этого поставщика NSPv2.
Замечания
Структура NSPV2_ROUTINE используется в составе архитектуры поставщика услуг пространства имен версии 2 (NSPv2), доступной в Windows Vista и более поздних версиях.
В Windows Vista и Windows Server 2008 структура NSPV2_ROUTINE может использоваться только для операций с поставщиками пространств имен NS_EMAIL.
Функция WSAAdvertiseProvider объявляет экземпляр поставщика NSPv2 для поиска клиентов. Вызывающий объект WSAAdvertiseProvider передает указатель на структуру NSPV2_ROUTINE в параметре pNSPv2Routine с точками входа NSPv2, поддерживаемыми поставщиком.
Для реализации следующих функций требуется поставщик NSPv2:
Все остальные функции являются необязательными, зависят от требований поставщика NSPv2.
Если функция не реализована, вызовы этой функции следует перехватывать функцией заглушки, возвращающей WSAEOPNOTSUPP. Указатель функции NSPv2 на неподдерживаемую функцию в структуре NSPV2_ROUTINE должен указывать на заглушку.
Как правило, поставщики NSPv2 реализуются в процессах, отличных от вызывающих приложений. Поставщики NSPv2 не активируются в результате действия клиента. Каждое приложение размещения поставщика решает, когда сделать определенный поставщик доступным или недоступным путем вызова функций WSAAdvertiseProvider и WSAUnadvertiseProvider . Действие клиента приводит только к попыткам связаться с поставщиком, если он доступен (когда поставщик пространства имен объявляется).
Процесс может одновременно реализовывать и объявлять несколько поставщиков. Сокеты Windows будут управлять поставщиками пространств имен, отправляя вызовы в правильный. Он также скрывает сведения о интерфейсе RPC и преобразует межпроцессные вызовы в вызовы внутри процесса. Таким образом, поставщик NSPv2 должен реализовать только таблицу функций точки входа, аналогичную структуре NSP_ROUTINE , используемой поставщиком NSPv1. Поставщик NSPv2 не должен беспокоиться о конкретных требованиях RPC (маршаллинга данных и сериализации, например).
Функция WSAUnadvertiseProvider делает определенный поставщик пространства имен недоступным для клиентов.
Требования
| Требование | Ценность |
|---|---|
| Минимальный поддерживаемый клиент | Windows Vista [только классические приложения] |
| минимальный поддерживаемый сервер | Windows Server 2008 [только классические приложения] |
| Header | ws2spi.h |