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 :

Voir si un fichier existe


Sujet :

Web & réseau Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2005
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 98
    Par défaut Voir si un fichier existe
    Yop
    je chercherais comment Voir si un fichier sur un serveur web , sachant que j'ia le nom exact du fichier .
    Merci

  2. #2
    Membre expérimenté
    Avatar de HumanTool
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2006
    Messages
    276
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2006
    Messages : 276
    Par défaut
    salut,
    il y a la fonction FileExists

  3. #3
    Membre confirmé
    Inscrit en
    Novembre 2005
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 98
    Par défaut
    Yop
    Merci de la reponse HumanTool , mais au risque de me tromper , la fonction fileExists est a utiliser en local seulement , non ?

  4. #4
    Membre émérite
    Avatar de denokan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2002
    Messages
    434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 434
    Par défaut
    je viens de trouver ça sur un autre forum :
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    function IsUrlValid(const url: string): boolean;
    var
      hInet: HINTERNET;
      hConnect: HINTERNET;
      infoBuffer: array [0..512] of char;
      dummy: DWORD;
      bufLen: DWORD;
      okay: LongBool;
      reply: String;
    begin
      hInet := InternetOpen(PChar(application.title),
        INTERNET_OPEN_TYPE_PRECONFIG_WITH_NO_AUTOPROXY,nil,nil,0);
      hConnect := InternetOpenUrl(hInet,PChar(url),nil,0,
        INTERNET_FLAG_NO_UI,0);
      if not Assigned(hConnect) then
        //----------------------------------------------------------
        // If we couldn't open a connection then we know the url
        // is bad. The most likely reason is that the url is bad,
        // but it could be because of an unknown or badly specified
        // protocol.
        //----------------------------------------------------------
        result := false
      else
      begin
        //------------------------------
        // Create a request for the url.
        //------------------------------
        dummy := 0;
        bufLen := Length(infoBuffer);
        okay := HttpQueryInfo(hConnect,HTTP_QUERY_STATUS_CODE,
          @infoBuffer[0],bufLen,dummy);
        if not okay then
          // Probably working offline, or no internet connection.
          result := False
        else
        begin
          reply := infoBuffer;
          if reply = '200' then
            // File exists, all ok.
            result := True
          else if reply = '401' then
            // Not authorised. Assume page exists,
            // but we can't check it.
            result := True
          else if reply = '404' then
            // No such file.
            result := False
          else if reply = '500' then
            // Internal server error.
            result := False
          else
            // Shouldn't get here! It means there is
            // a status code left unhandled.
            result := False;
        end;
        InternetCloseHandle(hConnect);
      end;
      InternetCloseHandle(hInet);
    end;
    il faut rajouter WinInet dans les uses et ça fonctionne

  5. #5
    Membre confirmé
    Inscrit en
    Novembre 2005
    Messages
    98
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 98
    Par défaut
    Yop
    J'avais deja toruvé ca , mais ce n'est pas ce que je cherche , vu que sur quelques serveurs ( ifrance par exemple ) au lieu de renovyer 404 , ils mettent une page avec : erreur la page n'a pas été trouvée =/ , donc ici la fonction ne fait pas son travail , essayez ...
    Merci

  6. #6
    Membre expérimenté
    Avatar de HumanTool
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2006
    Messages
    276
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2006
    Messages : 276
    Par défaut
    désolé j'avais pas compris ta question j'ai cru que ct ton serveur web...
    mais tu utilise quoi comme composant internet (indy, ics...) ? peut être qu'ils ont des fonctions propres....

  7. #7
    Membre expérimenté
    Avatar de HumanTool
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2006
    Messages
    276
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2006
    Messages : 276
    Par défaut
    Citation Envoyé par BuGGz
    Yop
    J'avais deja toruvé ca , mais ce n'est pas ce que je cherche , vu que sur quelques serveurs ( ifrance par exemple ) au lieu de renovyer 404 , ils mettent une page avec : erreur la page n'a pas été trouvée =/ , donc ici la fonction ne fait pas son travail , essayez ...
    Merci
    certes mais au final la page n'existe pas donc le dernier else de la fonction te rends false....

Discussions similaires

  1. [langage] fichier existe?
    Par pascal.cargouet dans le forum Langage
    Réponses: 2
    Dernier message: 14/10/2004, 15h34
  2. Macro dans excel permettant de voir si un fichier est ouvert
    Par VirginieGE dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/08/2004, 07h51
  3. Réponses: 3
    Dernier message: 13/07/2004, 10h48
  4. [langage] tester si un fichier existe
    Par schnecke dans le forum Langage
    Réponses: 3
    Dernier message: 02/03/2004, 11h24

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