codice:
<% Response.Buffer = True %>
<%
Dim retDrive
retDrive = "D"
Dim retFolder
retFolder = "D:\Documents and Settings\riserva\Documenti\"
Dim extraPath
extraPath = "?drive=" & retDrive & "&folder=" & retFolder
Function getFolderType(folderType)
Dim retVal
retVal = ""
If folderType = 0 Then retVal = "Normal"
If folderType AND 1 Then retVal = "ReadOnly"
If folderType AND 2 Then
If Len(retVal) > 0 Then retVal = retVal & ", "
retVal = retVal & "Hidden"
End If
If folderType AND 4 Then
If Len(retVal) > 0 Then retVal = retVal & ", "
retVal = retVal & "System"
End If
If folderType AND 8 Then
If Len(retVal) > 0 Then retVal = retVal & ", "
retVal = retVal & "Volume"
End If
If folderType AND 16 Then
If Len(retVal) > 0 Then retVal = retVal & ", "
retVal = retVal & "Directory"
End If
If folderType AND 32 Then
If Len(retVal) > 0 Then retVal = retVal & ", "
retVal = retVal & "Archive"
End If
If folderType AND 64 Then
If Len(retVal) > 0 Then retVal = retVal & ", "
retVal = retVal & "Alias"
End If
If folderType AND 128 Then
If Len(retVal) > 0 Then retVal = retVal & ", "
retVal = retVal & "Compressed"
End If
getFolderType = retVal
End Function
If Len(retDrive) < 1 Then
retDrive = "C"
End If
Dim fso
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Dim drive, rootFolder
If Len(retFolder) < 1 Then
Set drive = fso.GetDrive(retDrive & ":")
Set rootFolder = drive.RootFolder
Else
Set rootFolder = fso.GetFolder(retFolder)
End If
Dim parentFolder, parPath
If Not rootFolder.IsRootFolder Then
Set parentFolder = rootFolder.ParentFolder
parPath = parentFolder.Path
parPath = "folder.asp?drive=" &
retDrive & "&folder=" & Server.URLEncode(parPath)
Else
parPath = "drive.asp?drive=" & retDrive
End If
%>
<html>
<%
If Len(retFolder) > 1 Then
Response.Write "Folder : " & retFolder & ""
Else
Response.Write "Drive : " & retDrive & ""
End If
%>
<%
Dim subFolders
Set subFolders = rootFolder.SubFolders
Dim folderAtt
folderAtt = "Unknown"
For Each folder in subFolders
folderAtt = getFolderType(folder.Attributes)
If folderAtt = "Unknown" Then
Response.Write "<tr>"
Else
Response.Write "<tr bgcolor=""#f7f7f7"">"
End If
Response.Write "<td>"
'drive=" & Left(retDrive,1) & "&
Response.Write "" & folder.Name & ""
Response.Write "</td>"
Response.Write "<td style=""color:gray;"">" & folderAtt & "</td>"
Response.Write "<td>" & folder.Type & "</td>"
'Response.Write "<td>" & FormatNumber((folder.Size/1000),0) & " KB</td>"
Response.Write "<td style=""color:gray;"">" & folder.ShortName & "</td>"
Response.Write "</tr>"
Next
Dim folderPath
folderPath = rootFolder.Path
%>
<%
If Len(retFolder) > 1 Then
Response.Write "Files in Folder : " & retFolder & ""
Else
Response.Write "Files in Drive : " & retDrive & ""
End If
%><%
Dim files
Set files = rootFolder.Files
For Each file in files
folderAtt = getFolderType(file.Attributes)
If folderAtt = "Unknown" Then
Response.Write "<tr>"
Else
Response.Write "<tr bgcolor=""#f7f7f7"">"
End If
Response.Write "<td>"
Response.Write "<a href=""file3.asp?drive=" & Left(retDrive,1)
& "&folder=" & Server.URLEncode(folderPath) & "&file=" & Server.URLEncode(file.Path) & """>"
& file.Name & "</a>"
Response.Write "</td>"
Response.Write "<td style=""color:gray;"">" & folderAtt & "</td>"
Response.Write "<td>" & file.Type & "</td>"
Response.Write "<td>" & FormatNumber((file.Size/1000),0) & " KB</td>"
Response.Write "<td style=""color:gray;"">" & file.ShortName & "</td>"
Response.Write "</tr>"
Next
Set files = Nothing
Set subFolders = Nothing
Set rootFolder = Nothing
Set drive = Nothing
Set fso = Nothing
%>
</html>
Lo script apre di default il percorso previsto in retFolder, ma quando clicco su una qualunque delle cartelle visualizzate non riesco ad esplodere le stesse cartelle per visualizzare i files in esse contenuti e non viene restituito nessun errore di sorta...