Compartir a través de


API de interfaz de usuario inalámbricas

Windows 8, Windows Server 2012 y versiones posteriores incluyen una nueva característica de 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 de Administrador de conexiones reemplaza a la anterior Conexión a una red y administrar interfaces de usuario de Redes inalámbricas 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 (UIs) 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 Shell de Windows. Estas INTERFACES de usuario no están disponibles en Windows 8, Windows Server 2012 y versiones posteriores.

Windows XP con SP3 y LAN inalámbrica API para Windows XP con SP2: No puede iniciar ninguna interfaz de usuario usada para conectarse a una red inalámbrica o configurarla 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, se puede usar el Asistente para conectarse a una red inalámbrica. Puede usar la función ShellExecute para iniciar el Asistente para conectarse a una red .

En el código siguiente se muestra una llamada a ShellExecute que inicia el Asistente para conectarse 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ón ShellExecute tambié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. Puedes iniciar esta interfaz de usuario avanzada llamando a la función WlanUIEditProfile .

Uso de Wifi nativo

Muestras de perfil para red inalámbrica

ShellExecute

WlanUIEditProfile