Newsgroup: it.comp.lang.visual-basic
Titolo: Muoversi nelle directory da VB...come torno indietro di una??

Salve,
ancora io :)) Stò provando un po di cose con le directory, DirListBox,
FileListBox etc etc, se ancora non si era capito :))
Okz, una domanda, esiste un istruzione per tornare ad una directory di
livello superiore rispetto a quella corrente? Un esempio banalissimo;
mi trovo in "C:\Pluto\Pippo" e voglio tornare indietro in "C:\Pluto".
Da VB come si fa?? Grazie.
Saluti, ciao ciao.

 Da VB come si fa?? Grazie.
il modo piu' sicuro e', dopo un clic sul dirbox, premere f1 :)
il dirbox funziona a indici, mi sembra da -1 a n. non mi ricordo
assolutamente nulla di piu', ma quello che vuoi fare si fa tranquillamente:
da' un occhio all'help.
in alternativa, estrai dal path corrente tutto quello che sta a destra
dell'ultimo backslash (penultimo se ne hai anche uno finale). vb6 mi sembra
abbia instrrev(), seno' instr() e vai a gambero. poi setta il dirbox sul
nuovo path.

 Saluti, ciao ciao.
prova con ChDir ".."
ciao

prova con ChDir ".."
Dunque, io questo comando l' ho usato per un altra cosa, come dice la
guida in linea:
	L'istruzione ChDir cambia la directory predefinita.....
Io devo solo tornare ad un liverllo superiore da quella corrente, non
impostarla come predefinita, o cambiare quella che lo č gią. Per
esempio, quando avevo inserito la DirListBox, come lanciavo il form,
li dentro si andava a posizionare sempre nella dir di Visual Basic, io
ChDir l' ho usato per impostare "C:\" come path predefinito.
Sinceramente qui non ne vedo l' utilizzo...mi sbaglio? Mi spieghi
meglio come volevi usarlo per favore?
Aspetto news, grazie.
Saluti, ciao ciao.

poi setta il dirbox sul nuovo path.
Ecco, questo dicevo :)) Come lo faccio? Ahhh, con ChDir!! Ecco, aveva
ragione Hellboy...

 prova con ChDir ".."
Non succede nulla, perchè non agisce sulla directory visualizzata da 
un dirbox.
-- 
News2000 1.5ß Version 
http://socket2000.8m.com

 ragione Hellboy...
il venerabile ha sempre ragione :)
forse funziona anche qc come
dir1.path = "c:\program files\"
ma credo di non averlo mai usato.

 Saluti, ciao ciao.
chiedo venia, ho letto male il tuo post;
per situazioni generali dove, avendo un determinato path, sia necessario
risalire al parent-path, hai due possibilità:
    1) esegui una scansione della stringa
    2) usi il FileSystemObject
se la tua scelta ricade nella prima categoria, beh, rimboccati le maniche e
armati di tanta pazienza e di una manciata di Mid$, Len ecc. ecc.
se invece (mooolto più pigramente) utilizzi il FileSystemObject eccoti un
metodo:
Private Function ParentFolder(strFolder As String) As String
    Dim fso As Scripting.FileSystemObject
    Dim fol As Scripting.Folder
    On Error GoTo err_ParentFolder
    Set fso = New Scripting.FileSystemObject
    Set fol = fso.GetFolder(strFolder)
    If fol.ParentFolder Is Nothing Then
        ParentFolder = ""
    Else
        ParentFolder = fol.ParentFolder.Path
    End If
    Exit Function
err_ParentFolder:
    ParentFolder = ""
End Function
per utilizzare il codice qui sopra in un contesto DirListBox, crea un nuovo
programma, disegna nel form una DirListBox (Dir1) e un CommandButton
(Command1), inserisci quindi la funzione riportata qui sopra e poi prova il
seguente codice
Private Sub Command1_Click()
    Dim strFolder As String
    strFolder = Dir1.Path
    Dir1.Path = ParentFolder(strFolder)
End Sub
naturalmente ricordati di riferenziare il componente Microsoft Scripting
Runtime (scrrun.dll) a livello di riferimenti del progetto;
ciao