Se connecter au Wi-Fi C ++

J’ai cherché partout … j’ai fait! Je ne pouvais pas trouver d’exemple sur la façon de se connecter à un réseau Wi-Fi en C ++.

J’ai trouvé et essayé les exemples de WlanGetAvailableNetworkList () et WlanQueryInterface () sur MSDN. J’ai également trouvé un exemple de ce que je cherche sur C #. Quelqu’un pourrait-il m’en dire un pour C ++ ?

Edit: Je ne sais rien de la partie Internet de C ++ (serveurs, API Wifi même pas beaucoup d’API Win32), juste le coeur du langage, je veux juste faire un programme simple qui trouve une connexion ouverte et s’y connecte automatiquement et joue un son si la connexion a réussi. Si vous pouvez me fournir des informations et des liens, je ferai une recherche et afficherai toute solution que je pourrai trouver.

Le code donné n’est pas un type anticipé, c’est-à-dire pas très bon mais ça fait le travail. J’ai utiliser codeblock dans Windows.

#include  #include #include #include #include using namespace std; int main() { ofstream xmlFile; ifstream xmlFile1; ssortingng name="",pass=""; ssortingng ntyp="Wi-Fi",netType,fileTest=">test.txt",check,ntype,fil,xfileName,fileName="myWlan.xml"; char c='"',cho='2',cho1='1',c1; netType=c+ntyp+c+fileTest; xfileName=c+fileName+c; int succ=0; do { system("netsh wlan show networks"); cout<<" >-------------------- TO REFRESS PRESS :1 \n\n >-------------------- TO CHOOSE NETWORK PRESS : 2 \n\n > "; cho=getch(); }while(cho!='2'); cout<<"\n Enter the desired network name-------: "; cin>>name; do { cout<<"\n Enter wifi Password------: "; cin>>pass; xmlFile.open(fileName.c_str()); //Writing a xml file ..................... xmlFile<<"\n"; xmlFile<<"\n"; xmlFile<<""; xmlFile<\n\n\n"; for(int i=0;i\n"; xmlFile<\n\n\nESS\nauto\n\n\n"; xmlFile<<"\nWPA2PSK\nAES\nfalse\n\n"; xmlFile<<"\npassPhrase\nfalse\n"; xmlFile<\n\n\n\n"; xmlFile<<"\n"; xmlFile<<"false\n\n"; xmlFile.close(); //addd the xml file to system profile............. system(("netsh wlan add profile filename="+xfileName).c_str()); //to let system realize what changes have been made............... system("timeout /t 2"); //to check if connected........... system(("netsh interface show interface name="+netType).c_str()); xmlFile1.open("test.txt"); while(!xmlFile1.eof()) { xmlFile1>>c1; if(c1==':') { for(int i=0;i<9;i++) { xmlFile1>>c1; check=check+c1; } } if(check=="Connected") { cout<<"...............................................You are connected!!................................."; succ=1;break; } if(check!="Connected")check=""; } xmlFile1.close(); if(succ==1)break; }while(succ!=1); return 0; } 

J'ESPÈRE QUE CELA AIDE ....

Ok, je suppose que vous cherchez une fonction de dénombrement telle que celle-ci:

http://msdn.microsoft.com/en-us/library/windows/desktop/ms706716%28v=vs.85%29.aspx

Je suppose que ce que vous voulez dire, c’est vérifier si l’état de WLan est en place. Si vous regardez attentivement la fonction d’énumération renvoie une structure qui inclut isState, l’une de celles-ci:

 typedef enum _WLAN_INTERFACE_STATE { wlan_interface_state_not_ready = 0, wlan_interface_state_connected = 1, wlan_interface_state_ad_hoc_network_formed = 2, wlan_interface_state_disconnecting = 3, wlan_interface_state_disconnected = 4, wlan_interface_state_associating = 5, wlan_interface_state_discovering = 6, wlan_interface_state_authenticating = 7 } WLAN_INTERFACE_STATE, *PWLAN_INTERFACE_STATE; 

Pour réellement “se connecter”, vous devez avoir un serveur à l’écoute de l’autre côté … Bien que Renan vous ait aussi donné un bon lien (voir la section commentaire de la question) mais cela nécessite que vous ayez un SSID. Cela dépend si votre logiciel connaîtrait bien les SSID Wifi.