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

EDI Delphi Discussion :

Options personnalisées et mode de construction


Sujet :

EDI Delphi

  1. #1
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 062
    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 062
    Points : 15 353
    Points
    15 353
    Billets dans le blog
    9
    Par défaut Options personnalisées et mode de construction
    Bonjour !

    J'ai un projet (Delphi 10.3) avec une option de compilation qui est utilisée un peu partout dans le code.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    program ppp;
    {.$DEFINE ddd}
    {$IFDEF ddd}
    {$APPTYPE CONSOLE}
    {$ENDIF}
    Pour le moment je change l'option à la main, directement dans le code, ce qui est fastidieux parce que je dois le faire à deux endroits différents (dans le DPR et dans une unité).

    Je voudrais pouvoir sélectionner en un clic un mode de construction (comme DEBUG et RELEASE), l'un avec l'option, l'autre sans. Jusqu'à présent je n'ai même pas trouvé comment définir une option personnalisée dans les options du projet.

    Je voudrais aussi que l'exécutable ait un nom différent selon le mode de construction.

    Merci d'avance pour votre éclairage.

    Roland
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    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 426
    Points : 24 790
    Points
    24 790
    Par défaut
    Au final, c'est deux noms différents autant faire deux projets différents.
    En C++Builder XE3, on utilisait des sous Configuration Debug\LogicielToto, Debug\LogicielTiti et Release\LogicielToto, Release\LogicielTiti
    Couplé à FinalBuilder, on produisait deux logiciels différents partageant des briques communes (juste 80 DLL et 40 Exe, ActiveX, DCOM, DataSnap ...)

    J'avoue que je ne l'ai jamais refait depuis mais la IFDEF TOTO et IFDEF TITI avait son importance aussi dans le projet

    En Delphi, c'est Compilation conditionnelle, l'option Définitions conditionnelles

    Nom : e.png
Affichages : 97
Taille : 95,8 Ko
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 430
    Points
    28 430
    Par défaut
    l'autre solution bien pratique est le {$I OPTIONS.INC} dans tous les sources qui doivent être affectés, en plaçant les {$DEFINE ...} qui vont bien dans OPTIONS.INC
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  4. #4
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 671
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 671
    Points : 13 065
    Points
    13 065
    Par défaut
    Citation Envoyé par Roland Chastain Voir le message
    Je voudrais aussi que l'exécutable ait un nom différent selon le mode de construction.
    Défini une "extension du fichier cible" différente de "exe" pour cette construction particulière histoire de ne pas écraser l'autre exécutable.
    Puis ajoute ces deux lignes en post-compilation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    copy "$(OUTPUTPATH)" "$(OUTPUTDIR)MyNewName.exe"
    del "$(OUTPUTPATH)"
    Mais à ne faire qu'en Release, le debuggeur n'y retrouvant plus ses petits

  5. #5
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 062
    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 062
    Points : 15 353
    Points
    15 353
    Billets dans le blog
    9
    Par défaut
    Merci pour vos réponses. Problème résolu.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

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

Discussions similaires

  1. [Joomla!] Affichage d'une requete personnalisée en mode blog
    Par yves51 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 23/10/2015, 03h04
  2. [Magento] reloadPrice() pour des options personnalisables en jQuery
    Par comtokey dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 19/03/2015, 19h04
  3. Réponses: 4
    Dernier message: 07/06/2012, 17h18
  4. Réponses: 7
    Dernier message: 24/03/2011, 11h11
  5. Détection du mode de construction d'un objet
    Par ram-0000 dans le forum C++
    Réponses: 16
    Dernier message: 22/01/2009, 15h15

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