Condividi tramite


Funzione WlanSaveTemporaryProfile (wlanapi.h)

La funzione WlanSaveTemporaryProfile salva un profilo temporaneo nell'archivio profili.

Sintassi

DWORD WlanSaveTemporaryProfile(
  [in]           HANDLE     hClientHandle,
  [in]           const GUID *pInterfaceGuid,
  [in]           LPCWSTR    strProfileName,
  [in, optional] LPCWSTR    strAllUserProfileSecurity,
  [in]           DWORD      dwFlags,
  [in]           BOOL       bOverWrite,
                 PVOID      pReserved
);

Parametri

[in] hClientHandle

Handle di sessione del client ottenuto da una chiamata precedente alla funzione WlanOpenHandle .

[in] pInterfaceGuid

GUID dell'interfaccia.

[in] strProfileName

Nome del profilo da salvare. I nomi dei profili sono distinzione tra maiuscole e minuscole. Questa stringa deve essere terminata con null.

[in, optional] strAllUserProfileSecurity

Imposta la stringa del descrittore di sicurezza nel profilo all-user. Per impostazione predefinita, per un nuovo profilo utente all-user, tutti gli utenti hanno accesso in scrittura al profilo. Per altre informazioni sulle autorizzazioni del profilo, vedere la sezione Osservazioni.

Se dwFlags è impostato su WLAN_PROFILE_USER, questo parametro viene ignorato.

Se questo parametro è impostato su NULL per un profilo utente all-user, vengono usate le autorizzazioni predefinite.

Se questo parametro non è NULL per un profilo utente all-user, la stringa del descrittore di sicurezza associata al profilo viene creata o modificata dopo la creazione e l'analisi dell'oggetto descrittore di sicurezza come stringa.

[in] dwFlags

Specifica i flag da impostare sul profilo. I flag possono essere combinati.

Valore Significato
0
Il profilo è un profilo all-user.
WLAN_PROFILE_USER
0x00000002
Il profilo è un profilo per utente.
WLAN_PROFILE_CONNECTION_MODE_SET_BY_CLIENT
0x00010000
Il profilo è stato creato dal client.
WLAN_PROFILE_CONNECTION_MODE_AUTO
0x00020000
Il profilo è stato creato dal modulo di configurazione automatica.

[in] bOverWrite

Specifica se questo profilo sovrascrive un profilo esistente. Se questo parametro è FALSE e il profilo esiste già, il profilo esistente non verrà sovrascritto e verrà restituito un errore.

pReserved

Riservato per utilizzi futuri. Deve essere impostato su NULL.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è ERROR_SUCCESS.

Se la funzione ha esito negativo, il valore restituito può essere uno dei codici restituiti seguenti.

Codice restituito Descrizione
ERROR_INVALID_PARAMETER
Si è verificata una delle seguenti condizioni:
  • hClientHandle è NULL o non valido.
  • pInterfaceGuid è NULL.
  • pReserved non è NULL.
  • dwFlags non è impostato su una combinazione di uno o più dei valori specificati nella tabella precedente.
  • dwFlags è impostato su WLAN_PROFILE_CONNECTION_MODE_AUTO e strProfileName è NULL.
ERROR_INVALID_HANDLE
L'handle hClientHandle non è stato trovato nella tabella handle.
ERROR_NOT_SUPPORTED
Questa funzione è stata chiamata da una piattaforma non supportata. Questo valore verrà restituito se questa funzione è stata chiamata da un'API Windows XP con SP3 o WIRELESS LAN per Windows XP con il client SP2.
RPC_STATUS
Vari codici di errore.
ERROR_INVALID_STATE
L'interfaccia non è attualmente connessa usando un profilo temporaneo.

Commenti

Un profilo temporaneo è quello passato a WlanConnect o generato dal motore di individuazione. Una connessione di rete può essere stabilita usando un profilo temporaneo. L'uso di questa API salva il profilo temporaneo e i dati utente associati all'archivio profili.

Un nuovo profilo viene aggiunto nella parte superiore dell'elenco dopo i profili dei criteri di gruppo. La posizione di un profilo nell'elenco non viene modificata se un profilo esistente viene sovrascritto.

Tutti i profili utente hanno tre autorizzazioni associate: lettura, scrittura ed esecuzione. Se un utente ha accesso in lettura, l'utente può visualizzare le autorizzazioni del profilo. Se un utente ha accesso eseguito, l'utente ha accesso in lettura e l'utente può connettersi e disconnettersi da una rete usando il profilo. Se un utente ha accesso in scrittura, l'utente ha accesso e l'utente può anche modificare ed eliminare le autorizzazioni associate a un profilo.

Di seguito viene descritta la procedura per la creazione di un oggetto descrittore di sicurezza e l'analisi come stringa.

  1. Chiamare InitializeSecurityDescriptor per creare un descrittore di sicurezza in memoria.
  2. Chiamare SetSecurityDescriptorOwner.
  3. Chiamare InitializeAcl per creare un elenco di controllo di accesso discrezionale (DACL) in memoria.
  4. Chiamare AddAccessAllowedAce o AddAccessDeniedAce per aggiungere voci di controllo di accesso (ACEs) all'elenco di controllo di accesso. Impostare il parametro AccessMask su una delle combinazioni OR bit per bit seguenti in base alle esigenze:
    • WLAN_READ_ACCESS
    • WLAN_READ_ACCESS | WLAN_EXECUTE_ACCESS
    • WLAN_READ_ACCESS | WLAN_EXECUTE_ACCESS | WLAN_WRITE_ACCESS
  5. Chiamare SetSecurityDescriptorDacl per aggiungere l'elenco dati al descrittore di sicurezza.
  6. Chiamare ConvertSecurityDescriptorToStringSecurityDescriptor per convertire il descrittore in stringa.
La stringa restituita da ConvertSecurityDescriptorToStringSecurityDescriptor può quindi essere usata come valore del parametro strAllUserProfileSecurity quando si chiama WlanSaveTemporaryProfile.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wlanapi.h (include Wlanapi.h)
Libreria Wlanapi.lib
DLL Wlanapi.dll

Vedi anche

Autorizzazioni api Wifi native