non so se il titolo sia esatto...ma volevo sapere, qual'è il codice per indicare "C:\Cartella"
per il percorso del programma è |$AppPath&|
ma per c:\cartella proprio non so qual'è
non so se il titolo sia esatto...ma volevo sapere, qual'è il codice per indicare "C:\Cartella"
per il percorso del programma è |$AppPath&|
ma per c:\cartella proprio non so qual'è
Spiegati meglio, perché il quesito non è molto chiaro.![]()
MARCO BREVEGLIERI
Software and Web Developer, Teacher and Consultant
Home | Blog | Delphi Podcast | Twitch | Altro...
quando creo i pacchetti di installazione devo inserire una cartella che è sita in C:\ e si chiama "cartella" (mi serve per salvare i documenti *.doc così l'utente li trova in modo rapido).
Solo che non posso inserire "C:\Cartella" ma mi chiede la path al posto di "C:"...e non so qual'è...
Ciao Folcus.
Naturalmente avrai pensato che ad ogni avvio del programma occorre controllare se la cartella "Cartella" esista o meno, solo in quest'ultimo caso il programma dovrà procedere alla sua creazione (in sostanza dovrà farlo solo per la prima volta). Ad ogni buon conto ti posto un esempio del caso:
sNameFold = FSO.GetFolder(App.Path & "\" & "CARTELLA")codice:'Controlla se esiste la cartella "CARTELLA" altrimenti la crea: If (FSO.FolderExists(App.Path & "\" & "CARTELLA")) = False Then FSO.CreateFolder (App.Path & "\" & "CARTELLA") End if
Con la variabile stringa sNameFold puoi anche acquisire il percorso, per il successivo salvataggio/apertura dei files.
Se mi permetti, un'ultima annotazione, cambia il cone della cartella, magari in DATI, è molto più consono.![]()
LM
Probabilmente è andato perduto il prefisso della discussione: stiamo parlando di VB6 o di VB.NET?![]()
Fatemi sapere così modifico il titolo.
Ciao!![]()
MARCO BREVEGLIERI
Software and Web Developer, Teacher and Consultant
Home | Blog | Delphi Podcast | Twitch | Altro...
grazie mille...oggi pome provo a montare il tutto...
per quanto riguarda il nome della directory quello di "cartella" è un nome provvisorio...poi giustamente lo commuterò in "Dati e Documenti" o cosa simile...
ah, parliamo di VB6...
Però scusa, una domanda...ma così non mi verifica/crea la cartella nella directory dell'applicazione?
a me serve lo faccia nella root di c:
Poi, puoi illustrarmi meglio i significato...così riesco a capire effettivamente quello che fa:
FSO cos'è?
poi ok, se "la directory non esiste allora crea la directory"...
ma App.Path non indica la locazione del programma?
If (FSO.FolderExists(App.Path & "\" & "CARTELLA")) = False Then
FSO.CreateFolder (App.Path & "\" & "CARTELLA")
End if
Non potevo sapere che non conosci SFO:Quindi ciò che ho postato si integra così:'Progetto>Riferimenti>Microsoft Scripting Runtime.
'Per gestire i file in Visual Basic, è possibile utilizzare gli
'oggetti del modello di oggetti del file system (FSO, File System Objects),
'ad esempio Copy, Delete, Move e OpenAsTextStream oppure le funzioni già
'disponibili nelle versioni precedenti, ad esempio Open, Close, FileCopy,
'GetAttr e così via. Si noti che è possibile spostare, copiare o eliminare
'i file indipendentemente dal tipo.
Se la tua esigenza è creare una Cartella in C:\ per salvare i dati del programma (cosa sconsigliata, perchè crea disordine) puoi fare come sopra, altrimenti se usi, come da me indicato, App.Path la cartella DATI viene creata nel percorso del file .exe; infatti:codice:Dim FSO As FileSystemObject Set FSO = New FileSystemObject If (FSO.FolderExists("C:\DATI")) = False Then 'If (FSO.FolderExists(App.Path & "\" & "DATI")) = False Then FSO.CreateFolder ("C:\DATI") 'FSO.CreateFolder (App.Path & "\" & "DATI") End If
Penso d'essere stato esaustivo.Per l'oggetto App, la proprietà Path specifica il percorso del file di progetto.vbp
quando l'applicazione viene eseguita dall'ambiente di sviluppo oppure il
percorso del file .exe quando l'applicazione viene eseguita come file eseguibile.![]()
LM
perfetto, grazie mille per l'info...
devo dire però che con la cartella creata nella root il disordine non c'è...anzi, l'utente per andare a prelevare i documenti creati non deve entrare in programmi, poi nella cartella del programma, e poi in un terza cartella contenente i dati...così è più rapido il tutto...credo.