APIs de interface do usuário sem fio
Windows 8, Windows Server 2012 e posteriores incluem um novo recurso de Gerenciador de Conexões que permite que os usuários se conectem facilmente à Internet e a outras redes (redes domésticas e corporativas, por exemplo). Esse novo recurso de Gerenciador de Conexões substitui as interfaces de usuário Mais antigas conectar-se a uma rede e Gerenciar redes sem fio incluídas em versões mais antigas do Windows para gerenciar conexões Wi-Fi nativas.
No Windows 7, Windows Server 2008 e Windows Vista, há várias interfaces do usuário usadas para se conectar ou configurar uma rede sem fio. Essas interfaces do usuário podem ser iniciadas em um aplicativo usando funções Nativas do Wi-Fi e do Windows Shell. Essas interfaces do usuário não estão disponíveis em Windows 8, Windows Server 2012 e posteriores.
Windows XP com SP3 e API lan sem fio para Windows XP com SP2: Você não pode iniciar nenhuma interface do usuário usada para se conectar ou configurar uma rede sem fio em um aplicativo programaticamente.
Conectar a uma rede
Em Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 e Windows Vista, o assistente Conectar-se a uma rede pode ser usado para estabelecer uma conexão com uma rede sem fio. Você pode usar a função ShellExecute para iniciar o assistente Conectar-se a uma rede .
O código a seguir mostra uma chamada ShellExecute que inicia o assistente Conectar-se a uma rede .
#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);
}
Gerenciar redes sem fio
No Windows 7, Windows Server 2008 e Windows Vista, o item gerenciar redes sem fio Painel de Controle é usado para gerenciar perfis de rede sem fio. A função ShellExecute também pode ser usada para iniciar o item Gerenciar Redes Sem Fio . O caminho a ser usado ao chamar ShellExecute no Windows 7 e no Windows Vista é o seguinte:
shell:::{26EE0668-A00A-44D7-9371-BEB064C98683}\3\::{1fa9085f-25a2-489b-85d4-86326eedcd87}
.
O código de exemplo a seguir mostra como usar ShellExecute para iniciar o assistente de Redes Sem Fio Gerenciadas de um aplicativo.
#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;
}
}
Configurações avançadas para perfis de rede sem fio
O Windows Vista e posteriores incluem uma interface do usuário avançada que é usada para exibir e editar configurações avançadas de um perfil de rede sem fio. Você pode iniciar essa interface do usuário avançada chamando a função WlanUIEditProfile .
Tópicos relacionados