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


Функция WlanSetProfileEapUserData (wlanapi.h)

Функция WlanSetProfileEapUserData задает учетные данные пользователя по протоколу EAP в соответствии с необработанными данными EAP. Учетные данные пользователя применяются к профилю в интерфейсе.

Синтаксис

DWORD WlanSetProfileEapUserData(
  [in] HANDLE          hClientHandle,
  [in] const GUID      *pInterfaceGuid,
  [in] LPCWSTR         strProfileName,
  [in] EAP_METHOD_TYPE eapType,
  [in] DWORD           dwFlags,
  [in] DWORD           dwEapUserDataSize,
  [in] const LPBYTE    pbEapUserData,
       PVOID           pReserved
);

Параметры

[in] hClientHandle

Дескриптор сеанса клиента, полученный при предыдущем вызове функции WlanOpenHandle .

[in] pInterfaceGuid

GUID интерфейса.

[in] strProfileName

Имя профиля, связанного с данными пользователя EAP. В именах профилей учитывается регистр. Эта строка должна быть завершена null.

[in] eapType

Структура EAP_METHOD_TYPE , содержащая метод, для которого вызывающий объект предоставляет учетные данные пользователя EAP.

[in] dwFlags

Набор флагов, которые изменяют поведение функции.

В Windows Vista и Windows Server 2008 этот параметр зарезервирован и должен иметь нулевое значение.

В Windows 7, Windows Server 2008 R2 и более поздних версиях этот параметр может иметь одно из следующих значений.

Значение Значение
WLAN_SET_EAPHOST_DATA_ALL_USERS
0x00000001
Задайте данные узла EAP для всех пользователей этого профиля.

[in] dwEapUserDataSize

Размер (в байтах) данных, на которые указывает pbEapUserData.

[in] pbEapUserData

Указатель на необработанные данные EAP, используемые для задания учетных данных пользователя.

В Windows Vista и Windows Server 2008 этот параметр не должен иметь значение NULL.

В Windows 7, Windows Server 2008 R2 и более поздних версиях этот параметр может иметь значение NULL , чтобы удалить сохраненные учетные данные для этого профиля, если параметр dwFlags содержит WLAN_SET_EAPHOST_DATA_ALL_USERS а параметр dwEapUserDataSize равен 0.

pReserved

Зарезервировано для последующего использования. Необходимо задать значение NULL.

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

Если функция выполнена успешно, возвращаемое значение будет ERROR_SUCCESS.

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

Код возврата Описание
ERROR_ACCESS_DENIED
Отказано в доступе". Это значение возвращается, если вызывающий объект не имеет доступа на запись в профиль.
ERROR_INVALID_PARAMETER
Неправильный параметр. Это значение возвращается при возникновении какого-либо из следующих условий:
  • hClientHandle имеет значение NULL.
  • pInterfaceGuid имеет значение NULL.
  • strProfileName имеет значение NULL
  • pvReserved не имеет значения NULL.

В Windows Vista и Windows Server 2008 это значение возвращается, если параметр pbEapUserData имеет значение NULL.

В Windows 7, Windows Server 2008 R2 и более поздних версиях эта ошибка возвращается, если параметр pbEapUserDataData имеет значение NULL, но параметр dwEapUserDataSize не равен 0 или параметр dwFlags не содержит WLAN_SET_EAPHOST_DATA_ALL_USERS.

ERROR_INVALID_HANDLE
Недопустимый дескриптор. Эта ошибка возвращается, если дескриптор hClientHandle не найден в таблице дескрипторов.
ERROR_NOT_ENOUGH_MEMORY
Недостаточно места для обработки этой команды.
ERROR_NOT_SUPPORTED
Запрос не поддерживается.

Это значение возвращается, если параметры профиля не разрешают хранение пользовательских данных. Это может произойти, если включен единый вход или запрос на удаление сохраненных учетных данных для этого профиля (параметр pbEapUserData имеет значение NULL, параметр dwFlags содержит WLAN_SET_EAPHOST_DATA_ALL_USERS, а параметр dwEapUserDataSize равен 0).

На Windows 10 Windows Server 2016 и более поздних версий это значение возвращается, если функция WlanSetProfileEapUserData была вызвана для профиля, использующего для проверки подлинности метод, отличный от 802.1X.

Это значение также возвращается, если эта функция была вызвана из клиента Windows XP с пакетом обновления 3 (SP3) или API беспроводной локальной сети для Windows XP с пакетом обновления 2 (SP2).

ERROR_SERVICE_NOT_ACTIVE
Служба не запущена. Это значение возвращается, если служба беспроводной локальной сети не запущена.
RPC_STATUS
Различные коды ошибок.

Комментарии

Функция WlanSetProfileEapUserData задает учетные данные пользователя EAP для использования в профиле. В Windows Vista и Windows Server 2008 эти учетные данные могут использоваться только вызывающим.

Параметр eapType — это структура EAP_METHOD_TYPE , содержащая сведения о типе, идентификации и авторе метода EAP. Элемент eapTypeструктуры EAP_METHOD_TYPE является EAP_TYPE структурой, содержащей сведения об идентификации типа и поставщика для метода EAP.

Дополнительные сведения о выделении типов методов EAP см. в разделе 6.2 документа RFC 3748 , опубликованного IETF.

В Windows 7, Windows Server 2008 R2 и более поздних версиях улучшена функция WlanSetProfileEapUserData . Учетные данные пользователя EAP можно задать для всех пользователей профиля, если параметр dwFlags содержит WLAN_SET_EAPHOST_DATA_ALL_USERS. Учетные данные пользователя EAP в профиле также можно удалить. Чтобы удалить учетные данные пользователя EAP в профиле, параметр pbEapUserData должен иметь значение NULL, параметр dwFlags должен быть равен WLAN_SET_EAPHOST_DATA_ALL_USERS, а параметр dwEapUserDataSize должен иметь значение 0.

Для всех функций беспроводной локальной сети требуется guid интерфейса для беспроводного интерфейса при выполнении операций с профилем. При удалении беспроводного интерфейса его состояние удаляется из службы беспроводной локальной сети (WLANSVC) и операции с профилем невозмещаются.

Функция WlanSetProfileEapUserData может завершиться сбоем при ERROR_INVALID_PARAMETER , если беспроводной интерфейс, указанный в параметре pInterfaceGuid , был удален из системы (например, удаленный беспроводной адаптер USB).

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header wlanapi.h (включая Wlanapi.h)
Библиотека Wlanapi.lib
DLL Wlanapi.dll

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

EAP_METHOD_TYPE

EAP_TYPE

WlanGetProfile

WlanGetProfileCustomUserData

WlanGetProfileList

WlanSetProfile

WlanSetProfileEapXmlUserData