Newsgroup: it.comp.lang.delphi
Titolo: Salvare impostazioni

Ciao
come posso salvare le impostazioni settate dall'utente per poi ricaricarle
ad ogni avvio?
Naturalmente intendo dire senza creare file txt o salvare su tabelle..
Ciao
Andrea

 Andrea
Ciao
Gabriele

da qualche parte dovrai pur farlo! ;))
O usi un file esterno (ini, clientdataset, txt, binario) o usi il registro.
Io protendo per la prima ipotesi, precisamente per il file INI che ha
l'enorme vantaggio di essere manipolabile da un qualsiasi text edit,
compreso il notepad.
A

 ha scritto nel messaggio
news:bano03$12nc$1...@newsreader1.mclink.it...

Confermo!! anche io preferisco INI in quanto
facilmente manipolabile con noteopad o un qualsiasi
editor !!
inoltre facile da intercettarlo, mentre nel registro c'è troppo
caos !!
MAX

 ha scritto nel messaggio
news:bano03$12nc$1...@newsreader1.mclink.it...

Ho già fatto cose del genere con file txt
Per utilizzare file INI posso comportarmi alla stessa maniera o c'è qualcosa
di particolare? Cosa ha di meglio un file INI rispetto a un txt?
Grazie
Andrea

che delphi la la classe TIniFile.....
Bye
A


 E' vero...
non lo sapevo. Ho dato uno sguardo alla classe, ma non ho ben capito come
strutturare e manipolare un file INI. Potresti postarmi un esempio di file
INI con relativi accessi per lettura e scrittura?
Grazie mille
Andrea

 esempio di file INI con relativi accessi per lettura e scrittura?
Un file INI è strutturato in sezioni, ogni sezione può avere n nomi e i
corrispondenti n valori, in questo modo:
[Sezione 1]
Nome 1=Valore 1
Nome 2=Valore 2
[Sezione 2]
Nome 1=Valore 1
Ogni valore viene scritto nel file INI come una stringa, ma da delphi può
essere trattato come una stringa, un intero o un boolean (true/false),
utilizzando i metodi ReadString, ReadInteger, ReadBool della classe TIniFile
(i booleani vengono tradotti nell'ini con False=0, True=1).
Un esempio di lettura di un file ini:
procedure CaricaOpzioni(sNomeFile: String);
var
    iIni: TIniFile;
    i: Integer;
begin
    iIni := TIniFile.Create(sNomeFile);
    try
        Edit1.Text := iIni.ReadString('Opzioni', 'Directory', 'c:\');
        SpinEdit1.Value := iIni.ReadInteger('Opzioni', 'Valore', 1);
        CheckBox1.Checked := iIni.ReadBool('Opzioni', 'Flag1', True);
        finally iIni.Free;
    end;
end;
Il salvataggio è analogo, devi solo usare i metodi WriteXXX corrispondenti.
Se vuoi salvare l'ini nella stessa cartella dell'exe (cosa che ti consiglio,
sia perché così hai tutto a portata di mano, sia perché non spargi file in
giro), devi passargli il path nel Create
    iIni := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'pippo.ini');
altrimenti ti crea l'ini in C:\WINDOWS o C:\WINNT.
Un'ultima cosa: TIniFile ha il limite di 64Kb, ma si trova TBigIniFile in
giro (
torry.net
) che non ha questo limite, se ti crea problemi.
--
Jax
Journeying Artificial Xenomorph

INI con relativi accessi per lettura e scrittura?
"Accessing 'Configuration Settings' files (.INI) with Delphi"   
How a simple text file can beat Registry in storing a few pieces of
application specific configuration data.   
http://delphi.about.com/library/weekly/aa120401a.htm
ciao
-- 
Morde. 
morde[at]programmer[.]net

corrispondenti n valori, in questo modo:
[...]
Grande Jax, sintetico ed essenziale. :-)
(molto megilio del link che ho passato io)



    Via De Gasperi, 14 - 42019
    Scandiano (Reggio Emilia)

Ti mando il link ad un articolo che ho scritto io:
Molto bello questo articolo!!! 
(Una sola cosa non ho trovato: un cenno al limite dei 64 Kb)
P.S.
Sai una cosa? ti immaginavo con la barba e la faccia rotondetta, con gli
occhiali... invece sei smilzo come me !!!
Boh.. a volte immaginiamo una persona in un modo...
:-)
Ciao



http://www.programmazione.it/index.php?entity=earticle&idArticle=719&idArea=
1
ARGH! Cambia quella foto, ti prego, sembri me quando la mia morosa mi da' il
due di picche! Sorridi!


 da' il due di picche! Sorridi!
Abbiate pazienza! La foto è vecchissima: avevo sui 18 anni, ora ne ho
quasi 25! ;-)


 gli occhiali... invece sei smilzo come me !!!
In realtà, sono ben messo ora...ma niente barba lo stesso.


quasi 25! ;-)
Beh... allora hai fatto in tempo a farti crescere la barba e a ingrassare..
no? ;;-))))))


Grazie mille
mi è stato molto utile

 ha scritto nel messaggio
news:hti3dvsd4btio0339...@4ax.com...

Grazie tante
Ciao
Andrea

 mi č stato molto utile
Ho aggiunto un commento "Addendum" all'articolo riguardante la mancanza
di cenni alla limitazione di 64KB suggerita da Jax e osservata da Morde
che ringrazio entrambi.
