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 :

inno setup et dephi


Sujet :

Delphi

  1. #1
    Candidat au Club
    inno setup et dephi
    bonjour
    j'ai une application delphi faite avec delphi 10 et base de donnee ms access mdb
    voila le probleme c'est quand j'ai compiler avec inno setup j'ai obtenu un executable
    qui ne marche pas dans un autre pc .
    cette application n'utilise pas cette base de donnee
    faut-il utiliser une DLL et comment

  2. #2
    Rédacteur/Modérateur

    Bonjour,

    C'est un peu mélangé tout ça !
    1- Vous avez fait une application Delphi avec une version 10.x (il y a des différences entre les versions 10.0 Tokyo et 10.4 Sidney) qui utilise une base Access
    2- Vous avez fait une programme de distribution (innosetup) de ce programme contenant (entre autre l'application Delphi compilée et la base de données)

    j'ai obtenu un executable qui ne marche pas dans un autre pc .
    Là c'est beaucoup moins clair, est-ce l'installateur qui ne fonctionne pas (je doute) ou le programme déployé ?
    AMHA, il s'agit du programme déployé et deux causes sont possibles :
    1. La plus fréquente, la chaine de connexion à la base de données a été écrite en "dur" dans le programme Delphi sans tenir compte d'une installation différente. Il manque donc un bout de code à la création pour que la chaine de connexion soit créée correctement en fonction de l'installation faite. Cela demande généralement une sorte de fichier ini qui sera modifié par l'installateur (innosetup) afin de mémorisé cette partie.
    2. Access n'est pas installé sur le poste d'installation. Tout le monde n'a pas Microsoft Office, il y a donc question de licence et de déploiement de dll(s) spécifique(s) au moteur de SGBD.
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  3. #3
    Candidat au Club
    bonjour
    je reformule ma demande ,voila j'ai une application delphi faite avec delphi 10.2 rio et base de donnee ms access
    j'ai compiler pour obtenir un executable ,dans un autre pc ou il ya ms access mais pas delphi l'excecutable
    me demande un mot de passe quand j'appuie plusieurs fois il ouvre une application qui n'est pas connecter
    avec la base de donnee ms access.
    SVP comment fonctionne le fichier ini en delphi.
    merci beaucoup.

  4. #4
    Membre émérite
    Bonjour,

    un fichier ini est un fichier txt. On peut l'ouvrir avec Notepad.

    Delphi peut y lire des données du type "Donnee=12345" par exemple, regroupées par section.

    il n'y a rien de particulier pour un exécutable Delphi par rapport à un autre programme exécutable.

    Je pense qu'il faut plutôt suivre les conseils de SergioMaster.

    A+
    Charly

  5. #5
    Rédacteur/Modérateur

    Bonjour,
    Citation Envoyé par aliaccess Voir le message
    dans un autre pc ou il ya ms access mais pas delphi l'excecutable
    me demande un mot de passe quand j'appuie plusieurs fois il ouvre une application qui n'est pas connecter
    avec la base de donnee ms access.
    Parce que en plus il y a une histoire de mot de passe mais de quel mot de passe il s'agit ? Un mot de passe géré par l'application Delphi ou un mot de passe intrinsèque à la base de données ?


    SVP comment fonctionne le fichier ini en delphi.
    La FAQ est là pour ce genre de question.

    Même si vous avez reformulé le problème, vous ne vous êtes pas suffisament penché sur ma réponse
    La plus fréquente, la chaine de connexion à la base de données a été écrite en "dur" dans le programme Delphi sans tenir compte d'une installation différente
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein

    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Tokyo, Rio, Sidney) et peut être quelques autres
    SGBD : Firebird 2.5, 3, SQLite
    générateurs Etats : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Ubuntu, Androïd

  6. #6
    Candidat au Club
    svp
    comment ecrire un fichier ini en delphi pour utiliser la base de donnee
    ms access

  7. #7
    Expert éminent sénior
    Ce n'est pas exactement cela

    Dans InnoSetup, vous devez générer le fichier ini via les paramètres renseignés par l'installateur
    Cela passe par le fichier script section [INI] et des variables

    Le fichier Ini devra être facilement accessible par votre programme, soit dans le même répertoire, soit un chemin système, soit un chemin défini par exemple par la Base de Registre (tiens, tout stocker en BDR est aussi une approche)

    Dans votre projet écrit Delphi, un objet TIniFile vous permettra de lire avec ReadString les valeurs spécifiques à l'installation qui serviront à composer la ConnectionString

    Si vous avez terminé un projet utilisant une DB et nécessitant un installateur, cette étape est particulièrement trivial en Delphi, c'est sur InnoSetup que vous devriez faire un petit effort d'apprentissage de l'outil : https://jrsoftware.org/ishelp/index....pic=inisection
    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

###raw>template_hook.ano_emploi###