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

C++ Discussion :

Problème de Socket


Sujet :

C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut Problème de Socket
    Bonjour,
    Après avoir suivi le tuto consacré au sockets, j'ai voulu tester l'exemple donné à la fin du cours : => http://c.developpez.com/WalrusSock/
    Comme j'ai 2 ordis, le server a été lancé sur l'ordi 1 et le cilent sur l'ordi 2.
    Lors de lancement du prog, mon firewall m'informe bien que l'appl demande l'acces à internet. Cependant, l'ordi 2 (client) ne recois aucun message "Hello World" de la part du server de l'ordi 1 !
    Soit il y a un probleme, soit je n'ai pas bien compris le principe. Quoi qu'il en soit, toute aide sera la bienvenue.
    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    il faut ouvrir dans le parfeu le port associé au serveur (dans le tuto : 23 en TCP) pour autoriser les connections entrantes au niveau du serveur
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    Je ne suis pas sûr que ce soit le problème, car lorsque mon firewall m'avertit que l'application demande l'accès à internet, j'ai le choix d'accepter ou de refuser ( et donc j'accepte !). Je vais tout de même essayer en désactivant mon firewall.
    Mais c'est le fonctionnement du server/client que je ne suis pas sûr d'avoir bien compris. J'ai un server et un client, qui n'ont rien en commun. Imaginon que je fasse mon server et que je le lance, quelqu'un peut très bien faire le même client que moi, et ainsi recevra un Hello World de mon server ! Et inversement. Quand à l'adresse IP donnée au server, ne dois-je pas mettre la mienne ?
    Je pige pas tout.

  4. #4
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Quand tu fais accepter avec ton par feu, tu autorises le client à accèder à internet... mais il faut que le serveur soit autorisé à recevoir les connections...

    pour le serveur, l'adresse que tu lui donnes, c'est le bind, c'est-à-dire les adresse qui seront autorisées à s'y connecter

    Ensuite, fait gaffe, parce que si tu prends les exemples de codes du tuto, le client ne sert pas à se connecter au serveur qui est en dessous...
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    euh...ok, mais c'est quoi "bind" ?
    Ensuite l'adresse du client ds l'exemple est 62.250.14.6
    Il faut la remplacer par la mienne ?
    Et encore un fois, c'est quoi qui rattache le client à mon server ?
    Je créé un server, et un client. Je lance le client sur l'un de mes ordi. Imaginons que tout fonctionne bien, et que donc je reçoive le Hello World. Si toi aussi tu a le même server que moi, ne vas tu pas toi aussi recevoir le Hello World ?!
    Merci pour ton aide.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    Excuse moi, mon firewall/antivirus est McAfee et je n'arrive pas à autorisé l'accès à mon server,comme tu m'as dis de le faire. Sais-tu comment m'y prendre ? Je suis allé trifouiller les ports pour autoriser le n°23 mais je pige rien aux TCP et UDP entrants ou sortants...J'ai essayé de faire plus simple en désacivant carrément mon anti-virus mais ca ne marche pas plus.

  7. #7
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Quand on "bind" un socket, ça veut dire qu'on lui dit d'écouter les connexions entrantes pour un port donnée, et éventuellement, une IP ou un liste d'IPs données.

    tu peux le retrouver à la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bind(sock, (SOCKADDR *)&sin, sizeof(sin));
    sock c'est ton socket, sin c'est le paramètre, son adresse est celle qui sera utilisée comme maque pour accepter les connections entrantes, le port est celui qui sera écouté.

    ensuite, tu as un problème de terminologie :
    l'adresse IP et le port d'un socket c'est l'adresse IP de la machine sur laquelle il est "créé", et le port c'est celui à partir duquel il envoie les données (ou les attends pour un socket serveur)

    il n'y a pas à proprement parler quelque chose qui relie les deux sockets...

    ça serait plutôt les caractéristiques du socket client qui vont décider où il va se connecter.

    quand tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    connect(sock, (SOCKADDR *)&sin, sizeof(sin));
    tu te connectes à l'adresse et au port indiqué dans sin

    s'il y a un socket en écoute derrière, c'est à dire un socket bindé sur ce port et pour l'adresse du socket client, la connection aboutit, sinon elle échoue.

    Pour ce qui est de ton parfeu, tu dois autoriser le port TCP 23 en entrant

    Pour vérifier que ça marche bien, il te suffit normalement de faire (dans une console) : sur la machine qui herberge le serveur ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    telnet IP_de_la_machine_qui_heberge_le_serveur 23
    si tout se passe bien, tu devrais voir "Hello World" s'afficher
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    C'est bon ca fonctionne !
    Merci !
    Cependant, send() permet d'envoyer des strings aux clients, mais c'est quand même pas formidable.
    Si je veux faire plutôt un server qui envoit une boîte de dialogue "Hello World" à tous ceux qui se connectent, faut-il que je programme un prog client qui va afficher la MB après avoir reçu une chaîne de characteres du server ? Si j'ai pas trop mal compris le principe :

    -Le server attend qu'un client se connecte avec un prog client
    -Lorsque le cleint se connecte, le server, qui est à l'écoute, envoit un string au client
    -le prog client recoit cette string (si tout c'est bien passé) et affiche la messahe box au client.

    C'est ca qu'il faut faire ?
    Merci !

  9. #9
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Pour ce qui est de la présentation des informations, c'est au client de le gérer...

    donc si tu veux afficher une message box, il te faudra effectivement le coder dans le client...

    la description des actions que tu donnes est parfaite
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    Citation Envoyé par Swoög
    Pour ce qui est de la présentation des informations, c'est au client de le gérer...
    Ca confirme ce que je pensais.
    Citation Envoyé par Swoög
    donc si tu veux afficher une message box, il te faudra effectivement le coder dans le client...
    Ah ouais c'est la que ca devient un peu plus compliqué
    Bon allons y.
    Ca c'est la fonction qui envoit la string au client :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    send(csock, "string01\r\n", 14, 0);
    Quoi ? Tu le savais déjà ?
    Bon ok. Maintenant il faut faire un condition pour le prog client :"quand je recois une string qui s'appelle "string01" j'affiche un jolie boîte de dialogue au client".
    Plus facile à dire qu'à faire.
    Alors on utilise la fonction recv() ? Ou recvfrom() ? Je n'ai pas très bien compris leur utilité, et je ne suis pas sûr que se soit les fonctions à utiliser.
    Citation Envoyé par Swoög
    la description des actions que tu donnes est parfaite
    Merci !

  11. #11
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    alors, tu utilises send, c'est donc recv qu'il te faudra utiliser

    de manière plus générale :
    quand tu es en TCP, il te faut utiliser send et recv
    quand tu es en UDP, il te faut utiliser sendto et recvfrom

    ensuite, pour l'affichage de la messageBox en elle-même, il te faudra utiliser une librairie graphique... ce n'est pas supporter en standard par C++
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    Citation Envoyé par Swoög
    alors, tu utilises send, c'est donc recv qu'il te faudra utiliser
    Ok
    Citation Envoyé par Swoög
    de manière plus générale :
    quand tu es en TCP, il te faut utiliser send et recv
    quand tu es en UDP, il te faut utiliser sendto et recvfrom
    completement largué !

    Citation Envoyé par Swoög
    ensuite, pour l'affichage de la messageBox en elle-même, il te faudra utiliser une librairie graphique... ce n'est pas supporter en standard par C++
    bah l'API Windows ca va bien non ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MessageBox (0, "Hello World from DLL!\n", "Hi", MB_ICONINFORMATION);

  13. #13
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    tiens, j'avais jamais testé le [code =] lol

    pour les sockets, il y a deux types de sockets :

    Les connectés, et les non-connectés

    chaque type correspond de facto à un protocole, car ce sont ces protocoles qui sont utilisé le plus courament pour ces deux types de sockets :

    pour les sockets connectés, c'est TCP qui est utilisé
    et pour les sockets non-connectés, c'est UDP

    La particularité des sockets connectés est qu'il y a des vérifications au niveau de la connection entre le serveur et le client et de l'intégrité des données, ce que les sockets non-connectés ne proposent pas...

    la plupart du temps, c'est le mode connecté qui est utilisé, dans le tuto, ce sont les valeurs SOCK_STREAM (connecté) et SOCK_DGRAM (non connecté= qui symbolisent ces deux types de sockets, leurs usages et représentations sont différents...

    pour plus d'info, renseigne toi sur le modèle OSI et autres spécifications réseaux

    pour la message box tu peux bien sûr utiliser l'API Windows (cet une librairie graphique comme une autre (ou presque) après tout ^^)



    pour récupérer ce qui est reçu par le socket, quand tu fais recv, le message est ensuite contenu dans le buffer...
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    ok, j'ai pigé !
    Et quand la string envoyée par le server est récupérée dans le buffer du prog client, on vérifie si c'est bien la string01( parce que il peut y en avoir plusieurs), auquel cas on affiche la message box !
    Merci beaucoup pour ton aide !
    Bon bah au boulot !

  15. #15
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    pour faciliter la comparaison, tu peux (par exemple) passer par std::string

    à l'époque, j'avais fait une petite librairie qui réencapsulait winsock2 pour les socket TCP clients.

    si tu la veux, envoie moi une adresse mail en MP, je verrais pour la retrouver et te l'envoyer

    bon, par contre y'a pas ou peu de doc, etc...

    mais bon, je serais dispo si t'as besoin d'aide dessus ^^
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    Ok, merci !

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    Les problèmes commencent...
    Bon alors il était question de faire un server qui envoit une string aux clients connectés.
    Je me suis donc calqué sur l'exemple de code du tuto de TheWalrus.

    Code Server : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    /* Server */
    #include <iostream>
    #include <winsock2.h>
    #pragma comment(lib, "ws2_32.lib")
    using namespace std;
    int main(int argc, char *argv[])
    {
        WSADATA WSAData;
        WSAStartup(MAKEWORD(2,0), &WSAData);
        SOCKET sock;
        SOCKET csock;
        SOCKADDR_IN sin;
        SOCKADDR_IN csin;
        sock = socket(AF_INET, SOCK_STREAM, 0);
        sin.sin_addr.s_addr   = INADDR_ANY;
        sin.sin_family    = AF_INET;
        sin.sin_port    = htons(23);
        bind(sock, (SOCKADDR *)&sin, sizeof(sin));
        listen(sock, 0);
        while(1)
        {
        int sinsize = sizeof(csin);
        if((csock = accept(sock, (SOCKADDR *)&csin, &sinsize)) != INVALID_SOCKET)
        {
        send(csock, "string01\r\n", 14, 0);
        }
        }
    }

    OK.
    Maintenant le code sur client.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    /* Client */
    #include <stdio.h>
    #include <stdlib.h>
    #include <winsock2.h>
    #pragma comment(lib, "ws2_32.lib")
    int main(int argc, char *argv[])
    {
    WSADATA WSAData;
    WSAStartup(MAKEWORD(2,0), &WSAData);
    SOCKET sock;
    SOCKADDR_IN sin;
    char *buffer = new char[255];
    sock = socket(AF_INET, SOCK_STREAM, 0);
    sin.sin_addr.s_addr = inet_addr("192.168.1.15"); //L'adresse IP de l'ordi du server ?! 
    sin.sin_family = AF_INET;
    sin.sin_port = htons(23);
    connect(sock, (SOCKADDR *)&sin, sizeof(sin));
    recv(sock, buffer, sizeof(buffer), 0);
    printf("%s\n", buffer);
    system("PAUSE");
    closesocket(sock);
    WSACleanup();
    return 0;
    }
    Mouais bon ici on est juste sensé afficher la string envoyée par le server. On essaira après de la comparer et d'afficher la message box.
    Bon en tout cas ca affiche n'importe quoi. Je pense personnellement qu'il serait bien d'intialiser le buffer, mais je ne sais pas comment faire pour la simple raison que je n'ai jamais manipulé de buffer.
    Voila, bon bah j'ai essayé, hein !

  18. #18
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    le problème vient de cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    recv(sock, buffer, sizeof(buffer), 0);
    sizeof(buffer) va donner la taille d'un pointeur (car buffer est un char*) (généralement '4') alors que tu devrais donner la taille allouer pour le buffeur (ici : 255) [je viens de vérifier il y a la même erreur dans le tuto... lol]

    d'ailleurs il y a un énorme trou de mémoire

    Je viens de m'en apercevoir, mais le buffeur n'est jamais libéré...

    j'ai commis la même erreur dans ma librairie,
    Socket.cpp, ligne 269 :
    remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    char buffer* = new char[255];
    par sinon la mémoire n'est jamais libérée, et il y a une fuite de 255octets de mémoire à chaque appelle de la fonction (il faut recompiler Socket.a après ^^)
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 193
    Points : 65
    Points
    65
    Par défaut
    C'est bon ca marche !
    Une dernière qustion :
    Le server ne possède pas d'adresse fixe. Par contre le client doit posséder l' IP de l'ordi du server. C'est quand même pas très pratique ! Imaginons que je fasse mon server, puis que je distribus mes programmes clients. Le jours ou je changerais d'ordi, les IPs données dans les programmes clients et reliées au server ne seront plus valides et plus aucune connexion ne sera possible entre le server et les clients ! Y a-t'il une solution pour empécher ce problème ?

  20. #20
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Oui, un des solutions peut être d'attribuer un nom de domaine à ton serveur (nom de domaine qui serait par exemple géré via no-ip ou dyndns et de récupérer l'ip liée au nom de domaine via gethostbyname (il me semble)

    cf la MSDN pour en savoir plus sur cette fonction, sinon je l'utilise dans ma lib
    Rédacteur "éclectique" (XML, Cours PHP, Cours JavaScript, IRC, Web...)
    Les Règles du Forum - Mon Site Web sur DVP.com (Développement Web, PHP, (X)HTML/CSS, SQL, XML, IRC)
    je ne répondrai à aucune question technique via MP, MSN ou Skype : les Forums sont là pour ça !!! Merci de me demander avant de m'ajouter à vos contacts sinon je bloque !
    pensez à la balise [ code ] (bouton #) et au tag (en bas)

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Problème de sockets
    Par the_penguin dans le forum Réseau
    Réponses: 8
    Dernier message: 13/04/2006, 19h19
  2. Problême de Socket avec un applet java (RMI/policy)
    Par Vesperal dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 12/04/2006, 12h00
  3. Réponses: 2
    Dernier message: 26/03/2004, 09h15
  4. [Kylix] Problème de socket
    Par RaygKross dans le forum EDI
    Réponses: 1
    Dernier message: 01/03/2004, 19h41
  5. Mysql ne se lance pas problème de socket
    Par Riko dans le forum Installation
    Réponses: 5
    Dernier message: 05/02/2004, 09h28

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