Server.ScriptTimeout = 0不工作

时间:2015-05-05 08:57:53

标签: sql vbscript asp-classic timeout ado

我有一个ASP经典脚本,必须做很多事情(仅限管理员),包括运行一个需要4分钟才能执行的存储过程。

然而即使我有

Server.ScriptTimeout = 0

在页面顶部,似乎忽略了它 - 2003和2012服务器。

我尝试尽可能地对proc进行索引,但是为了减少常用搜索条件,我必须清除所有黑客,性垃圾邮件等等。

我不明白为什么忽略Server.ScriptTimeout = 0。

实际错误就是这个,只是

  

Active Server Pages错误'ASP 0113'

     

脚本超时

     

/admin/restricted/fix.asp

     

超出了脚本执行的最长时间。您   可以通过为属性指定新值来更改此限制   Server.ScriptTimeout或通过更改IIS中的值   管理工具。

它从来没有这样做过,它应该覆盖IIS中30秒的默认设置。

我确保proc的命令超时为0,所以无限制,并且从proc返回后出错。

有人有任何想法吗?

1 个答案:

答案 0 :(得分:4)

0是Server.ScriptTimeout的无效值,原因有两个:

  1. ASP页面必须超时。它们无法无限期地运行。
  2. 根据MSDN docs中的此声明,ScriptTimeout永远不会低于IIS中设置的AspScriptTimeout:
  3.   

    例如,如果将NumSeconds设置为10,则设置元数据库   包含默认值90秒,脚本将超时   90秒。

    解决此问题的最佳方法是将Server.ScriptTimeout设置为非常高的值。