Рекомендации по операции перед связыванием
Библиотека DLL расширений IHV должна соответствовать этим рекомендациям при выполнении операции предварительной связи.
При вызове функции Dot11ExtIhvPerformPreAssociate БИБЛИОТЕКА расширений IHV должна выполнять следующие действия:
- Проверьте расширения IHV для профиля подключения и безопасности. Если параметры профиля недопустимы, функция Dot11ExtIhvPerformPreAssociate возвращает соответствующий код ошибки, как определено в Winerror.h.
- Создайте и запустите новый поток для завершения операции предварительной связи. Так как операция предварительной связи должна быть выполнена асинхронно из вызова Dot11ExtIhvPerformPreAssociate, библиотека DLL расширений IHV должна вызывать Dot11ExtPreAssociateCompletion из этого потока после завершения операции.
- Возврат ERROR_SUCCESS из вызова функции. На этом этапе операционная система получает уведомление о допустимости сетевого профиля и выполнении операции предварительного сопоставления.
Библиотека DLL расширений IHV может вызывать функцию Dot11ExtNicSpecificExtension для настройки адаптера беспроводной локальной сети (WLAN). Эту функцию можно вызвать либо из вызова Dot11ExtIhvPerformPreAssociate , либо из потока, который обрабатывает операцию предварительной связи после возврата Dot11ExtIhvPerformPreAssociate .
Вызовы Dot11ExtSetProfileCustomUserData, Dot11ExtGetProfileCustomUserData и Dot11ExtSetCurrentProfile не должны выполняться из вызова Dot11ExtIhvPerformPreAssociate. Эти функции можно вызывать только после того, как Dot11ExtIhvPerformPreAssociate вернет ERROR_SUCCESS.
После того как библиотека DLL расширений IHV вызовет Dot11ExtPreAssociateCompletion для завершения операции перед связыванием, дескриптор сеанса подключения становится недействительным. Операционная система передает этот дескриптор через параметр hConnectSessiondot11ExtIhvPerformPreAssociate. Библиотека DLL не должна использовать это значение дескриптора при вызове функций расширяемости IHV, которые объявляют параметр hConnectSession .
Дополнительные сведения о функциях расширяемости IHV см. в разделе Собственные функции расширяемости IHV 802.11.
Если вызывается функция Dot11ExtIhvAdapterReset , библиотека DLL расширений IHV должна отменить операцию предварительной связи, вызвав Метод Dot11ExtPreAssociateCompletion. Дополнительные сведения об операции сброса см. в разделе Сброс адаптера WLAN 802.11.
Если вызывается функция Dot11ExtIhvDeinitAdapter , библиотека DLL расширений IHV должна внутренне отменить операцию предварительной связи. Однако он не должен вызывать какие-либо функции расширяемости IHV, которые могут быть вызваны только после инициализации адаптера, включая Dot11ExtPreAssociateCompletion.