siccome l'ho presa un po' come una sfida (...
) ti ho preparato questo
funziona, ma non so se va bene per le tue esigenze
ed è molto meno incasinato di quella roba che hai pubblicato te (che per altro a me non funzionava affatto bene)
codice:
<%
'recupero la cartella e l'eventuale percorso, per potermi muovere tra le varie cartelle
cartella=request.querystring("cartella")
vDir=request.querystring("vDir")
'indico la cartella main quella in cui eseguirà le operazioni
main="/public/"
set fso = CreateObject("Scripting.FileSystemObject")
if vDir="" or vDir=main then
'se mi trovo al percorso iniziale non devo aggiungere "/"
vDir = main&cartella
else
'saltrimenti recupero il percorso corretto e lo rendo leggibile dal mappath,
'tolgo le "/" in eccesso
if right(vDir,1)="/" then
vDir=left(vDir,len(vDir)-1)
end if
'se la cartella da riportare non è vuota la inserisco al perorso attuale
if cartella<>"" then
vDir=vDir&"/"&cartella
end if
end if
root = Server.MapPath(vDir) & "\"
set fold = fso.getFolder(root)
'inserisco la possibilità di andare alla cartella main in qualunque momento
%>
<%=main%>
<%
'stampo a video il percorso in cui mi trovo
response.write vDir%>
<%
Set objFiles = fold.Files
'recupero il percorso precedente a quello attuale per poter tornare alla cartella superiore
if replace(vDir,"/","")<>replace(main,"/","") then
arr=Split(vDir, "/")
indietro=""
for i =1 to ubound(arr)-1
indietro=indietro&"/"&arr(i)
next
%>
/..
<%
end if
'recupero e stampo tutte le sottocartelle della cartella in questione
for each cartella in fold.subfolders
%>
[img]image.jpg[/img]<%=cartella.name%>
<%
next
'recupero e stampo tutti i file della cartella in questione e li linko
for each strFile in objFiles
%>
" target="_blank"><%=strFile.name%>
<%
next
%>
ho la sensazione che i commenti incasinino un po' le idee XD
ad ogni modo qua puoi vedree un esempio di come funziona
fammi sapere