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 :

BCB 6 -> Builder XE2


Sujet :

C++Builder

  1. #1
    Membre chevronné
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    930
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 930
    Points : 1 959
    Points
    1 959
    Par défaut BCB 6 -> Builder XE2
    Bonjour,

    Comment fait on pour convertir un projet écrit sous Builder 6 vers Builder XE 2 ?

    Thierry

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 447
    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 447
    Points : 24 849
    Points
    24 849
    Par défaut
    Il faut ouvrir le BPR
    Cela va te générer un CBPROJ qu'il faudra utiliser à la place !

    Tu devras corriger probablement les chemins des bibliothèques, include ... pense aussi qu'il te faudrait réinstaller tous les BPK (en version compatible Unicode)

    Pense qu'un fichier migré reste en ANSI par défaut pour les API Windows
    A toi de voir, si tu veux mapper tous le projet en wchar_t (UNICODE) ce que je te conseille si tu as utilisé Char avec un C majuscule, mais que je te conseille pas si tu as bcp utilisé de char avec c miniscule

    Après, il y a un travail plus ou moins grand selon ta manière de coder en C++Builder et les corrections liés au passage ANSI vers UNICODE
    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
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 76
    Points : 59
    Points
    59
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    les corrections liés au passage ANSI vers UNICODE
    A comprendre que les AnsiString on grandement etait bridé, toute les fonction associé on disparu (lenght substring pos etc). Il faut tout redéclarer en WideString.

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 447
    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 447
    Points : 24 849
    Points
    24 849
    Par défaut
    Attention WideString c'est BSTR du COM !
    n'utilise pas ce type en dehors des interfaces et d'une utilisation inter-process ou entre DLL

    Ne confond pas avec UnicodeString qui s'utilise via l'alias String !
    UnicodeString remplace AnsiString !

    En général en C++Builder, on utilise les méthodes de la classe AnsiString et non les fonctions Delphi
    Les fonctions Delphi doivent toute de même fonctionner mais pense que l'affectation d'une AnsiString à une UnicodeString est consommateur de mémoire, ça c'est pour Length ou Pos
    Pour SubString ou ReplaceString, tu as aussi l'allocation du paramètre mais en plus, comme le résultat est une UnicodeString, il est possible d'avoir un avertissement (ou même une erreur ?) signalant une perte de données !

    Je te conseille d'utiliser String et d'activer le mode Unicode , la plupart du temps cela sera fonctionnel !
    C'est au moment des appels de DLL comme les API Windows selon tes options, que cela sera plus ou moins délicat (l'utilisation de c_str() par exemple)
    Cela s'applique à toutes les DLL !
    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

  5. #5
    Membre chevronné
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    930
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 930
    Points : 1 959
    Points
    1 959
    Par défaut
    Bonjour et merci pour votre aide, pour l'instant, je n'ai pas le temps de m'y lancer.
    Sinon, effectivement, j'utilise des AnsiString.

    Par contre, quand tu dis :

    Citation Envoyé par ShaiLeTroll Voir le message
    Il faut ouvrir le BPR
    Cela va te générer un CBPROJ qu'il faudra utiliser à la place !
    Il faut ouvrir le BPR avec BCB 6 ou XE2 ? Et la génération du CBPROJ se fait automatiquement ?

    Thierry

  6. #6
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 447
    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 447
    Points : 24 849
    Points
    24 849
    Par défaut
    Citation Envoyé par free07 Voir le message
    Il faut ouvrir le BPR avec BCB 6 ou XE2 ? Et la génération du CBPROJ se fait automatiquement ?
    XE2 et Oui, tu aurais pu le tester toi même !
    tu l'as au moins installé ? cela change le lien programme-extension
    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

  7. #7
    Membre chevronné
    Avatar de free07
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    930
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 930
    Points : 1 959
    Points
    1 959
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    XE2 et Oui, tu aurais pu le tester toi même !
    tu l'as au moins installé ? cela change le lien programme-extension
    Oui, je l'ai installé mais je ne sais pas pourquoi, quand j'ai fait le test, il ne me proposait pas d'ouvrir un fichier projet bpr.
    J'ai un peu de temps en ce moment, j'ai lancé C++Builder XE2 et cette fois ci, j'ai la possibilité d'ouvrir un fichier projet bpr.

    Maintenant le plus dur reste à faire !

  8. #8
    Membre habitué
    Homme Profil pro
    Chercheur génie électrique
    Inscrit en
    Mai 2002
    Messages
    263
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur génie électrique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2002
    Messages : 263
    Points : 136
    Points
    136
    Par défaut
    Bonjour,
    j'en profite pour une petite question: SpinEdit est disparru dans Builder XE2?
    Je ne trouve pas dans la version demo.
    Merci

Discussions similaires

  1. C++Builder XE2 plein de promesses mais
    Par phpdev dans le forum EDI
    Réponses: 13
    Dernier message: 09/03/2012, 19h10
  2. Avertissement W8123 avec C++ Builder XE2
    Par TsCyrille dans le forum C++Builder
    Réponses: 2
    Dernier message: 01/03/2012, 21h10
  3. Chargement des packages à l'ouverture de C++ Builder XE2
    Par TsCyrille dans le forum C++Builder
    Réponses: 0
    Dernier message: 27/01/2012, 12h03
  4. Ajouter la plateforme "Win64" avec C++ Builder XE2
    Par TsCyrille dans le forum C++Builder
    Réponses: 2
    Dernier message: 27/01/2012, 11h23
  5. [Base de donnée] c++ builder XE2 et interbase
    Par Dilane dans le forum C++Builder
    Réponses: 3
    Dernier message: 29/12/2011, 13h39

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