Функция WlanSaveTemporaryProfile (wlanapi.h)
Функция WlanSaveTemporaryProfile сохраняет временный профиль в хранилище профилей.
Синтаксис
DWORD WlanSaveTemporaryProfile(
[in] HANDLE hClientHandle,
[in] const GUID *pInterfaceGuid,
[in] LPCWSTR strProfileName,
[in, optional] LPCWSTR strAllUserProfileSecurity,
[in] DWORD dwFlags,
[in] BOOL bOverWrite,
PVOID pReserved
);
Параметры
[in] hClientHandle
Дескриптор сеанса клиента, полученный при предыдущем вызове функции WlanOpenHandle .
[in] pInterfaceGuid
GUID интерфейса.
[in] strProfileName
Имя сохраняемого профиля. В именах профилей учитывается регистр. Эта строка должна быть завершена null.
[in, optional] strAllUserProfileSecurity
Задает строку дескриптора безопасности для профиля всех пользователей. По умолчанию для нового профиля всех пользователей все пользователи имеют доступ на запись в профиль. Дополнительные сведения о разрешениях профиля см. в разделе Примечания.
Если параметр dwFlags имеет значение WLAN_PROFILE_USER, этот параметр игнорируется.
Если этот параметр имеет значение NULL для профиля всех пользователей, используются разрешения по умолчанию.
Если этот параметр не имеет значение NULL для профиля всех пользователей, строка дескриптора безопасности, связанная с профилем, создается или изменяется после создания и анализа объекта дескриптора безопасности в виде строки.
[in] dwFlags
Указывает флаги, устанавливаемые в профиле. Флаги можно объединять.
[in] bOverWrite
Указывает, перезаписывает ли этот профиль существующий профиль. Если этот параметр имеет значение FALSE и профиль уже существует, существующий профиль не будет перезаписан и будет возвращена ошибка.
pReserved
Зарезервировано для последующего использования. Необходимо задать значение NULL.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение будет ERROR_SUCCESS.
Если функция завершается сбоем, возвращаемое значение может быть одним из следующих кодов возврата.
Код возврата | Описание |
---|---|
|
Произошло одно из следующих условий:
|
|
Дескриптор hClientHandle не найден в таблице дескрипторов. |
|
Эта функция была вызвана из неподдерживаемой платформы. Это значение будет возвращено, если эта функция была вызвана из клиента Windows XP с пакетом обновления 3 (SP3) или API беспроводной локальной сети для Windows XP с пакетом обновления 2 (SP2). |
|
Различные коды ошибок. |
|
Интерфейс в настоящее время не подключен с помощью временного профиля. |
Комментарии
Временный профиль — это профиль, передаваемый в WlanConnect или созданный подсистемой обнаружения. Сетевое подключение можно установить с помощью временного профиля. При использовании этого API временный профиль и связанные данные пользователя сохраняются в хранилище профилей.
Новый профиль добавляется в верхней части списка после профилей групповой политики. Позиция профиля в списке не изменяется, если существующий профиль перезаписывается.
Профили всех пользователей имеют три связанных разрешения: чтение, запись и выполнение. Если у пользователя есть доступ на чтение, он может просматривать разрешения профиля. Если у пользователя есть доступ на выполнение, у него есть доступ на чтение, и пользователь также может подключаться к сети и отключаться от нее с помощью профиля. Если у пользователя есть доступ на запись, он имеет доступ на выполнение, а пользователь также может изменять и удалять разрешения, связанные с профилем.
Ниже описана процедура создания объекта дескриптора безопасности и его анализа в виде строки.
- Вызовите InitializeSecurityDescriptor , чтобы создать дескриптор безопасности в памяти.
- Вызовите SetSecurityDescriptorOwner.
- Вызовите Метод InitializeAcl , чтобы создать список управления доступом на уровне пользователей (DACL) в памяти.
- Вызовите Метод AddAccessAllowedAce или AddAccessDeniedAce , чтобы добавить записи управления доступом (ACE) в DACL. Задайте для параметра AccessMask одно из следующих побитовых сочетаний OR соответствующим образом:
- WLAN_READ_ACCESS
- WLAN_READ_ACCESS | WLAN_EXECUTE_ACCESS
- WLAN_READ_ACCESS | WLAN_EXECUTE_ACCESS | WLAN_WRITE_ACCESS
- Вызовите Метод SetSecurityDescriptorDacl , чтобы добавить DACL в дескриптор безопасности.
- Вызовите ConvertSecurityDescriptorToStringSecurityDescriptor , чтобы преобразовать дескриптор в строку.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | wlanapi.h (включая Wlanapi.h) |
Библиотека | Wlanapi.lib |
DLL | Wlanapi.dll |