Compartir a través de


Función WlanSetProfilePosition (wlanapi.h)

La función WlanSetProfilePosition establece la posición de un único perfil especificado en la lista de preferencias.

Sintaxis

DWORD WlanSetProfilePosition(
  [in] HANDLE     hClientHandle,
  [in] const GUID *pInterfaceGuid,
  [in] LPCWSTR    strProfileName,
  [in] DWORD      dwPosition,
       PVOID      pReserved
);

Parámetros

[in] hClientHandle

Identificador de sesión del cliente, obtenido por una llamada anterior a la función WlanOpenHandle .

[in] pInterfaceGuid

GUID de la interfaz.

[in] strProfileName

Nombre del perfil. Los nombres de perfil distinguen mayúsculas de minúsculas. Esta cadena debe terminar en NULL.

Windows XP con SP3 y LAN inalámbrica API para Windows XP con SP2: El nombre proporcionado debe coincidir con el nombre del perfil derivado automáticamente del SSID de la red. Para un perfil de red de infraestructura, se debe proporcionar el SSID para el nombre del perfil. Para un perfil de red ad hoc, el nombre proporcionado debe ser el SSID de la red ad hoc seguida de -adhoc.

[in] dwPosition

Indica la posición de la lista de preferencias a la que se debe desplazar el perfil. 0 (cero) corresponde al primer perfil de la lista devuelto por la función WlanGetProfileList .

pReserved

Reservado para uso futuro. Debe establecerse en NULL.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS.

Si se produce un error en la función, el valor devuelto puede ser uno de los siguientes códigos de retorno.

Código devuelto Descripción
ERROR_ACCESS_DENIED
El autor de la llamada no tiene permisos suficientes para cambiar la posición del perfil.

Antes de que WlanSetProfilePosition realice una operación que cambie el orden relativo de todos los perfiles de usuario de la lista de perfiles o mueva un perfil de todos los usuarios a una posición inferior en la lista de perfiles, WlanSetProfilePosition recupera la lista de control de acceso discrecional (DACL) almacenada con el objeto wlan_secure_all_user_profiles_order . Si la DACL no contiene una entrada de control de acceso (ACE) que concede permiso WLAN_WRITE_ACCESS al token de acceso del subproceso de llamada, WlanSetProfilePosition devuelve ERROR_ACCESS_DENIED.

ERROR_INVALID_PARAMETER
hClientHandle es NULL o no es válido, pInterfaceGuid es NULL, strProfileName es NULL o pReserved no es NULL.
ERROR_INVALID_HANDLE
El identificador hClientHandle no se encontró en la tabla de identificadores.
RPC_STATUS
Varios códigos de error.

Comentarios

No se puede cambiar la posición de los perfiles de directiva de grupo.

De forma predeterminada, solo un usuario que ha iniciado sesión como miembro del grupo Administradores puede cambiar la posición de un perfil de usuario completo. Llama a WlanGetSecuritySettings para determinar los derechos de usuario reales necesarios para cambiar la posición de un perfil de usuario completo.

Para establecer la posición del perfil en la línea de comandos, use el comando netsh wlan set profileorder . Para obtener más información, consulta Netsh Commands for Wireless Local Area Network (wlan).

Windows XP con SP3 y LAN inalámbrica API para Windows XP con SP2: Los perfiles ad hoc aparecen después de los perfiles de infraestructura de la lista de perfiles. Si intenta colocar un perfil ad hoc antes de un perfil de infraestructura mediante WlanSetProfilePosition, la llamada a WlanSetProfilePosition se realizará correctamente, pero el servicio Wireless Zero Configuration volverá a ordenar la lista de perfiles de forma que el perfil ad hoc se coloque después de todos los perfiles de red de infraestructura.

No se admiten perfiles de invitado, perfiles con autenticación del Servicio de aprovisionamiento inalámbrico (WPS) y perfiles con Wi-Fi autenticación de Access-None protegida (WPA-None). Cualquier perfil que aparezca en la lista de perfiles preferidos tiene una posición fija en la lista de perfiles. Esto significa que su posición no se puede cambiar mediante WlanSetProfilePosition y que su posición no se ve afectada por los cambios de posición de otros perfiles.

Todas las funciones LAN inalámbricas requieren un GUID de interfaz para la interfaz inalámbrica al realizar operaciones de perfil. Cuando se quita una interfaz inalámbrica, su estado se borra del servicio LAN inalámbrico (WLANSVC) y no se pueden realizar operaciones de perfil.

La función WlanSetProfilePosition puede producir un error con ERROR_INVALID_PARAMETER si la interfaz inalámbrica especificada en el parámetro pInterfaceGuid se ha quitado del sistema (un adaptador inalámbrico USB que se ha quitado, por ejemplo).

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista, Windows XP con SP3 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado wlanapi.h (incluya Wlanapi.h)
Library Wlanapi.lib
Archivo DLL Wlanapi.dll
Redistribuible API LAN inalámbrica para Windows XP con SP2

Consulte también

WlanGetProfile

WlanGetProfileList

WlanSetProfile

WlanSetProfileList