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

C++Builder Discussion :

Problème de compilation conditionnelle selon la version du compliteur


Sujet :

C++Builder

  1. #1
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2012
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2012
    Messages : 164
    Points : 356
    Points
    356
    Par défaut Problème de compilation conditionnelle selon la version du compliteur
    Bonjour,

    Je m'excuse d'avance si la question a déjà été posé (en fait, je suis sur qu'elle a été posé) mais, comme dirait Prévert, j'ai cherché mais j'ai pas trouvé.

    Je suis en train d'écrire un composant et je voudrais bien que le source soit compatible pour Builder 2009 et plus.

    Clairement, la directive suivante ne passera pas en 2009:

    #include <Winapi.Windows.hpp> // XE2

    d'après ce qui j'ai trouvé ici:
    http://docwiki.embarcadero.com/RADSt...piler_Versions

    je pensais m'en sortir avec quelque chose du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    #ifdef VER230 
     
    #include <Winapi.Windows.hpp>	
     
    #else
     
    #include <Windows.hpp>	
     
    #endif
    Mais ça ne fonctionne pas, VER230 ne semble pas être reconnu par Builder.
    Évidemment, c'est de la doc Delphi, mais j'aurais pensé que les "defines" sont les mêmes en Builder.

    Vous avez une idée?

    Merci!

  2. #2
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    Salut Guyt54
    Regarde ce post, je pense que c'est ce que tu cherche

  3. #3
    Membre chevronné
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Points : 2 187
    Points
    2 187
    Billets dans le blog
    1
    Par défaut
    Salut C++ Builder n'emploie pas les mêmes constantes
    la macro __BORLANDC__ contient le numéro de version

    0x0570 for BDS 2006
    0x0590 for C++Builder 2007
    0x0591 for update 1 to C++Builder 2007
    0x0592 for RAD Studio 2007
    0x0593 for the December update to RAD Studio 2007
    0x0610 for C++Builder 2009 and for C++Builder 2009 Update 1
    0x0620 for C++Builder 2010 and for C++Builder 2010 Update 1
    0x0621 for C++Builder 2010 Update 2
    0x0630 for C++Builder XE
    0x0631 for C++Builder XE Update 1
    0x0640 for C++Builder XE2

    ton test sera alors
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    #if __BORLANDC__ ==0x621  // C++ Builder 2010
    #include <Winapi.Windows.hpp>	
     
    #else
     
    #include <Windows.hpp>	
     
    #endif
    cdlt de Suisse

  4. #4
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2012
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2012
    Messages : 164
    Points : 356
    Points
    356
    Par défaut
    Un gros merci blondinelle pour la bonne piste et à DjmSoftware pour la précision sur les valeurs à utiliser, j'ai testé et ça fonctionne nickel. Mine de rien, ça faisait 2 heures que je cherchais.

    Mais avant de mettre [Résolu], je vais exagérer en vous posant une autre petite question.

    À partir de quelle version les #include <ici.oula.hpp> sont apparus? XE?

  5. #5
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2012
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2012
    Messages : 164
    Points : 356
    Points
    356
    Par défaut
    Citation Envoyé par Guyt54 Voir le message
    À partir de quelle version les #include <ici.oula.hpp> sont apparus? XE?
    Guyt, lit la doc de XE2:

    http://docwiki.embarcadero.com/RADSt...es#Unit_Scopes

    et en particulier cette phrase, t'auras ta réponse:

    "That is, names of units, functions, classes, and members now have a unit scope name prepended to the unit name, as follows: "

    Encore un gros merci!

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

Discussions similaires

  1. [AC-2003] Problème de compilation lors de calculs conditionnels
    Par dds325is dans le forum VBA Access
    Réponses: 1
    Dernier message: 04/01/2013, 11h41
  2. Problème de mise en page selon la version Office
    Par MaelB dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/01/2013, 16h42
  3. Problème aves les références selon versions
    Par Carmiel dans le forum VBA Access
    Réponses: 16
    Dernier message: 19/03/2009, 22h45
  4. problème de compilation wrong version 49 -48
    Par Tanebisse dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 18/03/2009, 15h39
  5. problème compilation conditionnelle
    Par salseropom dans le forum Linux
    Réponses: 5
    Dernier message: 16/10/2007, 17h08

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