Scripting.FileSystemObject.FileExists始终返回false

时间:2008-11-22 19:56:55

标签: file-io asp-classic

我试图在将文件包含在Classic ASP中的Server.Execute之前检查文件是否存在。当FileExists()返回False时,Server.Execute成功执行该文件。两个调用都使用完全相同的文件路径。

为什么会发生这种情况,我该如何解决?

1 个答案:

答案 0 :(得分: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
%>