开发者

Can't the ASP file system object access shared server paths?

开发者 https://www.devze.com 2022-12-30 04:21 出处:网络
I am using this code to access files and folders: <%@ Language=VBScript %><% option explicit dim sRoot, sDir, sParent, objFSO, objFolder, objFile, objSubFolder, sSize

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

0

精彩评论

暂无评论...
验证码 换一张
取 消