PDA

Visualizza la versione completa : [DELPHI] Memorizzazione impostazioni di connessione al DB


danz67
14-11-2006, 19:41
Ciao a tutti,

ho un programma che mi permette di creare una connessione tramite il db selezionato dopo l'apertura di una OpenDialog.

Di default la ADOconnection è attivata ad un db su un percorso (es. c:\data).

// Creo la connessione al db selezionato
ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' +
OpenDialog1.FileName +';Persist Security Info=False';

Come posso fare per poter memorizzare la connessione all'ultimo db connesso al riavvio del programma?

Grazie :ciauz:

Nikk11
14-11-2006, 23:46
Come posso fare per poter memorizzare la connessione all'ultimo db connesso al riavvio del programma?

Grazie :ciauz:


te lo salvi in un file di configurazione... oppure con una chiave nel registro di windows :stordita: :fagiano:

danz67
15-11-2006, 07:06
Originariamente inviato da Nikk11
te lo salvi in un file di configurazione... oppure con una chiave nel registro di windows :stordita: :fagiano:

Da nessuna parte. Puoi spiegarmi eventualmente come fare?
Grazie :ciauz:

mondobimbi
15-11-2006, 07:58
usi la unit TIniFiles dove trovi la classe TINIFile.
Lì trovi le procedure per scrivere e leggere un file di configurazione nel classico stile win .ini
ciao
sergio

Nikk11
15-11-2006, 08:37
Originariamente inviato da mondobimbi
usi la unit TIniFiles dove trovi la classe TINIFile.
Lì trovi le procedure per scrivere e leggere un file di configurazione nel classico stile win .ini
ciao
sergio

Esattamente!

danz67
15-11-2006, 10:19
Grazie per la dritta, adesso leggo la guida in linea riferita al FilleIni.
A presto :ciauz:

danz67
15-11-2006, 11:01
Leggevo sulla guida per creare i file ini di Marco Breveglieri

"Creazione di un oggetto TIniFile
Il primo passo da compiere per poter lavorare con i file INI è creare un’istanza della classe TIniFile chiamando il metodo costruttore Create; tale metodo viene ereditato dalla classe TCustomIniFile e richiede di specificare il nome (o il percorso completo) del file INI a cui si vuole accedere. Qui sotto è riportata la dichiarazione del metodo:

constructor Create(const FileName: string);Il nome del file selezionato viene restituito dalla proprietà FileName, ereditata dalla classe TCustomIniFile, accessibile solamente in lettura."

Purtoppo non ho mai creato un constructor e non so dove va posizionato, ho provato a fare cosi ma chiaramente non mi crea il file ini:

CODE:

procedure TForm1.FormCreate(Sender: TObject);
var
FileIni: TIniFile;
begin
FileIni:= TIniFile.Create('C:\iniTest\daniele.ini');
end;


Qualcuno puo' indicarmi perfavore dove devo posizionare

constructor Create(const FileName: string);

e se evntualmente va cambiato qualcosa?

Grazie :ciauz:

alka
15-11-2006, 11:03
Originariamente inviato da danz67
Leggevo sulla guida per creare i file ini di Marco Breveglieri

Quale onore... :)


Originariamente inviato da danz67
Qualcuno puo' indicarmi perfavore dove devo posizionare
constructor Create(const FileName: string);
e se evntualmente va cambiato qualcosa?

Il codice che hai quotato evidenzia esattamente come utilizzare il costruttore.

Se il file non viene creato, probabilmente ci sarà un errore di qualche tipo (hai scritto informazioni all'interno del file?); in caso affermativo, riporta le informazioni dell'errore segnalato.

Ciao! :ciauz:

danz67
15-11-2006, 11:28
Originariamente inviato da alka
Quale onore... :)


Il codice che hai quotato evidenzia esattamente come utilizzare il costruttore.

Se il file non viene creato, probabilmente ci sarà un errore di qualche tipo (hai scritto informazioni all'interno del file?); in caso affermativo, riporta le informazioni dell'errore segnalato.

Ciao! :ciauz:

Non ho scritto ancora nessuna informazione perchè prima volevo vedere se riuscivo a creare il file.ini.

Comunque ritornando al discorso del constructor, se ho capito bene va posizionato cosi' com'è, in quanto la sua funzione è quella di far si che si possa creare il file specificando il nome al momento dellla creazione. Se è giusto pero' non capisco in quale posizione va messo, ho provato in pubblic ma non va.

Grazie :ciauz:

alka
15-11-2006, 12:05
Originariamente inviato da danz67
Non ho scritto ancora nessuna informazione perchè prima volevo vedere se riuscivo a creare il file.ini.
Se non scrivi il file, il file non apparirà ovviamente.


Originariamente inviato da danz67
Comunque ritornando al discorso del constructor, se ho capito bene va posizionato cosi' com'è, in quanto la sua funzione è quella di far si che si possa creare il file specificando il nome al momento dellla creazione. Se è giusto pero' non capisco in quale posizione va messo, ho provato in pubblic ma non va.
Cosa intendi per posizionato? C'è l'esempio di codice che hai citato



procedure TForm1.FormCreate(Sender: TObject);
var
FileIni: TIniFile;
begin
FileIni:= TIniFile.Create('C:\iniTest\daniele.ini');
end;


che mostra esattamente come si usa. Cosa c'entra public e altri criteri di visibilità?

Ciao! :ciauz:

Loading