Sauvergarde de variable

FaustVII Messages postés 13 Date d'inscription mercredi 4 décembre 2002 Statut Membre Dernière intervention 28 décembre 2004 - 8 déc. 2002 à 23:41
jayrock Messages postés 24 Date d'inscription vendredi 10 mai 2002 Statut Membre Dernière intervention 13 avril 2003 - 21 déc. 2002 à 18:48
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

Bruto Messages postés 214 Date d'inscription jeudi 21 mars 2002 Statut Membre Dernière intervention 14 mai 2004
9 déc. 2002 à 10:18
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
0
FaustVII Messages postés 13 Date d'inscription mercredi 4 décembre 2002 Statut Membre Dernière intervention 28 décembre 2004
9 déc. 2002 à 18:01
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)
0
jayrock Messages postés 24 Date d'inscription vendredi 10 mai 2002 Statut Membre Dernière intervention 13 avril 2003
21 déc. 2002 à 18:48
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
0
Rejoignez-nous