IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

configurer un périphérique Wifi...


Sujet :

MFC

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 80
    Par défaut configurer un périphérique Wifi...
    Salut,

    Je cherche à faire un outil permettant de configurer un dongle wifi.
    J'ai donc fais une recherche sur les OID pour trouver un moyen et c'est là que je butte...
    on trouve en effet plein de sources sur la programmation wifi 802.11 mais que sur windows CE et moi, je travaille avec un XP...
    Je ne voit donc pas comment utiliser la fonction DeviceIoControl:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    DeviceIoControl (hAndle,
                             IOCTL_NDISUIO_QUERY_OID_VALUE,  
                             &QueryBuffer[0],sizeof(QueryBuffer), 
                             &QueryBuffer[0],sizeof(QueryBuffer),
                             &dwReturned,
                             NULL);
    Car IOCTL_NDISUIO_QUERY_OID_VALUE ne marche qu'avec Windows CE...
    J'ai ensuite lu quelque par que pour faire un set avec un OID, on pouvait utiliser WMI mais je ne sais pas du tout comment ça marche et malgré toutes mes recherches, je n'ai rien trouvé...
    Donc est ce que quelqu'un peut m'aider soit à faire marcher mon DeviceIoControl, soit à passer par un autre chemin...

    kor6k

  2. #2
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    DeviceIoControl en elle même n'est pas bien compliquée : elle permet "d'envoyer" un message de controle (un IOCTL) à un driver. La difficulté réside plutot dans le message lui même, ses paramètres... et pour ça faut avoir la doc du driver cible.
    Pour WMI, tu peux lire les tutos de Laurent:
    http://laurent-dardenne.developpez.com/articles/wmi-p1/
    voir aussi:
    http://www.ndis.com/faq/QA01050301/default.htm
    http://www.ndis.com/faq/QA10290101.htm

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 80
    Par défaut
    merci pour les liens, j'y voit deja un peu plus clair pour ce qui est de wmi... je ne voit toujours pas comment l'utiliser mais c'est sans doute parce que je n'ai pas encore tout lu et j'ai du mal à comprendre quand je n'ai pas de bout de code pour illustrer...
    Pour DeviceIoControl, j'arrive à l'utiliser et à, par exemple, récupérer l'adresse mac de mon Wifi. Malheureusement, le IOCTL me permettant de le faire est IOCTL_NDIS_QUERY_GLOBAL_STATS qui ne permet que de recevoir certaines informations (pas les plus importantes...) et surtout, on ne peut pas envoyer les informations pour configurer le dongle.
    Et le seul message de controle que j'ai trouvé qui permet d'envoyer un OID à un péripherique 802.11, c'est IOCTL_NDISUIO_SET_OID_VALUE qui, comme je l'ai deja dit ne marche qu'avec Windows CE.
    Quelqu'un voit il donc un moyen de me tirer de ce probleme??

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 80
    Par défaut
    Bon, j'ai enfin reussi à faire marcher mon code. j'utilise finalement deviceIoControl et je me suis fortement inspiré de WRAPI qui est une dll de test créée pour ça...
    Mon probleme est que malgré tous mes essais, mes péripheriques ne répondent pas... ou plus exactement, ma fonction deviceIoControl me retourne une erreur 1 quelque soit l'OID utilisé (par exemple OID_802_11_SSID, OID_802_11_BSSID...) et si je tente un openAdapter, j'obtient cette fois une erreur 50...
    J'ai essayé avec 3 type de periph Wifi différents: un centrino, et 2 dongles avec des chipsets différents mais ils m'ont tous donnés le meme resultat...
    Comment faire pour que ca marche enfin??????

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 80
    Par défaut
    salut, c'est encore moi...
    apres pas mal d'essais, je me suis rendu à l'évidence que ça ne marchait pas...
    J'ai donc décidé de me mettre au WMI (merci pour les liens plus haut).
    Mais malgré tous ça, je ne vois toujours pas comment les utiliser... J'ai toujours eu du mal à comprendre les choses sans illustration et je n'ai pas trouvé de bout de code qui pourrait m'aider...
    Est ce que quelqu'un sait comment utiliser WMI et pourrait m'expliquer un peu comment l'utiliser dans mon cas??? merci d'avance.

  6. #6
    Candidat au Club
    Inscrit en
    Avril 2004
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 2
    Par défaut
    Salut,

    j'espère que j'interviens pas trop tard mais les OID's et IOCTL_NDISUIO_QUERY_OID_VALUE fonctionnent très bien sous XP. J'ai développer une application sous WinCE il y a quelques mois mais faute de matériel sous CE au début de mon projet, j'avais développé une appli sous XP. Je n'ai ensuite que porter mon code sous EVC. Je me replonge la dedans et je te file la demarche à suivre sous peu.
    De mémoire, il faut que tu crées un Handle sur le NDISUIO_DEVICE_NAME et que tu récupères le nom de ton driver actif avec NDISUIO_QUERY_BINDING. Ensuite tu peux utiliser IOCTL_NDISUIO_QUERY_OID_VALUE avec DeviceIOControl et OID_802_11_BSSID_LIST pour récupérer les infos dont tu as besoin !

  7. #7
    Membre chevronné
    Avatar de matazz
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    471
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 471
    Par défaut
    Ca arrive peut-être un peut tard (aussi) mais regarde ce lien si ça peut t'aider :

    http://msdn.microsoft.com/library/de...54850a.xml.asp

Discussions similaires

  1. Configuration pont ethernet wifi ad-hoc
    Par hugodu13 dans le forum Réseau
    Réponses: 7
    Dernier message: 09/04/2009, 20h09
  2. Configurer un routeur wifi
    Par albokos dans le forum Hardware
    Réponses: 6
    Dernier message: 20/10/2008, 00h31
  3. [FreeBSD] configurer une carte wifi
    Par Barbie-Tue-Rick dans le forum BSD
    Réponses: 32
    Dernier message: 16/08/2008, 13h46
  4. configurer un reseau wifi
    Par Sodangbe dans le forum Réseau
    Réponses: 0
    Dernier message: 13/02/2008, 01h01
  5. [UBUNTU] Comment configurer ma connection Wifi ?
    Par dr_octopus74 dans le forum Ubuntu
    Réponses: 5
    Dernier message: 12/02/2007, 20h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo