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++Builder Discussion :

Communication interprogramme TSocket?


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 108
    Par défaut Communication interprogramme TSocket?
    Bonjour à tous,

    Je suis à développer une petit application de suivi de code à barre et j'ai besoin d'informer le poste suivant qu'un code a été lu (scanné). En fait, c'est le même programme que j'ai installé sur les différents ordinateurs. J'avais pensé à une manière très "trash" : enregistrer un fichier texte avec le code (de type 09032102) comme nom de fichier dans un répertoire bien précis. Le programme sur l'autre ordinateur serait fait en sorte de vérifier au 10 sec (voir au min.) avec un TTimer la présence de nouveaux fichiers. Lorsqu'il y a un nouveau fichier, ça lit l'information et efface le fichier.

    Code très simple et très rapide. Le seul problème, c'est que j'ai peur que le Timer monopolise trop mes ressources et nuise à l'ordinateur.

    J'ai donc pencher du côté plus élégant de la programmation (je n'ai aucune formation en programmation malheureusement). J'ai regarder les composantes TSocketClient et TSocketServer. Plusieurs forums en discutent amplement. Je me posais simplement la question si c'était la meilleure avenue avant de m'embarquer.

    Ce que je me demandais :

    1-Est-il possible de n'avoir aucun serveur principale? C'est-à-dire que chacun des ordinateurs auraient la liste des IP des autres ordinateurs et selon lequel il doit communiquer avec, il lui envoie une requête (c'est donc de dire que tout ordinateur est serveur). Est-ce que cela risque de causer des problèmes si deux ordinateurs envoient des requêtes en même temps?

    2-Serait-il préférable de mettre un serveur principal qui gère la communication entre toutes les machines? J'aime moins cette avenue parce que c'est moins flexible. J'aime mieux l'approche par cellule, chaque ordinateur est autonome.

    Enfin, je vous remercie de l'attention porté à ce message.

    En attendant vos suggestions/réponses, je continue mes leçons sur les TSocket

    ciao

    merci

    antoine

  2. #2
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Salut,
    la solution numéro 1 est tout a fait possible.

    Citation Envoyé par antoinelac Voir le message
    Est-ce que cela risque de causer des problèmes si deux ordinateurs envoient des requêtes en même temps?
    Je ne comprend pas ta question, si c'est bien si deux poste envoient en même temps sur le même serveur ? cela ne pose pas de problème, c'est le principe même d'un serveur, de pouvoir gérer plusieurs connexions clientes

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 108
    Par défaut
    Bien vue,

    Alors, lorsque l'ordinateur a besoin d'envoyé une info, il utilise la composant client (pour se connecter à l'autre ordinateur et lui transmettre l'info). Lorsqu'il reçoit, il est serveur.

    Est-ce que écouter s'il y a un client qui tente de se connecter est plus demandant qu'un TTimer? (bien que ça ne soit plus une option envisageable, puisque c'est trop "trash" et que l'option Socket permettra éventuellement d'autre "feature").

    Merci de tes conseils,

    Je m'y mets.

    ciao

    antoine

  4. #4
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Je ne pense pas que cela prend énormément de ressources, que ce soit l'un ou l'autre, mais il est sur que la communication par Socket est a mon avis plus propre que ta solution par Timer

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 108
    Par défaut
    Bonjour,

    je suis tomber fort heureusement sur :

    http://cpp.developpez.com/sources/bc...butant#appchat

    mais je n'arrive pas à télécharger la source (j'ai toujours ce problème avec www.developpez.COM, pour ce qui est des sources). Je crois que c'est un problème de sécurité côté serveur sur mon réseau. Je n'ai malheureusement pas la possibilité de changer les configurations de sécurité. Y aurait-il une âme charitable pour la mettre en pièce jointe à une réponse dans ce forum? Sinon, y-a-t-il un autre moyen d'y accéder?

    Merci infiniment!

    antoine

  6. #6
    Expert confirmé

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Par défaut
    Voici la source
    Fichiers attachés Fichiers attachés

  7. #7
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 108
    Par défaut
    Gracias amigo!
    hehe


    Merci,

    Antoine

Discussions similaires

  1. [BPW] Dialogues communs Windows 32 bits
    Par Alcatîz dans le forum Turbo Pascal
    Réponses: 28
    Dernier message: 29/03/2003, 22h59
  2. [web] problème de communication
    Par Hermant dans le forum Web
    Réponses: 2
    Dernier message: 04/02/2003, 14h15
  3. communication fichier binaire fichier txt
    Par micdie dans le forum C
    Réponses: 3
    Dernier message: 05/12/2002, 00h19
  4. communication corba
    Par joejoe dans le forum CORBA
    Réponses: 5
    Dernier message: 14/07/2002, 20h53
  5. communication entre programmes
    Par jérôme dans le forum C
    Réponses: 12
    Dernier message: 16/04/2002, 08h05

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