tuss
Messages postés9Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention20 décembre 2013
-
29 mars 2013 à 23:23
tuss
Messages postés9Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention20 décembre 2013
-
2 avril 2013 à 19:27
Bonjour à Tous...
J'ai un petit problème pour lire et écrire des valeurs booleans dans un fichier '.INI' avec DELPHI7.
Je stock dans un fichier 'monfichier.ini' des Strings, Integers, Booleans.
Avec les Strings et les Integers tout marche bien.
C'est avec les Booleans que ça marche pô.
----------
Exemple:
Stocker dans l'.INI l'état d'une Checkbox qui se nomme : ckbTest
j'écrit dans l'.INI :
WriteBool('CheckBox', 'Test', ckbTest.checked);
A l'écriture tout marche bien. Cette routine ce situe dans l'évènement (OnCreate de la fenetre ou se trouve la CheckBox)
je jette un coup d'oeil dans le fichier '.INI' :
[CheckBox]
Test=1
-----------
Lecture du fichier '.INI'
ckbTest.checked:=ReadBool('CheckBox', 'Test', false); // valeur false par défaut
Cette routine ce situe dans l'évènement (OnDestroy de la fenêtre où se trouve la CheckBox)
A l'exécution, j'obtient une erreur 'Access violation at adresse...) et le programme démarre.
A chaque commande de mon programme (clavier, souris), j'obtient toujours cette erreur et le programme continue de fonctionner. Je suis obliger de passer par le gestionnaire de tache pour le fermer.
Si je supprime cette ligne de code, mon programme marche de nouveau sans erreur.
Après lecture et re-lecture de l'utilisation de l'instructione (ReadBool) dans l'aide de Delphi, il me semble que je l'utilise correctement.
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 1 avril 2013 à 17:08
Bonjour,
oui, il faudrait plus de code.
car l'écriture de l'ini sur le OnDestroy n'est pas habituel..
le mieux est de le mettre sur la fermeture de la forme
car il y a souvent plusieurs formes en présence et ceci permet une modification des valeurs
pendant le fonctionnement normal de l'application.
korgis
Messages postés420Date d'inscriptionsamedi 17 mai 2003StatutMembreDernière intervention 6 mai 201917 1 avril 2013 à 09:55
Salut,
Il faudrait plus de code. Apparemment, le problème se situe ailleurs...
A tout hasard, au moment de l'écriture, le path du fichier .ini est-il valide (vérifie quand même !) ?
tuss
Messages postés9Date d'inscriptionmardi 10 octobre 2006StatutMembreDernière intervention20 décembre 2013 2 avril 2013 à 19:27
Hello...
Bon, j'ai creusé l'affaire et j'ai trouvé la (ma) solution.
Après réflexion je me suis dit si l'instruction ReadBool() existe c'est
quelle doit fonctionner et servir à quelque chose.
Mon application n'a qu'une Form et quand je la quitte, Le fichier .INI sert à sauvegarder différents paramètres :
(Position de la Fenêtre, Checkbox, quelques Variables, etc...)
J'ai donc mis ma routine (.INI) dans l'évènement OnClose de la Form et cela fonctionne très bien.