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

Web & réseau Delphi Discussion :

Pilotage avec Indy sous D7


Sujet :

Web & réseau Delphi

  1. #1
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut Pilotage avec Indy sous D7
    Bonjour à tous,

    J'ai un "problème" inédit pour moi, et pour ne pas m'esquinter les nerfs à faire n'importe quoi, j'aimerais avoir votre avis avant de me lancer :

    Je dois piloter une machine réseau spécifique qui fonctionne par messages Hexa.
    Je compte donc utiliser les composant Indy (9), mais il y en a tellement que je ne connais pas... Quelqu'un pourrait-il m'aiguiller sur le composant le plus adéquat ?
    La problématique me semble simple : je dois envoyer un message à une adresse IP donnée.

    Merci d'avance pour votre aide.

  2. #2
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Comment dois tu envoyer le message ?
    Par TCPIP Simple avec une chaine de caractères Héxa formatée selon certaines règles ?
    En methodes web Post ou Get ?
    Autres ?

  3. #3
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    Oui, c'est exactement ça,

    Par TCPIP Simple avec une chaine de caractères Héxa formatée selon certaines règles.

  4. #4
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504

  5. #5
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    ah ben... si, peut-être

    Merci.

  6. #6
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    Mon message n'avait rien à voir avec le web , mais bon...

  7. #7
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    Ouai bon, ça me paraissait un peu simple...

    En fait j'ai besoin, en plus d'envoyer un message à la machine,
    de l'interroger (ok, pas de pb c'est la même chose),
    mais aussi de traiter sa réponse (comment puis-je recevoir sa réponse).

    Avec quel composant puis-je faire tout cela ?
    Peut-on utiliser plusieurs composants ?

    Le TIdEcho n'est-il pas plus indiqué pour cela que le TIdTCPClient ?

  8. #8
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Je n'ai jamais utiliser le TIdEcho donc je ne pourrais pas te dire si c'est mieux ou pas.

    Mais si tu regardes bien l'exemple du premier lien de la que je fournis, il y a l'attente d'une réponse du serveur donc je pense que c'est à ce moment que tu dois traiter la réponse que ton appareil te transmettra.
    Après il est difficile de plus te guider vu qu'on ne connait pas l'application/matériel avec lequel tu dois communiquer.

  9. #9
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    Ok, c'est tout bon.

    Il fallait comprendre que la machine attendait quelque chose du genre :
    #$C5
    pour la commande C5.

    Merci beaucoup.

    J'ai un autre pb, je ne comprends pas pourquoi je n'arrive pas à trouver une fonction qui fasse :
    Fonction('E') = $45, donnant le code ASCII en Hexa (ou en n'importe quoi) d'un caractère donné.
    C'est à dire tout simplement le contraire de la fonction Char() avec :
    Char($45).

  10. #10
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Citation Envoyé par od.dev Voir le message
    Ok, c'est tout bon.

    Il fallait comprendre que la machine attendait quelque chose du genre :
    #$C5
    pour la commande C5.

    Merci beaucoup.

    J'ai un autre pb, je ne comprends pas pourquoi je n'arrive pas à trouver une fonction qui fasse :
    Fonction('E') = $45, donnant le code ASCII en Hexa (ou en n'importe quoi) d'un caractère donné.
    C'est à dire tout simplement le contraire de la fonction Char() avec :
    Char($45).
    Ord est la fonction que tu cherches qui va te donner la valeur numérique d'un caractère ascii

  11. #11
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    Ok merci, j'aurais dû y penser à celle-là.

    Mais n'y a-t-il pas un moyen d'obtenir directement le valeur hexa de ce caractère ?

  12. #12
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Je ne crois pas, il te faut la convertir après.

  13. #13
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    Ok, ce n'est pas un problème,
    je trouvais seulement étonnant qu'un language informatique n'ai pas prévu de fonction qui donne la valeur hexa d'un caractère !

    merci pour ton aide.

  14. #14
    Membre averti

    Homme Profil pro
    ingénieur, retraité
    Inscrit en
    Février 2007
    Messages
    230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ingénieur, retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2007
    Messages : 230
    Points : 332
    Points
    332
    Par défaut
    Dans l'aide de Delphi on trouve à "Chaînes format" un type de conversion "x"
    pour l'hexadécimal que l'on peut utiser avec 'Format';

    x Hexadécimal. L'argument doit être une valeur entière. Cette dernière est convertie en une chaîne de chiffres hexadécimaux. Si la chaîne de format contient un spécificateur, ce dernier spécifie que la chaîne doit contenir au moins le nombre indiqué de chiffres ; si cela n'est pas le cas, des caractères zéro de remplissage sont rajoutés dans la partie gauche de la chaîne.
    Je ne l'ais pas encore utilisé.

  15. #15
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    oui effectivement,

    je me suis débrouillé avec :
    titi := '$' + Format('%x',[Ord(toto)])

    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec Indy sous BSD 2006
    Par merouane_k dans le forum Web & réseau
    Réponses: 1
    Dernier message: 22/03/2008, 21h35
  2. Chat sous openGL avec indy 9
    Par fyrex dans le forum Delphi
    Réponses: 4
    Dernier message: 02/05/2007, 07h58
  3. PB multi envoie message avec indy 10 sous D9
    Par korntex5 dans le forum Web & réseau
    Réponses: 1
    Dernier message: 13/07/2005, 14h27
  4. Utiliser Borland C++ avec Emacs sous Windows
    Par Eikichi dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 02/03/2003, 08h40
  5. [Kylix] Runtime error 230 avec INDY
    Par Anonymous dans le forum EDI
    Réponses: 2
    Dernier message: 23/03/2002, 11h51

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