API de interfaz de usuario inalámbricas
Windows 8, Windows Server 2012 y versiones posteriores incluyen una nueva característica del Administrador de conexiones que permite a los usuarios conectarse fácilmente a Internet y a otras redes (redes profesionales y domésticas, por ejemplo). Esta nueva característica administrador de conexiones reemplaza la anterior Connect a una red y Administrar redes inalámbricas interfaces de usuario incluidas con versiones anteriores de Windows para administrar conexiones Wifi nativas.
En Windows 7, Windows Server 2008 y Windows Vista, hay una serie de interfaces de usuario (INTERFACES) usadas para conectarse a una red inalámbrica o configurarla. Estas interfaces de usuario se pueden iniciar en una aplicación mediante funciones nativas de Wifi y Windows Shell. Estas INTERFACES de usuario no están disponibles en Windows 8, Windows Server 2012 y versiones posteriores.
Windows XP con LAN INALÁMBRICA SP3 y SP3 para Windows XP con SP2: No se puede iniciar ninguna interfaz de usuario usada para conectarse a una red inalámbrica o configurar una red inalámbrica en una aplicación mediante programación.
Conexión a una red
En Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 y Windows Vista, el asistente Conectar a una red se puede usar para establecer una conexión a una red inalámbrica. Puede usar la funciónShellExecutepara iniciar el asistente Conectar a una red.
El código siguiente muestra una llamada ShellExecute que inicia el asistente Conectar a una red.
#ifndef UNICODE
#define UNICODE
#endif
#include <windows.h>
#include <shellapi.h>
// Need to link with shell32.lib
#pragma comment(lib, "shell32.lib")
void wmain()
{
ShellExecute(
NULL,
L"open",
L"shell:::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{38a98528-6cbf-4ca9-8dc0-b1e1d10f7b1b}",
NULL,
NULL,
SW_SHOWNORMAL);
}
administrar redes inalámbricas
En Windows 7, Windows Server 2008 y Windows Vista, el elemento Administrar redes inalámbricas panel de control se usa para administrar perfiles de red inalámbrica. La funciónShellExecute detambién se puede usar para iniciar el elemento Administrar redes inalámbricas. La ruta de acceso que se va a usar al llamar a ShellExecute en Windows 7 y Windows Vista es la siguiente:
shell:::{26EE0668-A00A-44D7-9371-BEB064C98683}\3\::{1fa9085f-25a2-489b-85d4-86326eedcd87}
.
En el código de ejemplo siguiente se muestra cómo usar shellExecute para iniciar el asistente para redes inalámbricas administradas desde una aplicación.
#ifndef UNICODE
#define UNICODE
#endif
#include <windows.h>
#include <shellapi.h>
#include <stdio.h>
// Need to link with shell32.lib
#pragma comment(lib, "shell32.lib")
int wmain()
{
//-----------------------------------------
// Declare and initialize variables
HINSTANCE nResult;
PCWSTR lpOperation = L"open";
PCWSTR lpFile=
L"shell:::{26EE0668-A00A-44D7-9371-BEB064C98683}\\3\\::{1fa9085f-25a2-489b-85d4-86326eedcd87}";
nResult = ShellExecute(
NULL, // Hwnd
lpOperation, // do not request elevation unless needed
lpFile,
NULL, // no parameters
NULL, // use current working directory
SW_SHOWNORMAL);
if((int)nResult == SE_ERR_ACCESSDENIED)
{
wprintf(L"ShellExecute returned access denied\n");
wprintf(L" Executing the ShellExecute command elevated\n");
nResult = ShellExecute(
NULL,
L"runas", // Trick for requesting elevation
lpFile,
NULL, // no parameters
NULL, // use current working directory
SW_HIDE);
}
if ( (int) nResult < 32) {
wprintf(L" ShellExecute failed with error %d\n", (int) nResult);
return 1;
}
else {
wprintf(L" ShellExecute succeeded and returned value %d\n", (int) nResult);
return 0;
}
}
Configuración avanzada para perfiles de red inalámbrica
Windows Vista y versiones posteriores incluyen una interfaz de usuario avanzada que se usa para ver y editar la configuración avanzada de un perfil de red inalámbrica. Puede iniciar esta interfaz de usuario avanzada llamando a la funciónWlanUIEditProfile.
Temas relacionados