2008-11-22 190 views
0

我試圖檢查文件是否存在,然後將其與Server.Execute包含在經典ASP中。當FileExists()返回False時,Server.Execute成功執行該文件。兩個調用都使用完全相同的文件路徑。Scripting.FileSystemObject.FileExists總是返回false

爲什麼會發生這種情況,我該如何解決它?

回答

2

我懷疑你傳遞了一個相對路徑(例如「/Subfolder/Page.asp」)。您需要撥打Server.MapPath以調用FileExists - 需要絕對路徑(例如,「C:\ inetpub \ wwwroot \ Subfolder \ Page.asp」)。

<% 
Dim path : path = "/Admin/default.asp" 
Dim fso : Set fso = CreateObject("Scripting.FileSystemObject") 

If fso.FileExists(Server.MapPath(path)) Then 
    Server.Execute(path) 
Else 
    Response.Write "The path " & path & " does not exist." 
End If 

Set fso = Nothing 
%>