FIle Explorer in ASP Classico VbScript ——–>

QUESTO SCRIPT PERMETTE DI NAVIGARE UN ALBERO IN IIS VIA WEB

AVENDO COME DIRECTORY INZIALE QUELLA PRESENTE IN UNA VARIABILE DI SESSIONE

VBSCRIPT:

 

‘creo una tabella per contenere l’albero di navigazione
Response.Write “</table>”
‘ Apri il FSO
Set objFSO = CreateObject(“Scripting.FileSystemObject”)
on error resume next
‘CAttura la cartella attuale
‘Set objFolder = objFSO.GetFolder(sRoot & sDir)
Set objFolder = objFSO.GetFolder(sRoot & sDir)
if err.number <> 0 then
Response.Write “Non posso aprire la cartella”
Response.End
end if
on error goto 0

‘ Linko la cartella precedente
‘ creando il path completo
sParent = objFSO.GetParentFolderName(objFolder.Path)

‘ Tolgo il path della cartella precedente.  questo ci rende il path relativo alla cartella root

sParent = mid(sParent, len(sRoot) + 1)

Response.Write “<table border=””1″” align=””center””>”

‘ Linko la cartella superiore per averla come parametro da rimandare a questo file per la navigazione
Response.Write “<tr><td colspan=3><a href=””intranet.asp?dir=” & Server.URLEncode(sParent) & “””>…Torna Indietro…</a></td></tr>” & vbCRLF

‘ Creo un ciclo per elencare le sottocartelle della cartella attualmente in uso
For Each objSubFolder In objFolder.SubFolders
‘ e quindi le inserisco in un href per linkarne la voce
Response.Write “<tr><td colspan=3> Cartella >>>> <a href=””intranet.asp?dir=” & Server.URLEncode(sDir & objSubFolder.Name) & “””>” & objSubFolder.Name & “</a></td></tr>” & vbCRLF
Next

cartella = Replace( sDir, “”, “/” )
‘ Ora creo un ciclo per i files

For Each objFile In objFolder.Files
‘con una notazione per la grandezza, se in kb

if Clng(objFile.Size) < 1024 then
sSize = objFile.Size & ” bytes”
else
sSize = Clng(objFile.Size / 1024) & ” KB”
end if
‘ e linko ogni voce per poterla aprire

Response.Write “<tr><td><a href=””” & dircorsi & cartella & “” & objFile.Name & “””>” & objFile.Name & “</a></td><td>” & sSize & “</td><td>” & objFile.Type & “</td></tr>” & vbCRLF
Next

Response.Write “</table>”

‘chiudo la tabella usata