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

Langage Delphi Discussion :

Syntaxe inconnue avec TPath


Sujet :

Langage Delphi

  1. #1
    Membre éprouvé Avatar de der§en
    Homme Profil pro
    Chambord
    Inscrit en
    Septembre 2005
    Messages
    802
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Chambord
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2005
    Messages : 802
    Points : 1 051
    Points
    1 051
    Par défaut Syntaxe inconnue avec TPath
    Bonjour,

    En faisant des recherche sur TPath,

    Je suis tombé sur cette syntaxe qui m'a surpris car, je ne la connaissait pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ExtractFilePath(TPath.GetFullPath('$(RUN)'));
    Ce qui m'a surpris c'est le '$(RUN)', j'ai cherché dans la doc en ligne des infos la dessus, sans succès.

    Auriez-vous un lien sur plus d'infos la dessus ?

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 563
    Points : 25 165
    Points
    25 165
    Par défaut
    C'est la syntaxe de Delphi, des variables dans le DPROJ

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 097
    Points : 41 081
    Points
    41 081
    Billets dans le blog
    62
    Par défaut
    Oui, étrange, mais cela va plus loin, tu aurais pu mettre n'importe quoi dans la chaine (sauf un blanc) et obtenir le même résultat !
    mais c'est peut-être dans la seconde phrase
    GetFullPath renvoie le chemin absolu et complet d'un chemin relatif donné. Si le chemin donné est absolu, GetFullPath le renvoie simplement. Sinon, GetFullPath utilise le répertoire de travail en cours en tant que racine du Path donné.
    que se cache le comportement

  4. #4
    Membre éprouvé Avatar de der§en
    Homme Profil pro
    Chambord
    Inscrit en
    Septembre 2005
    Messages
    802
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Chambord
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2005
    Messages : 802
    Points : 1 051
    Points
    1 051
    Par défaut
    Merci de vos retours.

    Si je fait juste ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TPath.GetFullPath('$(RUN)')
    J'ai bien le dossier de mon programme, mais en fin de chaine, j'ai (en plus) $(RUN), étonnant, qui disparait logiquement si le l'entoure de la fonction ExtractFilePath() !

    Sinon, en effet dans mon fichier .dproj, je trouve bien plusieurs variables tel que '$(BDS)', '$(PRODUCTVERSION)', '$(Config)', '$(Platform)' ou encore '$(PROJECTNAME)', souvent associé a une fonction "Exists" , pas pas de '$(RUN)'...

    Sauriez-vous, dans la doc, ou l'on peux trouver plus d'infos sur ces variables ?

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 563
    Points : 25 165
    Points
    25 165
    Par défaut
    Pour la plupart comme BDS, PRODUCTVERSION c'est des variables d'environnements que l'on trouve dans le menu Options

    Pour $(Config) et $(Platform) c'est spécifique à MSBUILD comme $(PROJECTNAME), c'est des macros que l'on hérite de Microsoft

    Ah oui, attention au mode Debug !
    En mode Debug, l'exe va hérité du contexte du BDS.exe, j'ignore si les variables d'environnements pour le process en cours sont transmis, ça faudrait vérifier même si cela se produit, je me souviens d'avoir bossé à ce sujet lors de débogage de DLL mais c'était il memble pour que l'exe et la DLL soit en phase (si je retrouve ça) je ne retrouve plus mais c'était lpEnvironment + CreateProcess
    Le cas de $(Run) c'est juste GetCurrentDir+\+$(Run) qui est un effet de bord de la fonction

    C'est aussi le cas d'une application en mode user et mode adminstrateur, cela change les variables d'environnements

    EDIT : ah ah j'avais bien observé une transmission

  6. #6
    Membre éprouvé Avatar de der§en
    Homme Profil pro
    Chambord
    Inscrit en
    Septembre 2005
    Messages
    802
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Chambord
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2005
    Messages : 802
    Points : 1 051
    Points
    1 051
    Par défaut
    Merci

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

Discussions similaires

  1. Syntaxe inconnue avec accolades
    Par sir_gcc dans le forum Langage
    Réponses: 1
    Dernier message: 29/11/2006, 18h14
  2. [PostgreSQL] [PostgreSQL] Problème de syntaxe (NULL) avec PHP et Postgresql
    Par el_butcho dans le forum PHP & Base de données
    Réponses: 40
    Dernier message: 16/07/2006, 18h28
  3. [SQL] probleme de syntaxe sql avec php
    Par kaygee dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 05/06/2006, 14h32
  4. syntaxe requete avec parametres
    Par mike600river dans le forum C++Builder
    Réponses: 5
    Dernier message: 24/05/2006, 17h03
  5. [Syntaxe] Requêtes avec null
    Par Procto dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/07/2005, 16h10

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