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 :

App. qui ne marche pas sur autre pc ou delphi n'est pas installé [FAQ]


Sujet :

Delphi

  1. #1
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2002
    Messages : 726
    Points : 352
    Points
    352
    Par défaut App. qui ne marche pas sur autre pc ou delphi n'est pas installé
    j'ai fait un programme setup avec intallshield.

    et quand j'installe mon programme sur un autre PC à l'exécusion il me signale erreur débordement de la pile
    je tient a vous dire que mon programme gère une base acess (*.mdb)
    comment faire pour que mon programme marche sur un autre PC ?
    merci
    ----------------
    pour le moment je suis obligé d'installer delphi sur chaque machine ou je dois installer mon application, solution bête mais ça marche

  2. #2
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Elle est gourmande en mémoire, ton appli ?
    En gros, que fait ton appli (Base de données seulement, manipulation de fichiers, traitements graphiques...) ?
    L'installes-tu sur un Pc qui possède un OS identique a ton PC de developpement ?
    Comment accède tu à ta base de données ? --> les versions ADO ou microsoft Jet Engine sont elles les mêmes sur les deux PC.

    Aurais-tu oublié un fichier ? Dans ton delphi, dans le menu Projet-->Options-->Paquets, la case "Construire avec les paquets d'éxécutions" est-elle cochée ?
    Bidouilleuse Delphi

  3. #3
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2002
    Messages : 726
    Points : 352
    Points
    352
    Par défaut
    merci por votre réponse,
    les pc on un meme OS identique
    je gère uniquement une base de données access qui contiient des champs texte.

    Comment accède tu à ta base de données ? --> les versions ADO ou microsoft Jet Engine sont elles les mêmes sur les deux PC.
    je ne sais pas comment vérifier ça
    ------------
    dans optios --> paquets, toutes les cases sont cochées
    dans installshield j'azi coché toutes les cases qui se reporte a Access dans la rubrique object/merge modules

  4. #4
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Citation Envoyé par ouldfella
    merci por votre réponse,
    les pc on un meme OS identique
    je gère uniquement une base de données access qui contiient des champs texte.
    Panneau de configuration --> Installation/suppression de programme
    ou bien dans le panneau de configuration de ODBC :
    sous Win9x c'est accessible depuis le panneau de config
    sous XP : Panneau de configuration --> Système --> sources de données ODBC -->pilotes ODBC
    Citation Envoyé par ouldfella
    je ne sais pas comment vérifier ça
    ------------
    dans optios --> paquets, toutes les cases sont cochées
    dans installshield j'azi coché toutes les cases qui se reporte a Access dans la rubrique object/merge modules
    Citation Envoyé par l'Aide Delphi
    Pour distribuer une application utilisant des paquets d'exécution, vérifiez que l'utilisateur dispose du fichier .exe de l'application, ainsi que de toutes les bibliothèques (.bpl ou .dll) appelées par l'application. Si les fichiers bibliothèque sont dans un répertoire différent de celui du fichier .exe, ils doivent être accessibles via les chemins d'accès de l'utilisateur. Vous pouvez suivre la convention consistant à placer les fichiers des bibliothèques dans le répertoire Windows\System. Si vous utilisez InstallShield Express, le script d'installation peut vérifier la présence des paquets nécessaires sur le système de l'utilisateur avant de les réinstaller aveuglément.
    Si j'étais toi, je décocherais la case du bas ("Construire avec les paquets d'execution"), ça se trouve tu as oublié de fournir un fichier BPL ou DCP (ou même tous)
    Bidouilleuse Delphi

  5. #5
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2002
    Messages : 726
    Points : 352
    Points
    352
    Par défaut
    la case Construire avec les paquets d'execution est décochée
    ------------------------
    mais le problème c'est la base Access
    ---------
    vous m'avez dis :
    les versions ADO ou microsoft Jet Engine sont elles les mêmes sur les deux PC.
    comment savoir si elles sont les mêmes ?
    --------------
    je crois que le problème réside dans installshield

    encore merci pour votre contribution

  6. #6
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Les versions des fichiers de pilotes doivent être les mêmes.

    Ou mieux, j'installerais la dernière versions de Microsoft DAO (pas ADO) sur les deux PC. Comme ça, pas besoin de savoir si les versions sont identiques ou non, et si l'exe fonctionne sur l'un, du coup il devrait tourner sur l'autre.

    Une azutre question : passes tu par le BDE (Borland DataBase Engine) ? Si oui, il faut aussi le déployer sur l'autre machine. Il y a un module 'BDE' pour InstallShield pour faire ça...

    Et il faut que le BDE du PC sur lequel tu installes soit correctement configuré.

    Si tu utilises les composants KADAO pour acceder à ta base access, tu n'auras pas besoin du BDE.
    Bidouilleuse Delphi

  7. #7
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2002
    Messages : 726
    Points : 352
    Points
    352
    Par défaut
    oui j'ai dépolye le module DBE sur l'autre machine,
    pour Microsoft DAO, je viens juste d'essayer de l'installer avec installshield (j'ai coché la case DAO360) si il n y a pas d'autres méthode.
    ---
    c'est toujours le même problème

  8. #8
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 53
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Après, je ne vois pas... une erreur de code dans ton programme ? Procedure1 qui appelle procedure1 qui appelle procedure2 ?

    Là je ne vois plus
    Ca me dépasse !

    Sinon, as tu réussis à localiser où l'erreur se produisait ?
    Rajoutes des
    Showmessage('Quelque Chose de parlant : "debut de OnCreate","Fin de Initialise" par exemple');
    ... un peut partout dans ton code, compile, ne prend que l'exe, met le sur la 2nde machine et regarde ce qui se passe, au fur et à mesure d'affinage, tu vas bien finir par arriver à localiser ce qui cloche...
    Bidouilleuse Delphi

  9. #9
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2002
    Messages : 726
    Points : 352
    Points
    352
    Par défaut
    merci quand même pour tes réponses,
    le programme ne contient aucune erreure puisque il fonctionne parfaitement sur ma machine.
    c'est sur une machine ou delphi n'ai pas installé que le problème se manifeste.
    ------
    j'ai deux solution :
    soit je dois installer delphi sur l'autre machine et recompiler mon progrmmae avec
    soit je change ma base de données access par paradox

    encore merci

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2002
    Messages : 89
    Points : 64
    Points
    64
    Par défaut
    J'ai eu le même problème il y a bien longtemps...

    Tu créer un fichier nommé "Test.udl" sur le bureau ou n'importe où.
    Tu doubles cliques dessus et tu choisis dans l'onglet
    N°1 : Microsoft Jet 4.0 OLE DB Provider
    N°2 : Dans connexion tu choisis le chemin de la BDD
    Ensuite tu fais OK

    Edite le fichier UDL et récupère la ligne commençant par "Provider=Microsoft.Jet..." et copie-là dans la propriété "ConnectionString" d'un composant "TAdoConnection"
    Ensuite utilise les composant TAdoQuery pour utiliser ta base Access...

    Inutile de te dire qu'il faut découper la chaine de connexion récupérer ci-dessus pour pouvoir personnaliser le chemin de la BDD...
    Delphi 7 Pro, Visual Basic, Borland C++, WinXP, Win7

  11. #11
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2002
    Messages : 726
    Points : 352
    Points
    352
    Par défaut
    merci chaours,
    mais je ne vois pas l'utilité puisque la ligne existe déjà.
    Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:\bdalioua.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDBatabase Password="";Jet OLEDB:Engine Type=5;Jet OLEDBatabase Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDBon't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False
    j'ai construi toute cette ligne en cliquant sur adoconnectionstring de composant adoconnection1
    -----------
    le programme fonctionne parfaitement sur ma machine
    mais quand je change une autre machine il me signal débordment de la pile
    -----------
    mon problème, je ne sais pas quoi cocher dans la rubrique
    objects/merge modules et ODBC ressources d'Installshield

  12. #12
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

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

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 771
    Points
    2 771
    Par défaut
    essaye:copy simplement l'exe et la base sur l'autre poste (bien sur la base dans le chemain spécifier dans votre exe,si c'est un chemain static)
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

  13. #13
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2002
    Messages : 726
    Points : 352
    Points
    352
    Par défaut
    merci edam,
    ça marche en copiant l'EXE.
    mais je me demande avec l'installation ça ne fonctionne pas ???

  14. #14
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

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

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 771
    Points
    2 771
    Par défaut
    je suis pas sur :
    mais peut etre qu'on tu install, tu met les dll dans le meme repertoir de l'exe, et ces dll en des hic avec ce post , ou tu remplase les dll du pc
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

  15. #15
    Membre averti
    Avatar de delphichem
    Inscrit en
    Octobre 2002
    Messages
    280
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 280
    Points : 338
    Points
    338
    Par défaut
    J'ai déjà eu ce genre de problêmes avec la version de InstallShield commercialisée avec Delphi7, pour cela je suis resté à la version fornit avec Delphi5 qui est a mes yeux trés suffisante et qui surtout produits des fichiers d'installation plus compacte.
    Je te conseille d'utiliser InnoSetup http://www.jrsoftware.org/isdl.php qui est beaucoup plus compacte et qui permet de crééer des .exe trés facilement.

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

Discussions similaires

  1. compil release ne marche pas sur autre pc
    Par Fred44210 dans le forum C++/CLI
    Réponses: 0
    Dernier message: 04/03/2010, 11h01
  2. Réponses: 0
    Dernier message: 15/07/2009, 15h11
  3. CSS input qui ne marche que sur Firefox
    Par DJ Caësar 9114 dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 24/04/2009, 09h41
  4. Code qui ne marche plus sur IE7 Beta
    Par Death83 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/03/2006, 00h15
  5. Acceder a une base SQL qui n'est pas sur le meme serveur
    Par skyo dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/01/2006, 10h58

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