Newsgroup: it.comp.lang.visual-basic
Titolo: Directory Corrente e DAO

Ringrazio già da ora chi mi risponde.
Osservando:
Private Sub Aggiungere_Click()
Dim d As Database
Dim t As Recordset
'Utilizzo CurDir per indicargli dove si trova il database dove deve
prelevare, aggiungere o visualizzare dati)'
Set d = OpenDatabase(CurDir & "database.mdb")
Set t = d.OpenRecordset("Database")
If nome.Text = "" And cognome.Text = "" And indirizzo.Text = "" And
telfisso.Text = "" And cellulare.Text = "" And email.Text = "" Then
MsgBox "Inserire almeno un campo"
Else
t.AddNew
nome.Text = t![nome]
cognome.Text = t![cognome]
indirizzo.Text = t![indirizzo]
telfisso.Text = t![telfisso]
cellulare.Text = t![telfisso]
email.Text = t![email]
t.Update
End If
End Sub
IL PROBLEMA E' CHE MI DA UN ERRORE DICENDOMI CHE NON TROVA IL FILE (MI
VISUALIZZA IL PERCORSO DI VISUAL STUDIO E NON QUELLO DEL PROGRAMMA).
HO CREATO UNA CARTELLA CON TUTTI I FILE ED E' QUESTA DA CUI DEVE TROVARE IL
DATABASE MA NON LO TROVA CHE FARE ?????
La sintassi mi sembra corretta.


CurDir [unità]
Se non è specificata alcuna unità o se l'argomento unità è una stringa di
lunghezza zero (""), CurDir restituirà il percorso dell'unità corrente.
ciaociao
P.S. non urlare

 dell'unità corrente.
dimenticavo: il path viene restituito *senza* il \ finale, quindi devi
scrivere CurDir & "\database.mdb".
Vorrei inoltre farti notare che non va bene usare la CurDir.....
ciaociao

 
Usa un altro metodo. Usa, ad esempio app.path.
Se clicchi su Start, e cerchi la riga di meni che usi per lanciare vb, 
ci clicchi sopra col tasto dx e col sinistro clicchi su proprieta' 
vedrai che nella casella "Da" c'e' il percorso all'eseguibile di vb 
(vb6.exe) ed e' quella la cartella indicata da CurDir.
Questo ovviamente succede nell'ide.
Probabilmente se tu lanciassi il tuo programma da un'icona sul Desktop 
(senza modificare il percorso contenuto in "Da", CurDir conterrebbe 
qualcos'altro ma non necessariamente quello che vuoi tu.
Ho appena controllato con 2 programmi che ho sul desktop e per uno c'e' 
la stessa cartella del programma, per l'altro c:\documents and settings\ 
...
ciao
	maxx
-- 
NOSPAM: Rimuovere i trattini dallo username!
Cut hyphens from my username!


La guida è molto chiara a riguardo:
' Presupposto: percorso corrente nell'unità c: "c:\Windows\System" .
' Presupposto: percorso corrente nell'unità d: "d:\Excel".
' Presupposto: c: è l'unità corrente.
Dim MyPath
MyPath = CurDir   ' Restituisce "c:\Windows\System".
MyPath = CurDir("C")   ' Restituisce "c:\Windows\System".
MyPath = CurDir("D")   ' Restituisce "d:\Excel".
ciaociao

 
Il problema e' un altro.
Se apro un progetto facendo partire vb da Start ... e poi seleziono il 
progetto dall'elenco o sfogliando, curdir e' inizialmente la cartella 
dove e' installato vb.
Se invece apro un progetto cliccando direttamente sul file .prj, curdir 
indica la cartella dove si trova il progetto.
Il post in questione si riferisce al primo caso, curdir non viene 
impostata, ma solo letta e quindi restituisce una cartella diversa da 
quella che Alex si aspetta...


 dove e' installato vb.
direi sia la cartella cui punta il link.
da me nel quicklaunch ho un link che punta a c:\vb e msgbox curdir mi da'
"c:\vb".
se lancio vb col link creato dall'installazione, ottengo
C:\Programmi\Microsoft Visual Studio\VB98
ciao, j.

Il 25/05/2004 16.01, javalab scrisse:

Se non ricordo male, se ne era parlato in un thread in cui qualcuno 
chiedeva come vedere una cartella scelta da lui e non 
"C:\Programmi\Microsoft Visual Studio\VB98" quando un progetto viene 
salvato la prima volta.
Tu stesso avevi suggerito di andare a modificare la casella "Da" nelle 
proprieta' del link.


 maxx
ciaociao

 
E quel che voglio dire io e' che non sempre sai qual e' il percorso 
corrente dell'unita'! :-)


 il percorso corrente dell'unità, modificabile con ChDir
mmhhh... tu hai in mente
c:\>cd \winnt
c:\winnt>d:
d:\>cd data
d:\data>c:
c:\winnt>d:
d:\data>
in cui ti veniva restituito l'ultimo percorso attivo di c: ecc.
ma, cfr l'altro mio post, curdir ti restituisce la posizione cui punta il
collegamento che lancia l'eseguibile, appunto il 'da' delle proprieta'
dell'lnk.
d'altronde "percorso corrente dell'unita'" in un sistema che ha decine di
processi aperti contemporaneamente...
ciao, j.

 ciao, j.
ciaociao