Utilisation du fichier ini

zikem -  
Nessdarth Messages postés 40 Statut Membre -
Bonjour,

J'ai un problème depuis quelques jours qui me tourmente l’esprit.
Mon problème est que je suis entrain de boucler un programme écrit en delphi avec une base mysql qui doit étre mise en réseau. L'ennui est que je cherche un moyen pour enregistrer les données de connexion (Par exemple : hostname,dbname,) de mon composant delphi sqlconnexion dans un fichier(inifile par exemple) que mon composant aura à utiliser pour se connecter à ma BD au chargement de l'application.

Merci pour votre attention.

5 réponses

  1. franckcl
     
    J'imagine qu'il est un peu tard pour répondre mais bon..
    voici un exemple de fonctions qui permetent d'écrire et de lire dans un fichier ini:

    uses system.inifiles;

    Procedure WriteIniFileStr(IniFilename, Section, key, Value: string);
    Var
    ini: TInifile;
    Begin
    ini := TInifile.create(IniFilename);
    ini.WriteString(Section, key, Value);
    ini.UpdateFile;
    ini.free;
    End;

    Function ReadIniFile(IniFilename, Section, key, default: string): string;
    Var
    ini: TInifile;
    Begin
    ini := TInifile.create(IniFilename);
    result := ini.ReadString(Section, key, default);
    ini.free;
    end;


    Sinon pour avoir une réponse plus rapide je te conseille d'aller sur le forum delphi du site developpez.com
    Franck
    1
  2. zikem
     
    Bonjour franckcl

    J'ai continué de fouiller un peu sur le net et avec ton aide qui m'a été vraiment précieuse, j'ai pu intégrer quelques lignes de code à mon programme.

    procedure Tfrmsplash.FormCreate(Sender: TObject);
    var
    FichierIni : TIniFile;
    begin
    FichierIni:=TIniFile.Create('E:\I-Bull_V2.0\Monfichier.ini');
    FichierIni.WriteString('Database','HostName','127.0.0.1'); //Ecrit dans le fichier ini

    dm.SQLConnection1.Params.LoadFromFile('E:\I-Bull_V2.0\Monfichier.ini');
    dm.SQLConnection1.Open;

    FichierIni.Free; //Libère le fichier

    end;

    Sauf qu'en le faisant ainsi, mon problème est presque résolu sauf l'apparition d'un message de violation d'acces mais quand je fait 'OK' le programme s'exécute normalement avec les paramètres de connexion que je lui passe dans mon fichier ini.

    Merci de m'aider.
    0
  3. Nessdarth Messages postés 40 Statut Membre 3
     
    Bonjour,

    Donne le message d'erreur ça peut aider pour comprendre ce qui se passe.
    0
  4. zikem
     
    Bonjour Nessdarth, merci pour votre réponse. Voici donc le message d'erreur

    "Violation d'accès à l'adresse 009255E7 dans le module 'NomProjet.exe'. Lecture de l'adresse 0000000E"

    Mais quand je click sur OK, le programme s'exécute et prend en compte les paramètre du fichier .ini

    Merci pour votre diligence!
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Nessdarth Messages postés 40 Statut Membre 3
     
    je ne pense pas que cela soit lié à l'utilisation du fichier ini, dont le code me semble correcte, ce genre de message survient quand on utilise un objet qui n'est pas initialisé.

    Te reste plus qu'à débugger pour savoir où exactement la violation se produit et quel est l'objet concerné.
    0