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

Lazarus Pascal Discussion :

Problèmes avec la réalisation d'un package exécutable [Lazarus]


Sujet :

Lazarus Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 206
    Par défaut Problèmes avec la réalisation d'un package exécutable
    Bonjour,

    Je viens de terminer l'actualisation d'un logiciel sous Lazarus (version 1.0.14) en y ajoutant un nouveau module d'affichage des données de tables SQLITE à l'aide d'un DBStringGrid.
    Bien sûr, j'ai ensuite créé un exécutable et un package d'installation (Innosetup compiler version 5 en freeware) comme je l'avais fait pour les versions précédentes. Tout se passe normalement sauf que :
    si j'installe ce package sur l'ordinateur où j'ai développé le logiciel sous Lazarus tout est OK
    si j'installe ce package sur un autre ordinateur qui n'a pas Lazarus installé (W7 ou W8), ordinateurs qui ont Avaast (freware) comme antivirus, l'installation du package se fait à la condition de désactiver Avaast pendant l'installation mais, lorsque je veux faire fonctionner le logiciel, la "roue d'attente" fonctionne pendant quelques secondes et aucune fenêtre ne s'ouvre
    Si je tente, sur ces mêmes ordinateurs, l'installation de l'ancienne version du logiciel tout se passe normalement
    J'ai repris plusieurs fois les processus de compilation et d'installation maus rien n'y fait.
    La seule différence entre l'ancienne et la nouvelle version est l'utilisation d'un DBStringGrid que je n'utilisais pas avant. Les autres composants ajoutés sont un groupe Radio et une RTedit ainsi qu'un bouton de lancement en plus de ceux déjà utilisés dans l'interface du logiciel.
    Une idée, un problème déjà rencontré ?

    Merci d'avance

  2. #2
    Rédacteur

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Billets dans le blog
    84
    Par défaut Trop de facteurs...
    Bonjour,

    Il faudrait donner des renseignements plus précis... ou moins confus, au choix. Ou alors, je ne suis pas très malin

    A la description du problème, on a l'impression qu'il s'agit d'une tentative d'écriture dans un répertoire protégé de W7 ou W8. D'où ma question : où ce logiciel s'installe-t-il ? Question subsidiaire : où les fichiers manipulés par la "DBStringGrid" (?) sont-ils placés ?
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  3. #3
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 786
    Par défaut
    Bonjour,
    Citation Envoyé par gvasseur58 Voir le message
    Il faudrait donner des renseignements plus précis... ou moins confus, au choix. Ou alors, je ne suis pas très malin
    On sera deux alors !

    Les noms des types de composants sont approximatifs :
    Je ne connais pas les DBStringGrid, les TStringGrid ou les TDBGrid, oui.
    Je ne connais pas les RTEdit, les TEdit oui.

    Ensuite, votre installeur fournit-il :
    • la dll de sqlite ?
    • la base de données associée ?

    Votre application ne traite-t-elle pas silencieusement certaines erreurs ?
    Les chemins d'accès sont relatifs ou absolus ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 206
    Par défaut Quelques précisions a/s problème lié à l'éxécutable
    Bonjour à tous,
    Peut-être me suis-je mal exprimé. Il s'agit d'un composant TDBGrid qui fait aprtie intégrante du programme et qui est hébergé dans une des feuilles du programme. La dll Sqlite3.dll est située dans le sous répertoire qui contient le programme qui lui-même est décompressé, en cliquant sur le l'exécutable du fichier d'installation généré par InnoSetup Compiler dans le répertoire : C:/program Files (x86) sous le nom LazACG soit :
    C:\Program Files (x86)\LazACG\LasACG.exe .
    Les tests du programme sous Lazarus et sa compilation sous Lazarus se déroulent sans aucun problème.
    Si je lance l'utilitaire d'installation sur la même machine où j'ai développé mon programme cela fonctionne très bien. Si je lance ce m^me utilitaire sur une autre machine (elle aussi sous W7) l'installation dans le répertoire C:\Program Files (x86)\LazACG\... se fait aussi sans problème, l'icône au niveau du bureau est créée mais si je tente de faire fonctionner ce programme, la fenêtre du programme ne s'ouvre pas. Les fichiers de base de donnée créés en utilisant le programme sont ceux localisés où l'on souhaite sur l'ordinateur (dans mon cas : D:\gene\Mabase.db3)
    Cela m'empêche donc de mettre mon programme à la disposition des autres.
    Je précise aussi qu'après la fermeture le programme semble considéré comme actif car je je veux supprimer un des fichiers du répertoire ..\LazACG\ ou ce répertoire lui-même j'ai un message d'alerte " occupé par un autre processus" qui s'affiche. ce qui doit venir d'un défaut de fermeture de certains processus ou feuilles en préalable à la sortie du programme mais n'est certainement pas lié au problème d'installation de l'éxécutable de diffusion du logiciel.
    Depuis la mise en ligne de cette discussion j'ai réalisé un autre programme pour lequel j'ai exactement le même problème. dans ce dernier programme je n'utilise pas de TDBGRID mais simplement un TGrid . Pour ma part je penche vers un défaut de paramétrage du projet dans l'opération de choix des options en préalable à la compilation du programme avec un oubli de prise en compte de certaines options de Lazarus, mais je n'en sais vraiment trop rien.
    Je précise que j'ai déjà compilé des programmes et créé des exécutables avec Lazarus et que cela fonctionnait bien, c'est à dire que j'ai pu fournir à mes interlocuteurs des exécutables qui leur permettait de travailler et de sous XP , W8 ou W7.
    J'espère avoir un peu précisé le problème

  5. #5
    Rédacteur

    Avatar de gvasseur58
    Homme Profil pro
    Cultivateur de code (bio)
    Inscrit en
    Février 2013
    Messages
    1 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Cultivateur de code (bio)
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2013
    Messages : 1 436
    Billets dans le blog
    84
    Par défaut
    Citation Envoyé par OR34a Voir le message
    Les fichiers de base de donnée créés en utilisant le programme sont ceux localisés où l'on souhaite sur l'ordinateur (dans mon cas : D:\gene\Mabase.db3)
    Petite question : c'est bien le programme qui crée cette base et non l'installateur ?

    Si oui, il faudrait à mon avis isoler le problème en créant une micro-application avec seulement la TDBGrid et essayer d'accéder aux données avant et après installation

    Citation Envoyé par OR34a Voir le message
    Depuis la mise en ligne de cette discussion j'ai réalisé un autre programme pour lequel j'ai exactement le même problème. dans ce dernier programme je n'utilise pas de TDBGRID mais simplement un TGrid .
    Cette remarque est plus inquiétante/intéressante : elle indique qu'il s'agit plutôt d'un problème d'utilisation de la Grid...
    .Une portion de code serait sans doute éclairante en cas d'échec afin de mieux comprendre ce qui se passe.

    Bon courage,
    Gilles
    Accès à mon site et à mon blog. Actualités, cours et ressources Delphi, Lazarus et Pascal.
    Pensez à la balise - Quelqu'un vous a aidé ou vous appréciez une intervention ? Pensez au

  6. #6
    Expert confirmé
    Avatar de Ph. B.
    Homme Profil pro
    Freelance
    Inscrit en
    Avril 2002
    Messages
    1 786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Avril 2002
    Messages : 1 786
    Par défaut
    Citation Envoyé par OR34a Voir le message
    Les tests du programme sous Lazarus et sa compilation sous Lazarus se déroulent sans aucun problème.
    Reste à tracer son exécution une fois installé.
    Mais avant il faudra ajouter de quoi tracer cette exécution par affichage de messages ou enregistrement de la progression de l'exécution (démarrage, connexion, ouverture de l'ensemble de données alimentant la grille, arrêt) dans un fichier...

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 206
    Par défaut a/s Problème executable - suite
    Bonjour,

    Suite à la suggestion de Gvasseur, j'ai construit une toute nouvelle application dans laquelle j'ai simplement mis un Label, j'y ai ensuite rajouté un StrinGrid et les résultats ont été les suivants :
    Type Compil et exe Poste Laz Fonctionnement Autre instal Autre Fonctionnement
    Label OK OK OK OK
    Label et StrinGrid OK OK OK NON

    Si, après avoir lancé le logiciel sur le poste non lazarus, je passe la souris sur la barre des taches où s trouve l’icône du logiciel je vois en transparence (W7) la feuille de l'application avec son stringGrid mais elle ne s'ouvre pas à l'écran. Dans un autre logiciel j'avais placé un DBStringGrid sur une autre feuille que celle qui apparait à l'écran et il se lance sans problèmes.
    Je pense qu'il doit y avoir un problème à la compilation ou que, pour l'éxecutable je ne prend pas en compte des librairies ou un paramtrage du StrinGgrid ce qui empêche l'ouverture ou la création de la feuille de lancement. Peut-être en installant la dernière version de Lazarus (1.2.6) mais cela demande un assez gros travail de remise en place des composants additionnels et en particulier ZEOS.

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

Discussions similaires

  1. problème avec la fonction latex() du package R Hmisc
    Par naima.oumouhou dans le forum R
    Réponses: 0
    Dernier message: 02/03/2011, 11h26
  2. Java Beans : problème avec l'instance ou le package
    Par Baratribord dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 29/05/2008, 16h18
  3. Réponses: 6
    Dernier message: 22/01/2007, 11h43
  4. [ Débutant ] Problème avec un package
    Par counet dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 31/10/2005, 15h00
  5. Réponses: 1
    Dernier message: 30/09/2005, 10h46

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