Daten dauerhaft speichern / automatisch einloggen
-
Hallo,
in meinem Formular werden Daten eingegeben. Beim Beenden des Programms bzw. schon bei der Eingabe der Daten sollte man eventuell die Daten dauerhaft speichern können, so dass sie beim nächsten Programm start automatisch vorhanden sind.
Ist sowas möglich?http://www.pic-upload.de/view-2202747/daten-speichern.jpg.html
-
indem du sie manuell speicherst und beim Starten wieder lädst?!
greetz KN4CK3R
-
muss ich ne datei erstellen und diese datei wieder beim start lesen??
-
jo
(obwohl Registry auch möglich wäre)
-
das ist bestimmt sehr kompliziert.
gibt es bei borland nicht eine funktion, mit der man das automatisch machen kann?
-
Schau Dir mal die klassen TRegistry und TiniFile an.
So z.B. schreibst Du in die Registry:void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) { TRegistry *Registry = new TRegistry; Registry->RootKey = HKEY_LOCAL_MACHINE; Registry->OpenKey("SOFTWARE", false); Registry->CreateKey("meinprogramm"); Registry->OpenKey("meinprogramm", false); Registry->WriteString("name","meinname"); Registry->WriteString("pass","meinpass"); delete Registry; }
So machst Du das mit einer Datei:
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action) { workpath=ExtractFilePath(Application->ExeName); TIniFile* iniFile = new TIniFile(workpath+"login.ini"); iniFile->WriteString("LOGIN","NAME","meinname"); iniFile->WriteString("LOGIN","PASS","meinpass"); delete iniFile; }
Und das Ganze jeweils in den OnClose Event des MainForm, dann geht das automatisch beim schließen des Programms.
Gruß myerscola
-
ma zu deinem quellcode ne frage:
die einträge "meinprogramm" , "name" , "pass":"meinprogramm" --> der programmname?
"name" ; "meinname" --> den name für`s login?
"pass" ; "meinpass" --> pw für`s login??
-
so war es gedacht, aber die Namen kannst Du Dir aussuchen.
-
un bei Software?
-
Cyber-Space schrieb:
un bei Software?
Hi,
wenn du die Registry-Datenbank kennst, müsstest du das wissen. Wenn nicht, schau dir , bevor du
in dein Programm derartigen Code aufnimmst, diese Datenbank an.Da findest du allerhand Einträge, so auch SOFTWARE.
mfg
kpeter
-
danke für den hinweis
-
Vielen Dank myerscola,
werde das mal ausprobieren und hier berichten.Noch eine Frage: Wird das Passwort unverschlüsselt in die Registry geschrieben? Ist das nicht bisschen unsischer?
-
kenux schrieb:
Noch eine Frage: Wird das Passwort unverschlüsselt in die Registry geschrieben? Ist das nicht bisschen unsischer?
Ja, wird es. Um die Verschlüsselung müsstest du dir dann selbst Gedanken machen. Entweder du schreibst eine eigene oder benutzt z.B. Hashes (wobei ich von MD5 abrate).
-
klappt sehr schön vielen dank nochmals.
lediglich die sicherheitsaspekte müssen überarbeitet werden, da muss ich mich mal schlau machen