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

Langage Delphi Discussion :

[D7] taille max de l'exe


Sujet :

Langage Delphi

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2002
    Messages : 4
    Points : 3
    Points
    3
    Par défaut [D7] taille max de l'exe
    Bonjour
    je ne sais pas si je suis ds le bon thread, merci de la bouger le cas echeant.

    ma question peut se résumer simplement à
    "y'a t'il des limites en terme de taille de code, nb de form avec Delphi 7 ?"

    pour entrer + dans le détail,
    je bosse sur une appli qui pèse autour de 7mo (exe), 70 forms (8 mo), et code (1.5 mo). ça tourne sur 2k, xp, vista, seven.
    J'envisage de revoir l'architecture et découper en exe et/ou dll.
    Coté développement, il y a qques grosses unit qui deviennent lourdes mais plus au niveau évolution que maintenance.
    Pour l'utilisateur ça reste assez fluide sur une machine moyen de gamme, demarrage un peu lent 15 à 18 sec; mais bon 1 à 2 fois par jour c'est pas la mort.

    j'aimerais avoir qques avis et comparer avec vos applis ...

    thomas

  2. #2
    Membre éclairé Avatar de Kaféine
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    569
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 569
    Points : 736
    Points
    736
    Par défaut
    salut,

    je bosse sur une appli qui pèse autour de 7mo (exe), 70 forms (8 mo), et code (1.5 mo).
    j'ai bossé sur des applications beaucoup plus grosse...sans problème.
    Aprés pour économiser les ressources il y a beaucoup de techniques, par exemple ne creer les forms que lorsque on l'utilise.

    Splitter l'application pour la rendre modulaire reste interessant pour plein de raison que j'enumerais pas ici.

    demarrage un peu lent 15 à 18 sec
    Oui ca va, au pire tu colle un beau SplashScreen

  3. #3
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 674
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 674
    Points : 7 061
    Points
    7 061
    Par défaut
    Citation Envoyé par Kaféine Voir le message
    par exemple ne creer les forms que lorsque on l'utilise.
    J'ai également fini par faire ça aussi, et depuis ça va beaucoup mieux.

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2002
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    bonjour et merci pour vos reponses; donc en gros j'ai largement de la marge.
    On ne crée et charge que les form necessaires;
    et au demarrage j'ai un splashscreen et une progress bar.

    Kaféine, j'aimerais bien justement qques avantages de "splitter''

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 586
    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 586
    Points : 25 262
    Points
    25 262
    Par défaut
    Je dois avoir une application qui doit bien être 2 fois plus grosse (15 Mo) ... le temps démarrage est lié à l'ouverture de la base de données, ... évidemment, cela n'ouvre qu'une seule fenêtre au démarrage (plus celle de login) ... et ça prend pas plus de 10 secondes ... tu dois avoir une tache lente, ...

  6. #6
    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
    actuellement je bosse sur une appli Delphi 5 de 28Mo

  7. #7
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    salut,
    15 à 18 sec c'est génant pour le client.
    j'ai une application de 12mo et le temps démarrage est lié au démarrage et au traitement que j'effectue sur la base de donnée(mise à jour) et ça prend 6 à 7 secondes.le truc c'est d'ajouter un splash screen et faire les operations que tu souhaites.j'ai testé cette application sans le splash et ça prend 30secondes!!.bonne chance

  8. #8
    Membre éclairé Avatar de Kaféine
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    569
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 569
    Points : 736
    Points
    736
    Par défaut
    Citation Envoyé par NABIL74
    salut,
    15 à 18 sec c'est génant pour le client.
    j'ai une application de 12mo et le temps démarrage est lié au démarrage et au traitement que j'effectue sur la base de donnée(mise à jour) et ça prend 6 à 7 secondes.le truc c'est d'ajouter un splash screen et faire les operations que tu souhaites.j'ai testé cette application sans le splash et ça prend 30secondes!!.bonne chance
    C'est un splashscreen magique?
    Comment un splash peut influer sur le temps d'execution de requête SQL.
    Quand je parlais de splash c'etait purement esthétique, l'utilisateur vois un splash avec une progressbar de chargement par exemple, plutôt que rien du tout.


    Citation Envoyé par thomas3133
    Kaféine, j'aimerais bien justement qques avantages de "splitter''
    Ca permet par exemple à l'utilisateur final de charger seulement les modules dont il a besoin.
    Ou encore un même module peut être utilisé par plusieurs applications.
    Lors des mise à jour chez le client, il suffit d'envoyer simplement les modules modifiés et pas toute l'application....
    Pour une application de 7 mo, le split n'est pas necessaire a mon sens, c'est interessant pour les grosses applications.

    A mon avis tu devrais plutôt revoir les "grosses unités qui deviennent lourdes" afin de les splitter et chercher à eventuellement factoriser le code, au lieu de te prendre la tête à splitter en package (ou dll)

  9. #9
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    salut,
    Kaféine je n'ai pas dit que le splash fait le traitement de code et influence un Query,je voulais dire que au moment qu'on affiche ce splash, on peut effectuer des operations de code(mise à jour des données,...).si thomas3133 a des traitements de code à faire à l'ouverture de son application,il pourra les mettre dans un splash:il place par exemple sa Database, le query et son code dans le splash(qui va le chronometrer à 5 sec ou ...) et en ouvrant son application,le splash se lance et ses traitements de code seront executer.ceci dit une diminution du temps de l'apparition de sa fiche principale.

  10. #10
    Membre éclairé Avatar de Kaféine
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    569
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 569
    Points : 736
    Points
    736
    Par défaut
    Ha ok...

    on est d'accord alors, en fait pendant le chargement de l'application (ou comme tu dis lors d'un traitement au chargement), on affiche le splash.

    Dommage j'aurais préféré un SplashScreen magique

  11. #11
    Membre confirmé
    Homme Profil pro
    Enseignant
    Inscrit en
    Août 2008
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 666
    Points : 643
    Points
    643
    Par défaut
    re
    ok nous nous sommes compris Kaféine.reste alors à thomas3133 de nous confirmer ce truc et s'il pourra l'aider.
    eh oui dommage pour nous tous, il n'y a pas de SplashScreen magique
    au plaisir

  12. #12
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2002
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    en fait le temps de demarrage n'est pas un pb
    le + gros du temps de demarrage est passé ds la création du datamodule DATA et un autre pour les rapports (reportbuilder);

    je vais effectivement commenencer par découper ça et delayer leur création

    ensuite suivre le conseil de Kaféine et splitter les grosses unitées

    merci à tous

  13. #13
    Membre régulier Avatar de khaled-benloucif
    Inscrit en
    Octobre 2008
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Octobre 2008
    Messages : 74
    Points : 77
    Points
    77
    Par défaut
    J'ajoute une petite remarque:
    le + gros du temps de demarrage est passé ds la création du datamodule DATA et un autre pour les rapports (reportbuilder);
    si votre DataModule prend tout ce temps de création c'est que probablement vous êtes en train d'ouvrir (propriété Active= true) tout les objets source de données (Tables, Querys ...etc.) en plus de connexions du ReportBuilder vers ces derniers.

    tente de fermer tes Tables et de les ouvrir au moment d'afficher les Fiches correspondantes, pareil pour les Querys et les états de sortie.

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/04/2005, 11h19
  2. Réponses: 5
    Dernier message: 28/10/2004, 15h22
  3. [JTextFiled]Mettre une taille max à la saisie
    Par mush_H dans le forum Composants
    Réponses: 13
    Dernier message: 29/07/2004, 11h22
  4. Taille Max que peux gerer un serveur SQL
    Par Youssef dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/07/2004, 11h52
  5. taille max du nom d'un champ
    Par hna dans le forum Paradox
    Réponses: 2
    Dernier message: 28/07/2002, 02h40

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