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


структура MPR40_SERVICE_CHARACTERISTICS (stm.h)

Структура MPR_SERVICE_CHARACTERISTICS содержит сведения, используемые для регистрации протокола маршрутизации в диспетчере маршрутизатора.

Синтаксис

typedef struct _MPR40_SERVICE_CHARACTERISTICS {
  DWORD                              dwVersion;
  DWORD                              dwProtocolId;
  DWORD                              fSupportedFunctionality;
  PIS_SERVICE                        pfnIsService;
  PDO_UPDATE_SERVICES                pfnUpdateServices;
  PCREATE_SERVICE_ENUMERATION_HANDLE pfnCreateServiceEnumerationHandle;
  PENUMERATE_GET_NEXT_SERVICE        pfnEnumerateGetNextService;
  PCLOSE_SERVICE_ENUMERATION_HANDLE  pfnCloseServiceEnumerationHandle;
  PGET_SERVICE_COUNT                 pfnGetServiceCount;
  PCREATE_STATIC_SERVICE             pfnCreateStaticService;
  PDELETE_STATIC_SERVICE             pfnDeleteStaticService;
  PBLOCK_CONVERT_SERVICES_TO_STATIC  pfnBlockConvertServicesToStatic;
  PBLOCK_DELETE_STATIC_SERVICES      pfnBlockDeleteStaticServices;
  PGET_FIRST_ORDERED_SERVICE         pfnGetFirstOrderedService;
  PGET_NEXT_ORDERED_SERVICE          pfnGetNextOrderedService;
} MPR40_SERVICE_CHARACTERISTICS;

Члены

dwVersion

При входе указывает версию RRAS, выполняющуюся в данный момент.

В выходных данных протокол маршрутизации должен указывать требуемую версию RRAS.

Символ, MS_ROUTER_VERSION в файле заголовка Routprot.h, определен как версия RRAS для данной реализации.

dwProtocolId

Указывает протокол маршрутизации, который диспетчер маршрутизатора запрашивает для регистрации библиотеки DLL. (Общее пространство имен используется для всех семейств протоколов.)

fSupportedFunctionality

При входе указывает функциональные возможности, поддерживаемые диспетчером маршрутизатора.

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

Этот параметр является одним или несколькими из следующих значений.

Значение Значение
МАРШРУТИЗАЦИИ
Протокол участвует в маршрутизации по нескольким протоколам путем импорта API диспетчера таблиц маршрутизации. Существует один диспетчер таблиц маршрутизации, который поддерживает таблицу для каждого семейства протоколов (например, IP и IPX).
УСЛУГИ
Протокол берет на себя ответственность за управление службами (например, IPX SAP) и предоставляет API управления таблицами служб.
DEMAND_UPDATE_ROUTES
Протокол может выполнять автостатическое обновление маршрутов по запросу диспетчера маршрутизатора.
DEMAND_UPDATE_SERVICES
Протокол может выполнять автостатическое обновление служб по запросу диспетчера маршрутизатора.

pfnIsService

Указатель на реализацию функции IsService для этого протокола маршрутизации.

pfnUpdateServices

pfnCreateServiceEnumerationHandle

Указатель на реализацию функции CreateServiceEnumerationHandle для этого протокола маршрутизации.

pfnEnumerateGetNextService

Указатель на реализацию функции EnumerateGetNextService для этого протокола маршрутизации.

pfnCloseServiceEnumerationHandle

Указатель на реализацию функции CloseServiceEnumerationHandle для этого протокола маршрутизации.

pfnGetServiceCount

Указатель на реализацию функции GetServiceCount для этого протокола маршрутизации.

pfnCreateStaticService

Указатель на реализацию функции CreateStaticService для этого протокола маршрутизации.

pfnDeleteStaticService

Указатель на реализацию функции DeleteStaticService для этого протокола маршрутизации.

pfnBlockConvertServicesToStatic

Указатель на реализацию функции BlockConvertServicesToStatic для этого протокола маршрутизации.

pfnBlockDeleteStaticServices

Указатель на реализацию функции BlockDeleteStaticServices для этого протокола маршрутизации.

pfnGetFirstOrderedService

Указатель на реализацию функции GetFirstOrderedService для этого протокола маршрутизации.

pfnGetNextOrderedService

Указатель на реализацию функции GetNextOrderedService для этого протокола маршрутизации.

Комментарии

Члены этой структуры являются указателями на функции управления таблицами служб, реализованные в библиотеке DLL протокола маршрутизации. Протокол маршрутизации заполняет значения адресов для этих указателей во время вызова функции RegisterProtocol .

Только библиотеки DLL протокола маршрутизации, поддерживающие службы, должны заполнять структуру MPR_SERVICE_CHARACTERISTICS .

Полное описание конкретной функции, на которую указывает один из элементов структуры, см. на странице справочника по этой функции.

Чтобы использовать эту структуру, пользователь должен добавить -DMPR50=1 к флагам компилятора.

Требования

   
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть stm.h

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

MPR_ROUTING_CHARACTERISTICS

Идентификаторы протокола

RegisterProtocol

Справочник по интерфейсу протокола маршрутизации

Структуры интерфейса протокола маршрутизации