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

 Delphi Discussion :

j'ai des erreurs quand je compile mon application on delphi 7 avec delphi 2010


Sujet :

Delphi

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 159
    Points : 37
    Points
    37
    Par défaut j'ai des erreurs quand je compile mon application on delphi 7 avec delphi 2010
    je viens d'installé delphi 2010
    je compile mon application crée avec delphi7 avec delphi 2010

    des tas d'erreurs alors qu'avec delphi 7 non

    par exemple StrToint il me dit type incompatible

  2. #2
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    Ben il faut mettre les lignes en faute et les messages d'erreurs sinon...
    Sachant que la plupart des erreurs viennent du changement de format des string passées en Unicode, une base : http://edn.embarcadero.com/article/38980

  3. #3
    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
    N'y aurait-il pas eu passage à l'Unicode entre les 2 ? A revoir tous les problèmes de compatibilité AnsiChar/WideChar, AnsiString/WideString, etc.
    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 !

  4. #4
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 159
    Points : 37
    Points
    37
    Par défaut
    le document et en anglais je comprend pas bien
    y a pas un autre en français

  5. #5
    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 445
    Points
    28 445
    Par défaut
    Citation Envoyé par Night_Wolf1619 Voir le message
    le document et en anglais je comprend pas bien
    y a pas un autre en français
    le problème principal que tu vas rencontré est que le type "string" est devenu par défaut une "UnicodeString", l'ancien type string est l'AnsiString voir la RawByteString si elle contient des données binaires et non du texte. Idem pour PChar devenu PWideChar au lieu de PAnsiChar

    Sachant cela, tu dois soit adapter ton code pour passer en Unicode en changer le type de tes variables pour forcer l'ANSI...mais ils s'avère généralement plus simple de basculer en Unicode, ce qui implique une attention particulière à tout ce qui est entrées/sorties vers des Socket, des fichiers, ... si l'application D7 a stocké une chaîne dans un fichier, c'est forcément de l'ANSI et il faut la lire comme tel.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  6. #6
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 159
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    le problème principal que tu vas rencontré est que le type "string" est devenu par défaut une "UnicodeString", l'ancien type string est l'AnsiString voir la RawByteString si elle contient des données binaires et non du texte. Idem pour PChar devenu PWideChar au lieu de PAnsiChar

    Sachant cela, tu dois soit adapter ton code pour passer en Unicode en changer le type de tes variables pour forcer l'ANSI...mais ils s'avère généralement plus simple de basculer en Unicode, ce qui implique une attention particulière à tout ce qui est entrées/sorties vers des Socket, des fichiers, ... si l'application D7 a stocké une chaîne dans un fichier, c'est forcément de l'ANSI et il faut la lire comme tel.
    je suis un peut confuse est ce que la version 2010 et bonne

    justement la première erreur et quand je stocké une chaîne dans un fichier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Append(NW_SIDS); {Opens the file for editing}
    Writeln(NW_SIDS,MainProgram.name+':'+inttostr(MainProgram.SID_pid)+':'+inttostr(MainProgram.tp_id)
     +':'+inttostr(MainProgram.PMT_pid)+':'+MainForm.CA_SYSTEMS.Cells[1,Active_ROW]+':'+MainForm.CA_SYSTEMS.Cells[0,Active_ROW]+':'+MainForm.CA_SYSTEMS.Cells[3,Active_ROW]+':;');
    Closefile(NW_SIDS); {Closes file NW_SIDS}
    il ce pointe sur StrToint dans la 2eme line et me dit type incompatible

  7. #7
    Membre averti Avatar de Moez.B
    Homme Profil pro
    Développeur Delphi
    Inscrit en
    Mars 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 219
    Points : 370
    Points
    370
    Par défaut
    salut,
    quel est le type de PMT_ID ?
    "L'homme supérieur est celui qui a une bienveillance égale pour tous, et qui est sans égoïsme et sans partialité." [Confucius]
    "Celui qui n'évolue pas disparaît." [Charles Darwin]
    “Without requirements or design, programming is the art of adding bugs to an empty text file.” [Louis Srygley]

  8. #8
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 159
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par Moez.B Voir le message
    salut,
    quel est le type de PMT_ID ?
    Word

  9. #9
    Membre averti Avatar de Moez.B
    Homme Profil pro
    Développeur Delphi
    Inscrit en
    Mars 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 219
    Points : 370
    Points
    370
    Par défaut
    Béhh , il faut basculer vers l'UNICODE surtout dans l'insertion dans un fichier tel est ton cas ..
    Et si tu essaies une conversion de cette façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AnsiString(IntToStr(MainProgram.PMT_pid))
    Tu garanties que la chaîne insérée est de type AnsiString ... si ça fonctionnes, termine le boulot pour le reste des insertions ..
    "L'homme supérieur est celui qui a une bienveillance égale pour tous, et qui est sans égoïsme et sans partialité." [Confucius]
    "Celui qui n'évolue pas disparaît." [Charles Darwin]
    “Without requirements or design, programming is the art of adding bugs to an empty text file.” [Louis Srygley]

  10. #10
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 159
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par Moez.B Voir le message
    Béhh , il faut basculer vers l'UNICODE surtout dans l'insertion dans un fichier tel est ton cas ..
    Et si tu essaies une conversion de cette façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AnsiString(IntToStr(MainProgram.PMT_pid))
    Tu garanties que la chaîne insérée est de type AnsiString ... si ça fonctionnes, termine le boulot pour le reste des insertions ..
    toujours la même erreur

  11. #11
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 159
    Points : 37
    Points
    37
    Par défaut
    après plusieurs teste j'ai corrigé l'erreur été avant pas après le curseur
    dans MainProgram.name

    j'ai fait comme ça remplacé tout les MainProgram.name par AnsiString(MainProgram.name) et plus d'erreur

    et la déclaration de MainProgram et comme ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      TProgramm82 = record
        Name:          array[00..29] of char;
    et dans var
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var
      MainProgram          : TProgramm82;
    maintenant j'ai le problème suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MainForm.CA_Channel.Cells[1,1]:=MainProgram.Name;
    il affiche des petite carreaux a la place du nom

    même chose avec AnsiString(MainProgram.name)

  12. #12
    Membre averti Avatar de Moez.B
    Homme Profil pro
    Développeur Delphi
    Inscrit en
    Mars 2006
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 219
    Points : 370
    Points
    370
    Par défaut
    Salut , béh , j'estime que c'est une StringGrid: même chose, le composant stockant des strings doit être redéfini .. pas facile la migration !
    "L'homme supérieur est celui qui a une bienveillance égale pour tous, et qui est sans égoïsme et sans partialité." [Confucius]
    "Celui qui n'évolue pas disparaît." [Charles Darwin]
    “Without requirements or design, programming is the art of adding bugs to an empty text file.” [Louis Srygley]

  13. #13
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 159
    Points : 37
    Points
    37
    Par défaut
    Citation Envoyé par Moez.B Voir le message
    Salut , béh , j'estime que c'est une StringGrid: même chose, le composant stockant des strings doit être redéfini .. pas facile la migration !
    oui c'est un StringGrid mais j'ai testé et testé rien il n'affiche pas que des petite carreaux par contre quand c' un nombre la il affiche

  14. #14
    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 445
    Points
    28 445
    Par défaut
    comme expliqué plus haut tu dois faire la conversion ANSI/UNICODE en lecture et en écriture de tes fichiers

    exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    var
      str: AnsiString;
    begin
      str :=  MainProgram.Name; // conversion Unicode vers Ansi
      WriteLn(NW_SIDS, Str, ....);
    end;
     
    // en lecture
     
    var
      str: AnsiString;
    begin
      ReadLn(NW_SIDS, Str, ....);
      MainProgram.Name := Str; // conversion Ansi vers Unicode
    end;
    sauf si tu désires convertir le fichier en Unicode évidemment, mais tu as probablement besoin de relire des fichiers qui ont été créés en ANSI avec Delphi 7
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  15. #15
    Nouveau membre du Club
    Inscrit en
    Août 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 159
    Points : 37
    Points
    37
    Par défaut
    oui mais pour la StringGrid ça ne marche pas

  16. #16
    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 445
    Points
    28 445
    Par défaut
    Citation Envoyé par Night_Wolf1619 Voir le message
    oui mais pour la StringGrid ça ne marche pas
    as-tu vérifié le contenu des tes fichiers ? s'il contiennent de l'ANSI que tu lis en Unicode ou inversement, la StringGrid (Unicode) ne risque pas d'afficher une information cohérente.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

Discussions similaires

  1. des erreurs dans la compilation(la bibliothèque IPL98)
    Par hanou88 dans le forum C++Builder
    Réponses: 2
    Dernier message: 28/05/2011, 18h46
  2. [EasyPHP] une erreur quand j'ouvre mon dossier : il m'est demandé de modifier register_globals
    Par sasaas dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 10/05/2007, 16h34
  3. Erreur quand je ferme mon Quick Report
    Par ndsaerith dans le forum Delphi
    Réponses: 1
    Dernier message: 03/01/2007, 11h50
  4. Fenêtre modale Erreur au lancement de mon application
    Par James_ dans le forum C++Builder
    Réponses: 4
    Dernier message: 29/06/2006, 08h30

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