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

Outils Delphi Discussion :

[Inno Setup] - ReadIni


Sujet :

Outils Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Par défaut [Inno Setup] - ReadIni
    Bonjour à tous,

    J'utilise dans un projet, un fichier .ini pour indiquer des valeurs (par défaut) de certains paramètres. Permettant ainsi à l'utilisateur de prédéfinir ces valeurs notamment dans le cadre d'une installation silencieuse.

    L'instruction utilisée est la suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define MaVar1 ReadIni('C:\projets\monprojet1.ini', 'section1', 'Variable1', '' )
    je souhaiterai savoir (je n'arrive pas à trouver), s'il est possible d'avoir un chemin relatif, pour ne pas utiliser c:\projets et pour que le setup trouve le .ini dans le même répertoire que lui. J'ai essayé avec {#src} mais sans succès.

    Pourriez-vous m'aider s'il vous plait ? Merci

    P-A

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 932
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 932
    Par défaut
    Tu ne peux pas utiliser le pre-processing pour une installation silencieuse. Il n'est là que pour la compilation du script (En pre-processing, on utiliserait __PATHFILENAME__)

    A l'exécution, regarde plutôt quelque chose comme :

    {ini:{app}\MyProg.ini,Section,Key}
    .

  3. #3
    Membre régulier
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Par défaut
    Bonjour et Merci pour votre réponse.

    Faut-il dans ce cas obligatoirement définir une section [INI] ? Ou bien je peux utiliser une affectation du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MaVar:={ini:{src}{\}'monfichierini.ini','section','clef'} ;
    Merci

  4. #4
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 932
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 932
    Par défaut
    Il faudrait en fait savoir ce que tu veux faire précisément !

    Lire depuis un fichier ini serait logiquement utilisé pour une mise à jour afin de récupérer le setting précédent. (avec la possibilité d'une valeur par défaut si la clé n'existe pas)

  5. #5
    Membre régulier
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Par défaut
    C'est pour faire un setup s'appuyant lors de l'installation sur un fichier contenant des valeurs par défaut que des utlisateurs de différents services pourraient alimenter avec leurs valeurs pas défaut (dans le cadre d'une installation silencieuse ou pas).

  6. #6
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 932
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 932
    Par défaut
    Donc tu es bien obligé de forcer tes utilisateurs à créer ce fichier sous un chemin précis ! Et pour ne pas le répéter, le pre-processing est très bien :
    #define IniFile "C:\projets\monprojet1.ini"
    Et ensuite :

    [Registry]
    Root: HKLM; SubKey: SOFTWARE\MyProg; ValueType: string; ValueName: Nom; ValueData: {ini:{#IniFile},Section,Clé|Défaut}
    ou dans la section [Code] :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure MyProc;
    var
      MyVar1 :string;
    begin
      MyVar1 := GetIniString('Section', 'Clé', 'Défaut', '{#IniFile}');
      ...
    end;

  7. #7
    Membre régulier
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Par défaut
    Haaaa, super, j'étais donc sur la bonne piste.

    on peux donc effectuer la déclaration suivante (chemin relatif) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define IniFile ".\fichier.ini"
    puis dans la section [code]

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MyVar1 := GetIniString('Section', 'Clé', 'Défaut', '{#IniFile}');
    Merci beaucoup Andnotor, cela fonctionne


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

Discussions similaires

  1. [Inno Setup] Recherche de tutoriels
    Par argon dans le forum Autres langages
    Réponses: 5
    Dernier message: 30/01/2006, 19h55
  2. [instalation] Modifier le language d'inno setup ou d'is tool
    Par méphistopheles dans le forum Installation, Déploiement et Sécurité
    Réponses: 2
    Dernier message: 26/01/2005, 21h59
  3. Delphi et inno setup
    Par drakes dans le forum Outils
    Réponses: 10
    Dernier message: 17/09/2004, 10h15
  4. [INNO SETUP][ORACLE] Installer le client Oracle avec Inno
    Par AnnSo dans le forum Bases de données
    Réponses: 11
    Dernier message: 19/08/2004, 16h21
  5. Bde Inno Setup et Test
    Par Fxg dans le forum Bases de données
    Réponses: 2
    Dernier message: 20/07/2004, 14h35

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