Coder la détection de signaux d'un capteur Wifi

haddreezy Messages postés 40 Date d'inscription lundi 14 mai 2012 Statut Membre Dernière intervention 8 août 2012 - 24 juil. 2012 à 09:09
haddreezy Messages postés 40 Date d'inscription lundi 14 mai 2012 Statut Membre Dernière intervention 8 août 2012 - 25 juil. 2012 à 09:42
Bonjour,

Dans le cadre d'un projet je dois développer un algorithme dans lequel l'utilisation d'un capteur Wifi intervient. J'aimerais écrire un bout de code qui permette, lorsque le capteur Wifi détecte des réseaux, de créer une liste avec le nom de ses réseaux, ou leur adresse MAC. Je ne sais pas si premièrement cela peut se faire sous Microsoft Visual C#, deuxièmement je ne sais pas si il faut utiliser des modules extérieurs représentant le capteur ou quelque chose comme ça.

Merci pour votre aide

3 réponses

haddreezy Messages postés 40 Date d'inscription lundi 14 mai 2012 Statut Membre Dernière intervention 8 août 2012 4
24 juil. 2012 à 14:11
En fait j'ai trouvé que pour réaliser ce que je veux faire, j'ai besoin d'ajouter à mon projet la dll wlanapi.dll de Windows. Le nouveau problème que j'ai c'est qu'il faut l'importer avec la fonction DLLImport je crois, mais je ne sais pas du tout comment marche cette fonction. Si vous pouviez m'aider sur ce dernier point j'en serai ravi.
Merci!
0
theflayer Messages postés 125 Date d'inscription dimanche 28 février 2010 Statut Membre Dernière intervention 21 juin 2015 2
24 juil. 2012 à 21:12
Salut, SI je dis pas de bêtise, en faisant : Ajouter une référence => parcourir => wlanapi.dll ca devrait fonctionner non ?


-La constante d'une personne est la variable d'une autre.
-Il y a deux manières d'écrire des programmes sans erreurs. Seule la troisième marche
-Tout programme a (au moins) deux buts : celui pour lequel il a été écrit, et celui pour lequel il ne l'a pas
0
haddreezy Messages postés 40 Date d'inscription lundi 14 mai 2012 Statut Membre Dernière intervention 8 août 2012 4
25 juil. 2012 à 09:42
J'ai essayé cette façon de faire mais ça ne marche pas, j'ai un message d'erreur me demandant de vérifier si le fichier est bien un assembly ou un composant COM valide. J'ai vu à travers mes différentes recherches que les fichiers windows doivent être ajoutés avec la fonction DllImport.

Voici le début du code que j'écris et qui fonctionne:

[DllImport("wlanapi.dll")]
        public static extern uint WlanGetAvailableNetworkList(IntPtr hClienthandle, ref Guid pInterfaceGuid, uint dwflags, IntPtr pReserved, ref IntPtr ppAvailableNetworkList);
        private const uint WLAN_AVAILABLE_NETWORK_INCLUDE_ALL_ADHOC_PROFILES = 0x00000001;
        private const uint WLAN_AVAILABLE_NETWORK_INCLUDE_ALL_MANUAL_HIDDEN_PROFILES = 0x00000002;


Le problème est que lorsque je définis la variable suivante:

Guid pInterfaceGuid = ((WLAN_INTERFACE_INFO)wlanInterfaceInfoList.Interface.Info[0]).InterfaceGuid;


j'ai le message d'erreur: le type ou le nom d'espace de noms "WLAN_INTERFACE_INFO" est introuvable (une directive using ou une référence d'assembly est-elle manquante?) alors que la dll wlanapi est censée avoir été ajoutée.
Pensez vous qu'il y a une autre dll à ajouter?
0
Rejoignez-nous