Interface Reseau

Signaler
Messages postés
25
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
6 mars 2014
-
Messages postés
92
Date d'inscription
mardi 25 février 2003
Statut
Membre
Dernière intervention
15 mai 2006
-
bonjour,
je souhaite recuperer le nom de mes interface reseau savez vous comment faire ?

en fais je veux recuperer la seconde ligne de l ipconfig ;

C:\Documents and Settings\delllatitude>ipconfig
Configuration IP de Windows

Carte Ethernet Connexion au réseau local:

Suffixe DNS propre à la connexion :
Adresse IP. . . . . . . . . . . . : 192.168.30.31
Masque de sous-réseau . . . . . . : 255.255.255.0
Passerelle par défaut . . . . . . : 192.168.30.30

celle qui indique Carte Ethernet Connexion au reseau local.

a l aide !

kornfr

6 réponses

Messages postés
122
Date d'inscription
lundi 31 mars 2003
Statut
Membre
Dernière intervention
20 avril 2005

Si tu veux te servir de la commande ipconfig, suffit que tu le tube vers ton programme et après tu traites le résultat...

High_Cobra ;)
Messages postés
25
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
6 mars 2014

oui mais c vraiment tres tres moche comme programmation....
car un systeme entraine l ouverture d une fenetre dos......

a l aide
Messages postés
949
Date d'inscription
mardi 2 octobre 2001
Statut
Membre
Dernière intervention
8 juillet 2006

Ce code va certainement t'intéresser:
http://www.codeproject.com/internet/NetCfg.asp.
Comme ici, il faut s'inscrire pour télécharger les fichiers.

Kaid - kaid.fr.st
Messages postés
25
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
6 mars 2014

lut,

merci pour le lien, mais malheuresement, cette appli ne permet pas de determiner les interfaces reseau, mais seulement les adaptateurs reseaux.
(les interfaces reseaux se trouve sous WinXP dans :
favoris reseau -> puis qfficher les connexion reseau (a gauche))

il me faudrait tjs de l aide !

kornfr
Messages postés
25
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
6 mars 2014

bon n'ayant rien trouve, je vais suivre le conseil de highcobra.
un bon vieux system.
mais j ai un probleme. lors de la sauvegarde tout ce passe bien, mais lorsaue j'essaye de relire les mots contenu dans le programme, les accents ne passe pas....

a\que dois je faire ?

Merci
kornfr
Messages postés
92
Date d'inscription
mardi 25 février 2003
Statut
Membre
Dernière intervention
15 mai 2006

slt, c'est peu etre un peu tard, mais ca peu interressé d'autre personne:




#include "Iphlpapi.h"

#pragma comment(lib,"Iphlpapi.lib")//sous vc++



int GetInterfaceName()

{

//pointeur ver un tableau contenant les données, il ya autant de case du tableau qu'il ya d'interface.

MIB_IFTABLE* ift;

int num_entree=0;

DWORD tSize=1024;

//nombre d'interface

nb_entree=-1;



//tableau contenant les noms des interfaces

TCHAR** name;



//va permettre de dimentionner le tableau de données

GetIfTable(NULL,&tSize,FALSE);

//allocation de la mémoire pour le tableau

ift=new MIB_IFTABLE[tSize/sizeof(MIB_IFTABLE)];

//recuperation des données

if(GetIfTable(ift,&tSize,FALSE)==NO_ERROR)

{

//on recupere le nombre d'entrées

nb_entree=ift->dwNumEntries;

//j'ai limité arbitrairement a 4

if (nb_entree>4)

nb_entree=4;

//allocation de la mémoir pour le tableau contenant le nom des interfaces

name=new TCHAR*[nb_entree];



//boucle permettant d'extraires les noms des interface contenu dans ift et rangement dans name

for(num_entree=0;
num_entree<(int)nb_entree && num_entree<4;num_entree++)

{

name[num_entree]=new TCHAR[64];

if (ift->table[num_entree].wszName[0] > ' ')

{


if (name[num_entree][0] != ift->table[num_entree].wszName[0])


lstrcpy (name[num_entree], ift->table[num_entree].wszName);

}

else

{


if (ift->table[num_entree].bDescr[0] > ' ')

{


if (name[num_entree][0] != ift->table[num_entree].bDescr[0])

{


BYTE* s;


TCHAR* c;




s=ift->table[num_entree].bDescr;


c=stats[num_entree].name;


for (int i = 0; i < 62; i++)


{


if (*s == 0) break;


*c = *s;


c++;


s++;


}


*c = 0;

}

}

else

{


if (name[num_entree][0] == 0)


lstrcpy (name[num_entree], TEXT("<noname>"));

}

}

}

}



//liberation de la mémoire utilisee

for (DWORD i=0;i<nb_entree;i++)

{

delete[] name[i];

}

delete[] name;

delete[] ift;

return 0;

}



ce code fonctionne sour WinCE mai je n'utilise pas de librairi particuliere donc il devrai fonctionner sous windows.

J'ai du changer quelque truc pour que la fonciton puisse etre inséré
ici, alor il est possible que j'ai fai une ou deux ptite erreur.



voila @++