Sauvergarde de variable

Signaler
Messages postés
13
Date d'inscription
mercredi 4 décembre 2002
Statut
Membre
Dernière intervention
28 décembre 2004
-
Messages postés
24
Date d'inscription
vendredi 10 mai 2002
Statut
Membre
Dernière intervention
13 avril 2003
-
je voudrai simplement savoir comment modifier une variable lors de l'execution d'un programme pour qu 'elle garde la meme valeur si je quitte et relance le programme.
merci d avance :)

3 réponses

Messages postés
214
Date d'inscription
jeudi 21 mars 2002
Statut
Membre
Dernière intervention
14 mai 2004

En fait il suffit d'utiliser soit la base de registre soit un fichier Ini.

1 - Ex Fichier Ini:
--------------------

[Sauve]
variable1=15
variable2=Bruto

Dès lors il suffit de récupérer la valeur de la variable1 & la charger dans ton programme.

2 - Base de registre :
-------------------------

Même principe mais un plus caché car si quelqu'un trouve ton fichier Ini, il peut facilement changer les données. Pour voir cette base de registre :
Dans la boîte d'exécution ( démarrer\exécuter ) tape regedit.

Maintenant je ne sais pas comment on fait en C#, je suis prog Delphiste. Normalement des routines doivent être tout faite pour faire cela. par exemple :
WriteString('Sauve', 'Variable2', 'Bruto');
A toi alors de rechercher des infos soit sur les fichiers ini ou sur la base de registre

;) Bruto --- Le p'tit belge --- pour vous servir
Messages postés
13
Date d'inscription
mercredi 4 décembre 2002
Statut
Membre
Dernière intervention
28 décembre 2004

je te remerci bruto pour ta reponse mais malheuresement je debute et pour le fichier ini, je ne sais absolument pas comment recupere dans mon programe.
merci a la personne qui repondra a ce message(avec si possible une explication pas trod compliquer)
Messages postés
24
Date d'inscription
vendredi 10 mai 2002
Statut
Membre
Dernière intervention
13 avril 2003

En C# pour utiliser la base de registre tu procèdes ainsi :

using Microsoft.Win32;
....
// Ouverture de la clé
private void ouvrirRegistryKey()
{
rk=rkcu.OpenSubKey(nom_de_ta_clé,true);
if(rk==null)
{ // la clé n'existe pas, on la crée et on l'ouvre
rkcu.CreateSubKey(nom_de_ta_clé);
rk=rkcu.OpenSubKey(nom_de_ta_clé,true);
}
}

// Variable AnnuaireFile
public string getAnnuaireFile()
{
this.ouvrirRegistryKey();
object o=rk.GetValue("AnnuaireFile");
if(o==null)
{
rk.SetValue("AnnuaireFile",opt.baseAnnuaire);
return opt.baseAnnuaire;
}
else return o.ToString();
}

public void setAnnuaireFile(string filename)
{
this.ouvrirRegistryKey();
rk.SetValue("AnnuaireFile",filename);
}

Dans cet exemple j'ai créé une clé, puis des valeurs. Le premier void get...() sert à lire la valeur, set à affecter la valeur. Comme j'ai mis ça dans une classe, ces void sont publics de manière à pouvoir être accéder depuis l'extérieur ...
Bonne chance !

jayrock