Can't the ASP file system object access shared server paths?
I am using this code to access files and folders:
<%@ Language=VBScript %><%
option explicit
dim sRoot, sDir, sParent, objFSO, objFolder, objFile, objSubFolder, sSize
%>
<META content="Microsoft Visual Studio 6.0" name=GENERATOR><!-- Author: Adrian Forbes -->
<%
sRoot = "D:Raghu"
sDir = Request("Dir")
sDir = sDir & "\"
Response.Write "<h1>" & sDir & "</h1>" & vbCRLF
Set objFSO = CreateObject("Scripting.FileSystemObject")
on error resume next
Set objFolder = objFSO.GetFolder(sRoot & sDir)
if err.number <> 0 then
Response.Write "Could not open folder"
Response.End
end if
on error goto 0
sParent = objFSO.GetParentFolderName(objFolder.Path)
' Remove the contents of sRoot from the front. This gives us the parent
' path relative to the root folder
' eg. if parent folder is "c:webfilessubfolder1subfolder2" then we just want "subfolder1subfolder2"
sParent = mid(sParent, len(sRoot) + 1)
Response.Write "<table border=""1"">"
' Give a link to the parent folder. This is just a link to this page only pssing in
' the new folder as a parameter
Response.Write "<tr><td colspan=3><a href=""browse.asp?dir=" & Server.URLEncode(sParent) & """>Parent folder</a></td></tr>" & vbCRLF
' Now we want to loop through the subfolders in this folder
For Each objSubFolder In objFolder.SubFolders
' And provide a link to them
Response.Write "<tr><td colspan=3><a href=""browse.asp?dir=" & Server.URLEncode(sDir & objSubFolder.Name) & """>" & objSubFolder.Name & "</a></td></tr>" & vbCRLF
Next
' Now we want to loop through the files in this folder
For Each objFile In objFolder.Files
if Clng(objFile.Size) < 1024 then
sSize = objFile.Size & " bytes"
else
sSize = Clng(objFile.Size / 1024) & " KB"
end if
' And provide a link to view them. This is a link to show.asp passing in the directory and the file
' as parameters
Response.Write "<tr><td><a href=""show.开发者_如何学Casp?file=" & server.URLEncode(objFile.Name) & "&dir=" & server.URLEncode (sDir) & """>" & objFile.Name & "</a></td><td>" & sSize & "</td><td>" & objFile.Type & "</td></tr>" & vbCRLF
Next
Response.Write "</table>"
%>
It works fine. but when I try to access something on shared path like: "\\cvrdd0110:share"
it gives an error. How to access these files? And sorry for formatting issues.
Permissions problem. See this kb (applicable on IIS 4/5; IIS 6/7 probably require a different approach).
Might want to also keep an eye on this posting File permissions with FileSystemObject - CScript.exe says one thing, Classic ASP says another
精彩评论