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

Réseau C Discussion :

Serveur socket en C


Sujet :

Réseau C

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 177
    Par défaut Serveur socket en C
    Bonjour,
    Je débute actuellement sur la création de serveur de socket en C, et je me pose une question (stupide?)
    Est il possible a partir de fonction existante de créer un serveur de Socket en C pour permettre un dialogue avec une autre machine à partir des sockets?
    Je ne sais pas si je suis clair dans mon explication...

    Ce qui se conçoit bien s'énonce clairement... donc je développe un peu...
    J'ai un client en Java et je souhaiterais me connecter à mon serveur en C. Sur ce serveur je dois avoir mes données de fonctions qui transite.
    Est ce possible?



    Merci par avance de votre réponse

  2. #2
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Qu'appelles-tu données de fonctions?

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 177
    Par défaut
    En fait je me suis mal exprimé, c'est juste que j'ai des fonctions du côté du serveur...

  4. #4
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Tu veux savoir si un client écrit en Java peut se connecter à un serveur écrit en C et échanger des données avec celui-ci? La réponse est oui, mais je ne suis pas certain d'avoir bien compris la question.

    EDIT: Pour plus d'infos:


    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 177
    Par défaut
    Je vais essayer d'être un peu plus clair...
    Pour le moment j'ai une IHM avec des fonctions dans une application. Classique.
    Je souhaiterais garder les fonctions qui sont codées et changer l'IHM (Java ou Flex).
    Pour ce faire j'ai penser à un client-serveur... Peut etre je me trompe sur la solution à adoptée... Je voyais un serveur avec les fonctions mises a disposition et mon client (IHM) qui venait se connecter dessus...

    Suis je plus clair? ou pas du tout...

  6. #6
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    C'est possible. Il te faut pour cela définir un protocole de communication entre ton client et ton serveur.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  7. #7
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 177
    Par défaut
    Citation Envoyé par Thierry Chappuis Voir le message
    C'est possible. Il te faut pour cela définir un protocole de communication entre ton client et ton serveur.

    Thierry
    Je voulais passer par le protocole TCP...
    Mais je vois pas trop comment implémenter le serveur par dessus les fonctions...
    J'ai du mal a voir comment faire dialoguer ces fonctions...

    Merci de ton aide Thierry, je vais me pencher dessus

  8. #8
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Par défaut
    Citation Envoyé par carter15_2001 Voir le message
    Je voulais passer par le protocole TCP...
    Mais je vois pas trop comment implémenter le serveur par dessus les fonctions...
    J'ai du mal a voir comment faire dialoguer ces fonctions...

    Merci de ton aide Thierry, je vais me pencher dessus
    Déjà, il faut que tu saches faire de la programmation réseau en C (côté serveur et côté client). Ensuite, il est nécessaire de définir un protocole (regarde par exemple à quoi ressemble un protocole comme HTTP).

    J'ai déjà effectué de ce type de chose (IHM en Java, Serveur en C++) pour du traitement d'images.
    J'avais un protocole relativement simple qui ressemblait grosso modo à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    //envoi du client
    OPERATOR nomDeLOperateur
    PARAMETERS:
    ParameterName: Nomduparamètre
    ParameterType: TypeDuPAramètre
    ParameterSize: taille
    ParameterValue: valeur plus ou moins complexe
    ... plusieurs paramètres
    Image:
    ImageType: RGBSHORT
    ImageWidth:  ...
    ImageHeight:  ...
    champs de byte de l'image

    Le serveur recevait ça. Il construisait la requête dans une structure classique.
    Le serveur avait une liste d'opérateur déjà définie (via une interface en C++ ou un pointeur de fonction en C), il suffisait d'appeler l'opérateur correspondant (et qui retourner une réponse sur le même schéma ou un message d'erreur en cas de mal formation de la requête).

    L'opérateur ne faisait ensuite qu'appeler le code métier.

  9. #9
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 525
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 525
    Par défaut
    Citation Envoyé par carter15_2001 Voir le message
    Je voulais passer par le protocole TCP...
    Mais je vois pas trop comment implémenter le serveur par dessus les fonctions...
    1-il ya un forum développement réseau
    2-mieux vaut utiliser les fonctionnalités de l'OS par exemple WinInet qui possède des tas de fonctionnalités sous Windows.
    Si tu veux du code portable alors il faut une "cross-library"....
    Si tu peux utiliser un compilateur C++,Qt permet cela peut-être

  10. #10
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    Que le serveur soit coder en java, c ou pascal, un client ecrit dans un autre langage peut toujours s' y connecter. En fait à un niveau assez bas, les operation effectuées par le serveur ne depend pas du tout du langage utilisé.
    Donc, le serveur et le cient pourrons s' envoyer et recevoir les messages. C' est à toi maitenant d' interpreter les messages reçus soit par le client ou par le serveur.
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    //le serveur envoie
    >cmd dispTime 
    //le client execute un bout de code dont le but est d' afficher 
    //l' heure à l' ecran
    >msg tu es bien connecté
    //le lient execute un bout de code dont le but est d' afficher un msgbox 
    //avec le texte specifier par le serveur

  11. #11
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mars 2003
    Messages
    177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 177
    Par défaut
    Merci Milie (désolé du mauvais choix de placement du Topic), merci Mat.M de tes précisions ainsi que Darrylsite.
    Je vais tenter de faire quelque chose ce matin, si je rencontre d'autres problèmes je viendrai vous consulter et si je n'en ai pas, je viendrai vous en informez aussi...

    Encore merci!!

Discussions similaires

  1. [FLASH MX2004] [XMLSocket] Problème avec serveur socket php
    Par cocodunombril dans le forum Flash
    Réponses: 4
    Dernier message: 03/04/2009, 02h10
  2. Cherche code source serveur socket en C
    Par marco13 dans le forum Réseau
    Réponses: 2
    Dernier message: 05/10/2006, 12h05
  3. Compiler du java en natif & Optimisation serveur socket
    Par Skreo dans le forum API standards et tierces
    Réponses: 32
    Dernier message: 09/07/2006, 16h31
  4. problème de serveur socket
    Par hiul dragonfel dans le forum MFC
    Réponses: 3
    Dernier message: 01/06/2006, 11h56
  5. Question client-serveur socket
    Par Lex99 dans le forum Développement
    Réponses: 3
    Dernier message: 07/02/2006, 09h01

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