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 :

Déterminer un chemin relatif [Lazarus]


Sujet :

Lazarus Pascal

  1. #1
    Membre actif
    Avatar de sematimo
    Profil pro
    Inscrit en
    Février 2009
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 287
    Points : 276
    Points
    276
    Par défaut Déterminer un chemin relatif
    Bonjour.

    Petite question. Une application installée sur le disque C fait appel à un dossier sur le lecteur D. J'aimerais avoir le chemin relatif du dossier sur D par rapport à l'application sur le lecteur C.

    Peut-être avec CreateRelativeSearchPath ?

  2. #2
    Membre actif
    Avatar de sematimo
    Profil pro
    Inscrit en
    Février 2009
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 287
    Points : 276
    Points
    276
    Par défaut
    bon je me suis débrouillé autrement.
    j'ai bricolé une petite fonction qui marche très bien dans mon cas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     function Tform1.relativepath(source,destin:string):string;
         var
      x:integer;
      s,s2:string;
    begin
      s:=source+'\';
    s2:='../';
     for x:=0 to length(s)-1 do
     begin
      if s[x]='\' then s2:=s2+'../';
     end;
      result:=s2+stringreplace(destin,'\','/', [rfReplaceAll, rfIgnoreCase]);
    end;

  3. #3
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Bonjour !

    Autrement il y a la fonction ExtractRelativePath.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  4. #4
    Membre actif
    Avatar de sematimo
    Profil pro
    Inscrit en
    Février 2009
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 287
    Points : 276
    Points
    276
    Par défaut
    Bonjour
    j'avais essayé ExtractRelativePath mais il ne semble pas fonctionner.
    Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    edit1.text:=ExtractRelativePath('C:\Program Files (x86)/','D:\Documents/');
    me renvoi toujours 'D:\Documents' alors que je devrai avoir quelque chose comme ça: ../../D:/Documents/

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 858
    Points : 11 301
    Points
    11 301
    Billets dans le blog
    6
    Par défaut
    Bonjour,
    Il semble qu'il y ait une limitation à la fonction, lue dans son aide :
    If DestName is on another drive (Not on Unix-like platforms) then the whole Destname is returned.
    Ce que tu obtiens semble donc ce que tu devais obtenir, à défaut d'être ce que tu souhaitais avoir.
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  6. #6
    Membre actif
    Avatar de sematimo
    Profil pro
    Inscrit en
    Février 2009
    Messages
    287
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 287
    Points : 276
    Points
    276
    Par défaut
    Donc ne peut fonctionner que si tout se trouve sur le même disque

  7. #7
    Membre éclairé

    Homme Profil pro
    Rédacteur technique (retraité)
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Rédacteur technique (retraité)

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Points : 807
    Points
    807
    Par défaut
    Citation Envoyé par sematimo Voir le message
    Donc ne peut fonctionner que si tout se trouve sur le même disque
    Une solution à ce problème peut passer par la création d'un "Soft Link".

    Ce soft link est une sorte de raccourcis qui, s'il est créé sur C et référençant un sous arbre de D (un dossier), fera apparaître ce sous arbre comme faisant partie de C à l'emplacement du Soft link. Ce qui devrait permettre d'atteindre les éléments de cette partie référencée de D: via un chemin relatif passant par le lien symbolique.

    Je ne suis pas spécialiste dans ce domaine mais si cette voie t'intéresse vois https://www.makeuseof.com/guide-crea...ks-windows-10/) et/ou consulte le sous-forum Systèmes/Windows où de meilleurs spécialistes que moi pourrait t'éclairer.

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

Discussions similaires

  1. Raccourci Chemin relatif pour la cible
    Par rabobsky dans le forum Autres Logiciels
    Réponses: 7
    Dernier message: 07/11/2005, 13h57
  2. Prb de chemin relatif
    Par hitchie dans le forum MFC
    Réponses: 4
    Dernier message: 10/05/2005, 15h46
  3. [Plugin Tomcat] Chemin relatif
    Par cloogy dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 01/03/2005, 16h26
  4. [XSL-FO] Chemin relatif d'une image
    Par JustAGphy dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 04/08/2004, 13h25
  5. [JSP] Include, problème de chemin relatif
    Par dafly dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 15/04/2004, 14h11

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