Créer des liaisons externes
Répondre à la discussion
Affichage des résultats 1 à 17 sur 17

Créer des liaisons externes



  1. #1
    Dlzlogic

    Créer des liaisons externes


    ------

    Bonjour,
    Je suis entrain de rajouter des possibilités à un programme existant, environnement C/C++.
    Cela consiste à envoyer et/ou recevoir des informations sous forme de fichier à des intervalle donnés et/ou des conditions précises.
    La partie que je connais peu est l'opération "envoyer et/ou recevoir".
    J'utilise Borland BC++B6, ma version n'est pas toute neuve, mais je vais lire la doc, sur ce point, en détail.
    Si quelqu'un a des petits conseils à me donner, je suis preneur.
    Merci d'avance.

    -----

  2. #2
    Cyrille999

    Re : Créer des liaisons externes

    Bonjour à toi,

    Elle est pas toute jeune ta version (2002 ! A ce jour la société Borland n'existe plus, les outils sont chez la société Embarcadero);
    J'ai programmé autrefois en Delphi, il avait des composants VCL tout fait qui te facilitait la vie sur "la connexion TCP/IP", il est même possible que des composants externes (ie: d'autres éditeurs, des gratuits) existent sur ce sujet.

    Tu peux aussi utiliser Ole Automation (je me souviens des composants pour word, excel, existaient-ils pour Outlook ?) ou un activeX orienté "SMTP".

    Sinon le site:
    http://cpp.developpez.com/cours/?page=borland

    et le forum:
    http://www.developpez.net/forums/f19/c-cpp/cpp/

    Cyrille
    La connaissance est la matière première de l'Intelligence.

  3. #3
    Dlzlogic

    Re : Créer des liaisons externes

    Merci pour la réponse.
    C'est vrai qu'elle n'est pas très jeune ma version de compilateur, mais ça ne s'use pas, même si on s'en sert.
    C'est au moins la 3è version que j'aie, je garde soigneusement les bouquins de la version Borland C++ 4.0.
    J'ai déjà fait ce genre de chose dans un environnement PHP, (il y a aussi très longtemps, mais c'est inusable).

  4. #4
    whoami

    Re : Créer des liaisons externes

    Bonjour,
    Citation Envoyé par Dlzlogic Voir le message
    Merci pour la réponse.
    C'est vrai qu'elle n'est pas très jeune ma version de compilateur, mais ça ne s'use pas, même si on s'en sert.
    C'est au moins la 3è version que j'aie, je garde soigneusement les bouquins de la version Borland C++ 4.0.
    J'ai déjà fait ce genre de chose dans un environnement PHP, (il y a aussi très longtemps, mais c'est inusable).
    Si, justement, car ces anciennes versions n'intègrent pas les nouveautés disponibles dans les nouvelles versions des systèmes, ni celles des nouveaux standards pour les langages, ...

  5. A voir en vidéo sur Futura
  6. #5
    Dlzlogic

    Re : Créer des liaisons externes

    Oui, merci pour cette réponse, mais c'est pas ça que je cherche.
    Petit détail technique, y aurait-il une nouvelle norme pour le C ?
    De toute façon, vous pensez bien que je ne vais pas racheter une nouvelle version de C.
    Donc, je continue à faire l'autruche et à me dire que ma version est toujours efficace.

  7. #6
    whoami

    Re : Créer des liaisons externes

    Bonjour,

    Il y a des compilateurs C gratuits, ainsi que des bibliothèques pour créer une application du type de celles que tu génères avec ton IDE Borland.

    Tu es bien parti pour faire comme les amateurs de Turbo Pascal (qui date des années 80), qui persistent à l'utiliser en lieu et place d'outils plus récents, plus performants, multi-plateformes, et dont l'un, FreePascal, a poussé le "lux" jusqu'à servilement imiter l'environnement de TP !

  8. #7
    Dlzlogic

    Re : Créer des liaisons externes

    Tu sais, ça fait 30 ans que je fais de l'informatique. Je ne veux pas dire par là que je n'ai plus rien à apprendre, mais seulement que vu mon âge, ce n'est pas ma préoccupation principale.
    Là j'ai un petit problème que je domine mal. Je cherche un coup de main, c'est tout.
    Après avoir pas mal lu, ça commence à se préciser, mais comme je suis d'un naturel prudent, d'autant que ce genre de manipe peut créer des problèmes, j'essaye de me documenter au maximum, avant de commencer. Dans le cas présent, je ne vois pas trop ce qu'une version plus nouvelle pourra apporter.
    Par ailleurs, ce module de transmission de fichier sera indépendant du logiciel concerné, puisque ce logiciel crée un fichier, puis se termine, le logiciel d'envoi de fichier sera seulement lancé.
    En fait, je suis sûr que c'est quelque-chose de complètement basique, ça existe dans les outils que j'utilise pour mettre à jour mon site, mais il faut que je l'écrive, puisque son exécution doit être automatique.

  9. #8
    fred1599

    Re : Créer des liaisons externes

    Il faudrait en dire plus (détaillé),

    Tu parles d'envoyer/recevoir des informations, mais sur un ou plusieurs fichiers?
    Que ne comprends tu pas dans le fait d'envoyer/recevoir des informations? Je ne vois pas le problème dans ce genre de choses en fait, il faudra détaillé ce point aussi...
    Quel type de données envoies/reçois tu?

    Je suis entrain de rajouter des possibilités à un programme existant, environnement C/C++
    En modifiant une fonction? Détails possibles? environnement ou langage? C ou C++?

    Si quelqu'un a des petits conseils à me donner, je suis preneur.
    Difficile sans un minimum d'infos, je te conseille de développer, envoyer un code dont tu souhaites la modification ou l'ajout de quelques fonctionnalités.

    Par ailleurs, ce module de transmission de fichier sera indépendant du logiciel concerné, puisque ce logiciel crée un fichier, puis se termine, le logiciel d'envoi de fichier sera seulement lancé.
    J'ai rien compris, je pensais que tu voulais modifier ce "logiciel", non?

    En fait, je suis sûr que c'est quelque-chose de complètement basique, ça existe dans les outils que j'utilise pour mettre à jour mon site, mais il faut que je l'écrive, puisque son exécution doit être automatique.
    ça à l'air basique, mais tu le rends immensément complexe par des explications dont le sens devient très large et des fois même incompréhensible.
    Merci de rendre ça plus explicite, est-ce un projet professionnel?

  10. #9
    Dlzlogic

    Re : Créer des liaisons externes

    Bon, je vais essayer d'être plus détaillé, mais, vous comprendrez que je reste discret sur certains points.
    Donc il y a un programme en free, donc code source fourni, licence ok.
    Ce programme écrit un fichier texte. On m'a demandé de transférer ce fichier texte sur un site.
    Ce logiciel, tel qu'il est donné, je l'ai compilé, tel que c'est prévu dans la licence.
    Il s'agit de transférer un fichier texte depuis le client vers le serveur et vice-versa.
    Pour la langage, l'auteur l'a écrit en C, vérifié la version pour Windows 2000 et Windows XP.
    Pour comprendre mieux ce qu'il faisait, je l'ai compilé en C/C++. C'est pas l'un ou l'autre, c'est du C compilé avec l'environnement que je connais. Donc, je me réserve d'utiliser des fonctions, l'exe résultat, il s'en-fiche.

    En fait je ne cherche en aucun cas à "modifier un logiciel", ce "programme" écrit un fichier texte en base dans une fenêtre d'édition. Avec "1>machin.log" sans autre intervention, j'ai un fichier texte sur le disque, ça c'est juste des détails.

    Oui, c'est un projet professionnel, mais je suis en retraite et je fais ça pour le plaisir.
    Bien sûr c'est basique, mais c'est pas ma spécialité et je veux pas faire de bêtises.

  11. #10
    fred1599

    Re : Créer des liaisons externes

    Et tu veux des conseils sur la lib à utiliser pour ce type de transfert? ou...?

  12. #11
    Dlzlogic

    Re : Créer des liaisons externes

    En fait, je suis sûr que c'est très simple, en gros je suis presque sûr que le source contient presque tout ce qu'il faut, mais je veux être sur de ne pas faire de bêtise.
    En gros, il y a 3 étapes
    1- connexion
    2- transfert de fichier.
    3- fin de connexion.
    J'ai fait ça en PHP , je sais que c'est pas compliqué, j'ai des exemples fournis pas Borland, mais je voudrais être sûr avant de faire des essais.
    Naturellement j'ai tout ce qu'il faut (nom de host et psw).
    Comme tout vieil informaticien, j'aime bien savoir ce que je fais avant d'essayer, pour qu'il ne reste que des fautes de syntaxe.
    Merci d'avance, par MP si vous le jugez préférable.

  13. #12
    fred1599

    Re : Créer des liaisons externes

    Je ne connais pas PHP, mais en C++ on peut utiliser la lib sys/socket.h pour une connexion au server.

    En ce qui concerne les 3 étapes ça me semble correctes, bon courage pour la suite

  14. #13
    Dlzlogic

    Re : Créer des liaisons externes

    Oui, là on est d'accord, mais ma doc est un peu avare d'exemple et encore plus d'explication.
    Je vais prendre mon courage à 2 mains et tenter un essai.

  15. #14
    Jack
    Modérateur

    Re : Créer des liaisons externes

    il existe des composants tout faits pour une connexion réseau dans la VCL. Je m'en suis servi il y a une dizaine d'années. Tu veux donc juste ovrir une connexion réseau, balancer un fichier et fermer cette connexion, c'est çà?

    A+

  16. #15
    Dlzlogic

    Re : Créer des liaisons externes

    Citation Envoyé par Jack Voir le message
    il existe des composants tout faits pour une connexion réseau dans la VCL. Je m'en suis servi il y a une dizaine d'années. Tu veux donc juste ovrir une connexion réseau, balancer un fichier et fermer cette connexion, c'est çà?

    A+
    Oui, c'est exactement ça. Tout le reste, c'est des choses que je sais faire.
    Merci d'avance.

  17. #16
    Jack
    Modérateur

    Re : Créer des liaisons externes

    Et donc tu cherches quoi précisément?

  18. #17
    Dlzlogic

    Re : Créer des liaisons externes

    En fait, je suis très prudent, j'ai tout ce qu'il faut, mais je voudrais être sûr que je ne risque pas de faire une bêtise, puisque je ne peux pas travailler en local.
    Voila les deux entêtes utilisés
    #include <NMSTRM.hpp>
    #include <Psock.hpp>
    TFileStream *MyFStream;
    MyFStream = new TFileStream(OpenPictureDialog1->FileName, fmOpenRead);
    try
    {
    NMStrm1->Host = Edit2->Text;
    NMStrm1->FromName = Edit1->Text;
    NMStrm1->PostIt(MyFStream);
    }
    catch(...)
    {
    }
    MyFStream->Free();
    Et l'opération inverse (dont je n'ai pas vraiment besoin, serait ceci :
    if (FileExists(".\\tmp.bmp"))
    DeleteFile(".\\tmp.bmp");
    TFileStream *MyFStream;
    MyFStream = new TFileStream(".\\tmp.bmp", fmCreate);
    try
    {
    MyFStream->CopyFrom(strm, strm->Size);
    }
    catch(...)
    {
    }
    MyFStream->Free();
    C'est pas plus compliqué ?

Discussions similaires

  1. Réponses: 7
    Dernier message: 05/01/2016, 13h31
  2. Réponses: 1
    Dernier message: 21/09/2009, 16h26
  3. (C++ Builder) Compiler des données externes!
    Par invite4347dbc7 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 12/05/2008, 20h50