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

Lazarus Pascal Discussion :

Télécharger/Lire un fichier d'un serveur Web


Sujet :

Lazarus Pascal

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 37
    Par défaut Télécharger/Lire un fichier d'un serveur Web
    Bonjour,

    Je suis à la recherche d'une unité ou fonction qui me permettrait de télécharger un fichier depuis un serveur web distant.

    Par exemple, au lancement de l'application, celle ci télécharge checking.ini qui est stocké sur un serveur web (par exemple http://monsite.free.fr/checking.ini).

    Ce fichier est téléchargé dans le même dossier que mon application, après peu d'importance de vous le dire, mais bon je lis ce fichier pour afficher X ou Y chose dans mon application, puis le supprime. Ou même de le lire comme un .ini normal grâce à INIFile sans le télécharger, mais là je pense que je rêve

    Cela me permet de modifier et d'afficher certaines données dans l'application en dynamique, sans avoir à faire tourner un serveur MySQL. (La plupart des hébergeurs n'acceptant pas une connexion arrivante externe).

    Connaissez-vous ce genre d'unité/fonction/composant qui permette cela ?

    Merci,

    Jean-François.

  2. #2
    Membre Expert

    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 935
    Par défaut
    Salut

    Tu peux utiliser la librairie de composants Indy10. Je ne sais pas si elle fonctionne sous Linux, mais elle te permettra, a l'aide du composant IdHTTP de récuperer le contenu de ton document, et tu pourra en faire ce que tu veux (l'enregistrer, l'utiliser avec Inifile, etc.).

    Quand tu dis sans le télécharger, cela n'a pas vraiment de sens. Pour lire un fichier, tu es obligé de le télécharger. Par contre, tu n'est pas obligé de l'enregistrer sur ton ordinateur. Tu peux l'analyser en mémoire, et le supprimer quand tu as fini.

    Bonne chance

    Mick605

  3. #3
    Membre confirmé

    Homme Profil pro
    retraité
    Inscrit en
    Septembre 2006
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 65
    Par défaut Voir les composants inet
    Bonjour,
    Pour faire ce genre de choses ,sur des pages free,j'utilise les composants iNet.
    Cela fonctionne sur Windows,et sur Linux(je suis sous Ubuntu).
    Quand tu télécharge les composants,il y a des exemples.
    cordialement

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 37
    Par défaut
    Bonjour

    En effet hier j'ai penché sur Indy 10.

    Quel...Bordel...

    L'installation est plus que bancale, erreur de compilation du packet, erreur de reconstruction de Lazarus à cause de Indy 10, obligé de modifier les chemins et option du compilateur, puis les remettre par défaut, il ajoute 15 Tab dans IDE.

    Ca marche quand même grâce à idHTTP, + une unit filedownload développé appart qu'il faut chercher sur le net... Après 3h à essayer de l'installer correctement (sans rire) ça pseudo-marche.

    De temps en temps le composant ne fait plus partis de l'IDE, obligé de tout recompilé, les unités ne veulent plus compilé, obligé de fermer/ré-ouvrir, idHTTP deviens introuvable.

    Bref.... C'est une misère ce truc...

    Je vais regarder du coté de iNet pour voir si c'est mieux, pour le moment ça marche avec ç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
    15
    16
    17
     
    uses filedownload, IdHTTP,
     
    procedure Tfrm_main.lireALouverture();
    var
     
      Filedownload1 : TFileDownload;
     
    begin
     
     
      FileDownload1 := TFileDownload.Create(Self);
      FileDownload1.FileFrom := 'http://127.0.0.1/www/event.ini';
      FileDownload1.FileTo := 'event.ini';
      FileDownload1.Run;        
     
    end;

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Peut-être un peu tard, mais j'ai mis à disposition un patch d'installation d'indy10 sur ce forum. Il fonctionne aussi bien pour Win que pour Nux.

    Pour utiliser Indy dans mes projets, dans leurs options de compilation, j'ajoutais (à adapter évidemment) :

    G:\lazarus\0.9.31-30276-fpc-2.4.3-20110413\components\indy-10.2.0.3\;G:\lazarus\0.9.31-30276-fpc-2.4.3-20110413\components\indy-10.2.0.3\fpc\
    dans Autres fichiers unité (-Fu) et Librairies (-FI).

    Cordialement. Gilles

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 37
    Par défaut
    Bon finalement j'ai laissé tomber Indy 10, trop de problèmes de compilation/construction...et ce "n'importe quand", des fois l'installation ce passe bien, mais d'une compilation à une autre, il ne trouve plus les classes, les unités, etc...

    J'ai essayé Lnet, installation du package OK, mais 40 lignes pour DL un fichier.

    Finalement, coup de coeur pour Synapse (version 39), pas d'installation de package à faire, juste copier les .pas qu'on à besoin dans le projet.

    ça donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    uses httpsend;  
     
    procedure Tfrm_main.lireALouverture();
    var   
      fs: TFileStream;   
     
    begin
     fs := TFileStream.Create('event.ini', fmCreate);
     HttpGetBinary('http://127.0.0.1/www/event.ini', fs);
     fs.Free;
    end;
    Hop

  7. #7
    Membre éclairé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Par défaut
    Bonjour,
    ca a l'air pas mal ce truc. Quelqu'un aurait il essayé sous MAC OS X ?

    Merci.

  8. #8
    Membre éclairé

    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2006
    Messages
    621
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Janvier 2006
    Messages : 621
    Par défaut
    bon finalement apres rapides coups d'oeil, je reste sur l'excellentissime NativeXml que j'utilisais déjà sous Delphi...

Discussions similaires

  1. Lire un fichier PDF sur serveur local depuis une page Web
    Par sinifer dans le forum Langages serveur
    Réponses: 1
    Dernier message: 12/08/2013, 17h36
  2. Réponses: 6
    Dernier message: 23/01/2009, 00h37
  3. download de fichier depuis un serveur web
    Par minusette dans le forum Modules
    Réponses: 9
    Dernier message: 14/10/2005, 09h10
  4. Réponses: 6
    Dernier message: 08/04/2005, 03h00
  5. [Struts] Lire un fichier properties situé ds WEB-INF
    Par tscoops dans le forum Struts 1
    Réponses: 3
    Dernier message: 02/02/2005, 14h33

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