[VC++6/MFC] Facilités pour gérer une configuration, genre fichier ini?

Facilités pour gérer une configuration, genre fichier ini? [VC++6/MFC] - C++ - Programmation

Marsh Posté le 29-07-2004 à 17:42:30    

Salut,
 
Je suis en train de développer une petite appli, et jaimerais sauvegarder dune session sur lautre des parametres de configuration utilisateur.
 
D'ou l'idée dutiliser une fichier .ini.
 
Je compte faire ca sous la forme: Clé/Valeur
 
Existe t il une solution pour faire ca facilement, ou alors dois je tout gérer "a la main"?
 
Enfin, derniere question: comment faire pour avoir le path du fichier exe?
 
Merci.

Reply

Marsh Posté le 29-07-2004 à 17:42:30   

Reply

Marsh Posté le 29-07-2004 à 19:58:43    

Il me semble que ce n'est plus du tout conseillé par Microsoft (code de bnne conduite programmatrice), il faut plutôt passer par la base de registre (en la faisant gonfler encore plus).
 
Sous Win 3.11, je les utilise encore... Pas pro donc pas grave.
 
API GetPrivateProfileInt (ou String) pr lire
    WritePrivatePrfileString pr écrire  
INI peut pas dépasser 64k je crois.
On peut s'écrire ses propres fonctions pour remplacer les API, ça doit pouvoir être optimisé..
 
J'ai une appli pour laquelle, pour gagner du temps (sur 486/33, le INI devenait long à lire), j'ai créé un fichier d'options binaire, avec de la place pour les futures options.
 
 
Pour mettre le INI à l'endroit où est l'appli, j'utilise GetModuleFileName() en C (pas encore ++, ça rentre pas (trop vieux), et pas le temps non plus de m'y mettre).

Reply

Marsh Posté le 29-07-2004 à 20:47:18    

sinon tu peux utiliser aussi un fichier XML pour stocker les paramètres de config


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 29-07-2004 à 21:03:52    

Bon, XML ou INI, peu importe.
 
Je cherche juste a profiter si possible d'une API déja toute faite, car sinon, je vais me coltiner ca a la main... (ce ki nest pas osrcier non plus me direz vous...)
 
Je vaisessayer l'API donnée plus haut, mais je suis étonné que Microsoft n'ait rien prévu???

Reply

Marsh Posté le 29-07-2004 à 21:05:24    

Yoyo@ a écrit :


Je vaisessayer l'API donnée plus haut, mais je suis étonné que Microsoft n'ait rien prévu???


comment ça ils n'ont rien prévu ? :heink:
on t'a marqué plus haut qu'ils recommandaient de passer par la BDR


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 29-07-2004 à 22:34:43    

Bah je sais bien, mais je veux passer par un fichier pour plus de transparence, et aussi pouvoir pour l'User le modifier a la main...

Reply

Marsh Posté le 29-07-2004 à 22:39:36    

ben alors ?
dis pas qu'ils ont rien prévu alors qu'il existe toute une API pour lire les fichiers ini (celle que t'as filé Carbon_14), et une autre API pour lire les fichiers XML


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 30-07-2004 à 01:41:56    

Harkonnen a écrit :

comment ça ils n'ont rien prévu ? :heink:
on t'a marqué plus haut qu'ils recommandaient de passer par la BDR


 
Ce qui est justifié pour les composants système (drivers, etc.) mais qui est totalement stupide pour les applications :cry:


---------------
Un matin je me lèverai et il fera beau.
Reply

Marsh Posté le 30-07-2004 à 07:05:37    

Harkonnen a écrit :

ben alors ?
dis pas qu'ils ont rien prévu alors qu'il existe toute une API pour lire les fichiers ini (celle que t'as filé Carbon_14), et une autre API pour lire les fichiers XML

D'accord, c'est noté.
 
Je ne pensais pas que l'API donnée par Carbon était ce que j'attendais.
 
Je n'ai a vrai dire pas eu le temps d'essayer.
 
Mais ca roule,
 
Merci beaucoup.
 
PS: C'est sur que si tout le monde se met a utiliser la BDR, je comprends pourquoi elles sont si grosses sur nos PC... Je ne trouve pas ca d'une propreté extreme, surtout quand on sait que la plupart des désinstallations ne soccupent qu partiellement de la BDR...

Reply

Marsh Posté le 30-07-2004 à 11:12:28    

faut relativiser... les configs par fichier, c'est bien gentil mais dès qu'on commence à avoir des systèmes multi utilisateurs et multi accès ( 2000 Server / Citrix ), la gestion BDR falicite la tâche...
 
voilà, mes 2 cents d'euro

Reply

Marsh Posté le 30-07-2004 à 11:12:28   

Reply

Marsh Posté le 30-07-2004 à 11:37:13    

Me revoila:
 
Donc, g essayé l'API en question donnée plus haut (ainsi que le GetModuleFilename) et c'est exactement ce que je voulais...
 
Pour la BDR, je suis daccord avec la remarque faite par tyrion42, mais elle ne me concerne pas dans l'immédiat.
 
Merci a vous,
 
:hello:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed