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 :

Erreur fatale ligne trop longue


Sujet :

Delphi

  1. #1
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 202
    Points : 91
    Points
    91
    Par défaut Erreur fatale ligne trop longue
    Bonjour,

    je croyais avoir déjà vu toutes les erreurs possibles et imaginables depuis que j'utilise Delphi. Mais non, il y en a toujours d'autres en réserve.
    Voilà, j'ai une application qui se compile bien, qui s'execute bien. Tout va bien.
    Jusqu'au jour où il faudrait ajouter un TButton et quelques lignes de code ultra simple.
    C'est là que ça se gâte. Rien que d'ajouter sur Form1 un Tbutton, il y a erreur à la complilation.
    A la place du TButton, j'ai essayé d'ajouter un TLabel, ou un autre composant. Toujours erreur.
    Si j'enlève le composant supplémentaire, la compilation marche à nouveau.
    Le message d'erreur est :
    [Erreur fatale]Unit1.pas[1468]: Ligne trop longue [plus de 1023 caractères]
    La ligne signalée n'est pas du tout au niveau des quelques lignes très courtes qui viennent d'être ajoutées. Elle se trouve n'importe où dans le programme, à un endroit qui n'a pas été modifié et qui marchait bien avant (et qui n'est pas du tout une ligne longue)

    C'est peut-être une allocation insuffisante. Mais la quelle ?
    Avez-vous une petite idée qui me mettrait sur la voie?

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 455
    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 455
    Points : 24 867
    Points
    24 867
    Par défaut
    Citation Envoyé par JJJJJ Voir le message
    je croyais avoir déjà vu toutes les erreurs possibles et imaginables depuis que j'utilise Delphi. Maix non, il y en a toujours d'autres en réserve.
    Lol, moi aussi j'ai découvert récemment que le nom d'une classe dans une DFM est limité à 63 caractères fallait le trouver dans l'aide de IsValidIdent

    Vérifie la DFM, cela peut aussi venir d'elle ! à la la 1468 de la DFM et non du PAS !
    Vérifie tes CR+LF dans ton fichier PAS et DFM
    As-tu du TListView ou TTreeView ?

    J'avais eu ce message en déclarant une constante chaine (en réalité une concaténation de 4 chaines)

    C'est un vieux Delphi vu la forme du message ?
    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 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
    tu peux faire une copie du code autour de la ligne 1468 ?

  4. #4
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 202
    Points : 91
    Points
    91
    Par défaut
    Tout d'abord, merci d'avoir répondu à ma demande.

    - Oui, c'est un vieux Delphi 4.
    - Il n'y a pas de TListView ni de TTreeView dans le code.
    - La ligne 1468 dans la DFM tombe en plein dans une picture.data, donc rien à en tirer. Voilà les lignes 1467 à 1470 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
          FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFCFCFC
          FCF9F9FBF9FBFFA5AEBD1A273C1C304B192D4C2539571E30492B384D1D2535D9
          E0E4FFFFFFFCFBFBFDFDFDFCFCFCFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
          FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
    Si je mets un second Tbutton (ou un Tlabel par exemple), l'erreur passe à 1469.
    Si je mets un troisième Tbutton, l'erreur passe à 1470.

    Pour ce soir, je sature et demain impossible de travailler à ce problème.
    Je vais être obligé de laisser provisoirement la question en attente.

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 455
    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 455
    Points : 24 867
    Points
    24 867
    Par défaut
    Lors d'un ajout d'un contrôle, cela n'ajoute qu'une seule ligne ! OK ça c'est dans le PAS !
    Fait voir les 10 lignes autour !
    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

  6. #6
    Membre chevronné
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 262
    Points : 1 928
    Points
    1 928
    Par défaut
    Bonjour,

    Je te propose une autre piste bien plus basique : celle de réaliser un copier/coller de TOUT le code de ta fiche vers...

    http://www.developpez.net/forums/d19...gnes-decalees/
    (Voir surtout vers le bas du thread)

    J'espère que ce sera pour toi une bonne piste.

    @+

  7. #7
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    202
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 202
    Points : 91
    Points
    91
    Par défaut
    Merci Droïde Système7
    entre-temps, en farfouillant sur le WEB, javais trouvé ceci :
    Re:Fatal Error: Line too long?
    Hi,
    I copied and pasted the file in MS Excel and my code was spread on 8
    columns...!!
    I concatenated the columns and paste the code into Delphi and it is working
    again.
    I don't know what happened there because I just copied and pasted from
    within Delphi (from 1 unit to another) in the first place.
    Weird.
    C'est ce que j'ai fait et ça marche. Ensuite, après l'ajout du TButton et du code, il n'y a pas eu d'erreur à la compilation.
    Bien sûr, on peut faire la même chose avec WordPad, ou autres.
    En fait, ShaiLeTrol avait raison de suggérer :
    Vérifie tes CR+LF dans ton fichier PAS
    Merci à tous.

  8. #8
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    Ca m'est déjà arrivé, j'avais galéré pour trouver pourquoi, et en regardant dans Notepad++ (avec "Afficher tous les caractères") j'avais remarqué les fins de lignes différentes (CR+LF ou CR), que j'ai corrigé en supprimant les fins de lignes et en les refaisant.
    Et j'ai trouvé comment ces retour sont arrivés dans mon fichier, ça venait d'un copié/collé depuis notepad. Quand l'option "retour automatique à la ligne" est actif, les retours réels sont des CRLF, et ceux ajoutés automatiquement sont des CR !!!

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

Discussions similaires

  1. Réponses: 28
    Dernier message: 17/10/2015, 12h24
  2. [OSQL] Problème ligne trop longue ?
    Par Cyborg289 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 26/04/2007, 16h52
  3. Paradox7 probleme ligne trop longue
    Par Bloodyroots dans le forum Bases de données
    Réponses: 2
    Dernier message: 30/08/2006, 06h33
  4. ligne trop longue
    Par joecool2005 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/01/2006, 20h29
  5. [TP]Probleme de ligne trop longue
    Par poppels dans le forum Turbo Pascal
    Réponses: 4
    Dernier message: 24/09/2004, 06h36

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