Asp classic 在ASP Classic中,我可以让脚本关闭HTTP连接并继续执行吗?

Asp classic 在ASP Classic中,我可以让脚本关闭HTTP连接并继续执行吗?,asp-classic,Asp Classic,我有一个脚本,偶尔需要做一些耗时(15秒)的后台处理,但其他时候它是一个简单的重定向。重定向目标在脚本执行的早期是已知的。一旦知道重定向URL,是否可以将重定向HTML发送到用户代理并关闭HTTP响应,但继续处理脚本?您可以通过从ASP代码异步执行程序(BAT、EXE等)来解决此问题 set wshell = CreateObject("WScript.Shell") runcmd = "c:\myOwnProgram.bat param1=test" wshell.r

我有一个脚本,偶尔需要做一些耗时(15秒)的后台处理,但其他时候它是一个简单的重定向。重定向目标在脚本执行的早期是已知的。一旦知道重定向URL,是否可以将重定向HTML发送到用户代理并关闭HTTP响应,但继续处理脚本?

您可以通过从ASP代码异步执行程序(BAT、EXE等)来解决此问题

    set wshell = CreateObject("WScript.Shell") 
    runcmd = "c:\myOwnProgram.bat param1=test"
    wshell.run runcmd, 0, False 

Wshell.Run
允许异步运行东西。因此,不用担心脚本超时,就可以轻松完成耗时的任务!真的很好。

谢谢大卫,我会试一试的。我可以将脚本分成两部分,并使用wshell调用wget来执行脚本的第二部分。谢谢好的,我已经尝试过了,但出现了权限错误:
Microsoft VBScript运行时错误“800a0046”权限被拒绝
请确保应用程序池可以访问您尝试执行的程序。通常IIS是作为“本地_服务”运行的,但它可以在其他帐户下运行。1.检查IIS池作为哪个帐户运行。2.右键单击您的程序文件并添加所需的权限。重要提示:在服务器上执行文件之前,请确保所有输入的安全,因为此解决方案可能会导致一个大的安全漏洞。您好,David,我已为本地_服务用户分配了文件及其所在目录的完整权限,但仍然会出现相同的错误。根据IIS管理器,应用程序定位池正在作为网络服务运行。我尝试将文件/dir perms发送给ASPNET、IIS\u WPG、internetguest帐户、启动IIS进程帐户、网络、网络服务和系统,但仍然没有成功。有什么想法吗?谢谢你的帮助。