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 :

Problème de Compilation avec Delphi 2009


Sujet :

EDI Delphi

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 34
    Points : 17
    Points
    17
    Par défaut Problème de Compilation avec Delphi 2009
    Bonjour,

    J’ai un petit souci avec Delphi 2009. Détails :
    -J’ai ajouté des TLabels dans une fenêtre mais quand je compile, ils n’apparaissent pas. Pourtant visible est à true.
    -Le plus étrange est qu’ils apparaissent si je construits le projet au lieu de le compiler.
    -Si je recompile par derrière, ils disparaissent…

    Jusqu'à présent, la compilation suffisait !
    Est-ce lié à la taille du projet ? (Total ligne de construction : 451000)
    Que faire pour que la compilation resuffise ?
    Merci

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 712
    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 712
    Points : 25 598
    Points
    25 598
    Par défaut
    Vérifie les chemins des DFM !

    Un collègue avait plusieurs fois le même nom de DFM dans plusieurs répertoires, il avait effectivement un comportement proche du tient !
    Cela ne lui incluait pas correctement les DFM hérités (héritage de TFrame et de TForm)

    C'était en C++Builder2007 mais ton problème est tellement proche !

    Pense que tu peux ouvrir l'EXE avec UltraEdit par exemple, la DFM est un binaire mais globalement lisible

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ÿ..TFORM1.0.....TPF0.TForm1.Form1
    une fois cela trouvé, tu pourras chercher tes différents labels !
    Tu peux aussi enregistrer ton DFM dans l'IDE en mode Binaire, compare le contenu de l'EXE et ton DFM, si différent, c'est qu'il y a un problème de chemin des ressources !

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 34
    Points : 17
    Points
    17
    Par défaut
    En effet il est possible que j’ai des problèmes avec mes DFM mais je ne sais pas comment les corriger.

    J’ai fais une copie de mon dossier et maintenant, dans l’arborescence des fichiers, j’ai une fiche *.pas qui se retrouve sans *.dfm associé alors qu’avant il en avait un mais je n’arrive pas à lui en associer un.

    Comment faire ?

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 712
    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 712
    Points : 25 598
    Points
    25 598
    Par défaut
    Tu dois nettoyer tes sources effectivement, le lien PAS et DFM en Delphi7 c'était dans le DPR (le commentaire à côté du in était utilisé par le gestionnaire de projet) et le {$R *.DFM}

    En Delphi2009, cela ne doit pas être aussi simple que de modifier le DPR, est-ce comme en C++ avec le fichier bdsproj ou cbproj qui contient un XML ?
    Le plus simple, tu retire l'unité du projet, tu regroupes PAS et DFM dans le même répertoire et tu ajoute l'unité au projet, il devrait retrouver ses petits !

    Tant que tu ne retrouves pas les DFM des PAS, tu ne pourras pas aller plus loin, ces fichiers doivent trainer quelques part !

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 34
    Points : 17
    Points
    17
    Par défaut
    J’avais déjà essayé de supprimer l’unité et de la rajouter mais ca n’avais pas fonctionné.

    Par contre, j’ai modifié le *.dpr et maintenant le *.pas a bien son *.dfm
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // Avant modif
    Unit inUnit.pas’
    // Après modif
    Unit inUnit.pas’ {Form}
    Mais malgré le fait que mon *.pas ait enfin retrouvé son *.dfm, j’ai toujours le même problème lors de la compilation !

  6. #6
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 34
    Points : 17
    Points
    17
    Par défaut
    J’ai le même genre de problème (en pire) sur une autre unité :
    -j’ajoute un composant, je le retrouve bien dans mon *.pas mais quand je compile (même chose quand je construis), mon nouveau composant est manquant.
    -si je modifie ses propriétés dynamiquement (ex : Visible := true), j’ai un message d’erreur :
    -En pas à pas, j’ai le composant qui est ‘’nil’’. Donc visiblement mon composant n’est pas créé !!!


    Si ça peux aider à cibler l’erreur :
    -je retire l’unité du projet
    -je le rajoute à nouveau
    => mon *.pas n’as plus de *.dfm associé !!!

    -je remets le *.dfm en place dans le *dpr
    => Ca ne marche toujours pas

    -je fais ''Enregistrer sous...''
    => il m'enregistre bien mon *.dfm avec mon *.pas

  7. #7
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 34
    Points : 17
    Points
    17
    Par défaut
    Nouveaux tests :

    J’ai rouvert une ancienne copie de sauvegarde du projet.
    => Si je rajoute un composant : ca fonctionne.

    Je copie l’unité à la place de celle en place dans la dernière version (copie de tous les fichiers de l’unité)
    => Ca ne fonctionne pas

    Je renomme mon *.pas et ma Form
    => Tout fonctionne correctement

    J’ai comparé les options des deux projets mais je n’ai pas vue de différences.
    Y-a-t-il une propriété qui influence les *.dfm ?
    Peut-on voir quelque part où delphi (2009) va chercher les *.dfm associés aux *.pas ?
    Y-a-t-il une fonction de delphi permettant de faire le ménage (pointer les mêmes fichiers en conception et en compilation …) ? (L'espoir fait vivre !!)

  8. #8
    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 : 55
    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 457
    Points
    28 457
    Par défaut
    J'ai déjà eu des trucs bizarres avec la complétion de code (Ctrl+Alt+C) ou la sauvegarde qui fait le ménage dans les évènements vides etc...

    c'était lié à l'ajout de fonctions dans la partie implémentation (fonctions de DLL externe) ou la mauvaise position du commentaire { TForm1 } qui précède les méthodes de la fiche.

    je n'ai pas réussi à identifier clairement ce qui lui faisait perdre les pédales, mais j'ai placé mes déclarations externes dans une autre unité et après avoir recréé les évènements tout est rentré dans l'ordre.

    tant que je manipulais et exécutait le projet tout allais bien, mais dès que je le sauvegardais il supprimait toutes les méthodes OnXXX de la déclaration du type TForm1.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2011
    Messages : 34
    Points : 17
    Points
    17
    Par défaut
    Bonjour,

    Je change de boulot donc je n’ai plus accès au problème (non résolu).

    Dois-je clore la discussion ?

  10. #10
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 712
    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 712
    Points : 25 598
    Points
    25 598
    Par défaut
    En même temps, depuis Novembre on avait tous oublié ton problème !
    Là le bouton "Délestage" aurait été utile

Discussions similaires

  1. Problème JvZlibMultiple version 3.36 avec Delphi 2009
    Par rivierebruno22 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 20/05/2009, 10h56
  2. Problème de compilation avec Direct Input
    Par di-giac dans le forum DirectX
    Réponses: 6
    Dernier message: 06/05/2005, 19h19
  3. [MFC] Problème de compilation avec afxctl.h
    Par mick74 dans le forum MFC
    Réponses: 7
    Dernier message: 15/06/2004, 14h51
  4. Problème de compilation avec Dev-C++
    Par Rouliann dans le forum Dev-C++
    Réponses: 14
    Dernier message: 14/06/2004, 19h44
  5. Réponses: 1
    Dernier message: 29/10/2003, 13h16

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