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


Функция WebhostRegisterProtocol

Объявляет протокол, поддерживаемый адаптером прослушивателя.

Синтаксис

HRESULT WebhostRegisterProtocol(  
   IN LPCWSTR ProtocolId,  
   IN VOID* pListenerCallbacks,  
   IN VOID* pContext,  
   OUT DWORD* pProtocolHandle  
);  

Параметры

ProtocolId
[IN] Строка, содержащая протокол, поддерживаемый этим адаптером прослушивателя.

pListenerCallbacks
[IN] Указатель VOID на структуру WEBHOST_LISTENER_CALLBACKS .

pContext
[IN] Произвольный VOID указатель, который будет передавать адаптер прослушивателя.

pProtocolHandle
[OUT] Указатель на DWORD объект , содержащий уникальный ключ процесса, представляющий этот протокол.

Возвращаемое значение

Объект HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.

Значение Определение
S_OK Указывает, что операция выполнена успешно.
HRESULT_FROM_WIN32( ERROR_ALREADY_EXISTS ) Указывает, что в этом процессе для этого протокола уже зарегистрирован адаптер прослушивателя.
E_INVALIDARG Указывает, что один из параметров недопустим.
E_OUTOFMEMORY Указывает, что память кучи исчерпана.

Комментарии

Сначала необходимо вызвать функцию WebhostRegisterProtocol при запуске адаптера прослушивателя. WebhostRegisterProtocol Является асинхронным, поэтому успешное возвращение не гарантирует успешность вызова. Служба активации windows (WAS) уведомляет прослушивателя об успешной регистрации с помощью функции PFN_WEBHOST_LISTENER_CONFIG_MANAGER_CONNECTED . PFN_WEBHOST_LISTENER_CONFIG_MANAGER_CONNECTED передается в параметре pListenerCallbacks в этот вызов.

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

Не следует задавать состояние службы прослушивателя SERVICE_RUNNING из этой функции обратного вызова. Состояние службы следует задать SERVICE_RUNNING только после завершения инициализации и прослушивателя протокола (обычно после уведомления PFN_WEBHOST_LISTENER_CONFIG_MANAGER_INITIALIZATION_COMPLETED ).

Параметр pContext передается адаптеру прослушивателя при каждом вызове функции обратного вызова. Его можно использовать при реализации нескольких протоколов, использующих одну структуру обратного вызова.

Чтобы клиентская библиотека подключилась к службе активации процессов Windows, необходимо выполнить следующие условия.

  • Раздел <listenerAdapters> конфигурации в файле Was.config должен объявлять протокол и удостоверение, под которым будут работать адаптеры прослушивателя.

  • Служба активации процессов Windows должна быть запущена.

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

Требования

Тип Описание
клиент — IIS 7.0 в Windows Vista
— IIS 7.5 в Windows 7
— IIS 8.0 в Windows 8
— IIS 10.0 в Windows 10
Сервер — IIS 7.0 в Windows Server 2008
— IIS 7.5 в Windows Server 2008 R2
— IIS 8.0 в Windows Server 2012
— IIS 8.5 в Windows Server 2012 R2
— IIS 10.0 в Windows Server 2016
Продукт — IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
— IIS Express 7.5, IIS Express 8.0, IIS Express 10.0
Заголовок Listeneradapter.h

См. также:

Функция PFN_WEBHOST_LISTENER_CONFIG_MANAGER_INITIALIZATION_COMPLETED
Экспортированные функции адаптера прослушивателя