diablo31170
Messages postés17Date d'inscriptionmercredi 15 mai 2013StatutMembreDernière intervention13 juin 2006
-
20 avril 2006 à 19:56
cs_Axel971
Messages postés51Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention 9 août 2006
-
22 avril 2006 à 14:48
Salut à tous,
J'ai cherché et je n'ai pas trouver un programme ( j'en ai trouvé et
ils ne marchent pas) qui permet de Récuperer et de Modifier l'adresse
IP de la machine.
La machine fonctionne sous LINUX FEDORA et j'utilise pour développer KDevelop.
ifconfig -a : affiche la configuration de toutes les cartes réseaux
ifconfig eth0 down : desactive l'interface eth0
ifconfig eth0 192.168.99.36 netmask 255.255.255.0 up : réactive eth0 avec la nouvelle ip 192.168.99.36 et le masque de sous réseau 255.255.255.0
diablo31170
Messages postés17Date d'inscriptionmercredi 15 mai 2013StatutMembreDernière intervention13 juin 2006 21 avril 2006 à 16:18
Bonjour, petites precisions on developpe sous Qt3 avec kdevelop (en cpp
of course :)). On utilise une interface ethernet. Le but premier serait
d'arriver à recuperer l'@ip locale à partir d'un bout de source.
Axel971: merci de ton conseil, ça peut etre un bon debut de piste, mais
à moins de passer par gethostbyname ça compile pas, et même dans
ce cas là... segfault. Qui plus est, ça pose un petit probleme avec les
pointeurs (erreurs multiples et tellement touffues que ça sert pas à
grand chose de mettre le log de compilation)
AlexN: On a aussi pensé a utiliser directement ifconfig via le source
(enfin on a finit par trouver qqc de plus coherent en passant par ip)
Le tout dans la fonction system.
system("ip addr|grep eth0");
mais... oui il y a un mais :), system retourne l'int du code
d'execution, du coup on peux evidement l'inclure dans un cout, mais on
ne peux pas le stocket dans une chaine de caractere.
Donc si vous aviez l'idée du siecle pour recuperer l'@ip la stocker
dans une chaine. Le tout pour pouvoir l'afficher et par la suite la
modifier (la cgu necessite un autre post pour cette question?)
Merci d'avance pour les futures reponses et merci encore pour celles qui ont été données
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Axel971
Messages postés51Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention 9 août 2006 21 avril 2006 à 17:10
Salut,
J'espère que tu as mis les includes diablo, ceux qui étaient nécessaires à une bonne
compilation, sinon AlexN doit avoir raison il y a surement des topic dispo via ton ami. Sinon moi je te propose une fonction déjà toute faite pour récuperer (modifier c'est une
autre affaire) l'adresse IP, mais elle est basé sur le même type de code que précédement.
cs_AlexN
Messages postés694Date d'inscriptionlundi 5 décembre 2005StatutMembreDernière intervention 8 janvier 201419 21 avril 2006 à 17:35
Regardes du coté de chez trolltech qui ont maintenu la librairie Qt je crois.
D'autre part une question :
Quelle ip voudrais tu ? Puisque ta machine possède autant d'ip que d'interface réseau (lo, eth0, eth1, ppp0, etc...) ?
C'est ce que suggère l'un des thread de la liste
diablo31170
Messages postés17Date d'inscriptionmercredi 15 mai 2013StatutMembreDernière intervention13 juin 2006 21 avril 2006 à 19:52
Salut,
J'ai une erreur quand je fait la compilation. Tout d abord je vais vous
montrer mon source, et apres l'errreur lors de la commande g++ ip.cpp
-o ip.exe :
Source :
<meta http-equiv= "Content-Type" content="text/html; charset=UTF-8">
<meta name="Generator" content="Kate, the KDE Advanced Text Editor">
cs_AlexN
Messages postés694Date d'inscriptionlundi 5 décembre 2005StatutMembreDernière intervention 8 janvier 201419 21 avril 2006 à 20:18
undefined reference to `main'
tu n'as pas declaré de fonction main qui est le point d'entree obligatoire d'un programme C
Fais l'effort de tabuler tes sources, sinon personne ne fera l'effort de te lire ni de te repondre.
(sauf là parce que ça saute au yeux :o)
cs_Axel971
Messages postés51Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention 9 août 2006 21 avril 2006 à 20:21
Je suis pas sûr mais je crois pas que l'erreur viennent du code,
à mon avis soit il manque un include, soit lors de la compilation faut
spécifier une librairie, et que ce n'est pas fais.....
diablo31170
Messages postés17Date d'inscriptionmercredi 15 mai 2013StatutMembreDernière intervention13 juin 2006 22 avril 2006 à 12:28
Merci AlexN pour ton programme, il marche bien, me donne l'adresse
IP de mon PC (192.168.0.16) mais la fonction exit() ne le reconnait
pas, alors j'etait obliger de l'enlever.
Alors maintenant ke jai mon adresse IP, je veux la changer en lui
passant la nouvelle adresse IP passé en parametre (c'est a dire kil y
aura une kestion, et faudra lui marquer l'adresse).
cs_AlexN
Messages postés694Date d'inscriptionlundi 5 décembre 2005StatutMembreDernière intervention 8 janvier 201419 22 avril 2006 à 13:53
Beeeeeeen...
C'était juste pour t'aider un peu. Vais pas te faire tout ton programme ou alors tu me files ta note d'examen ou ton salaire. Enfin on partage quoi... :o)
Maintenant faudrait que tu lises un peu sur la programmation et les réseaux.
Axel971 semblait te conseiller http://www.developpez.com/ mais y'en a sûrement plein d'autres.
Quant à exit(), tu as peut être oublié :
#include
Le petit bout de code a été compilé sous cygwin pas sous linux.
Du moment que ça marche...
Salut
P.S. : cliques sur réponse valide si la solution te convient ça pourra en aider d'autres.