我无法让任务计划程序中的重复选项发挥作用

我无法让任务计划程序中的重复选项发挥作用

该任务应该每分钟运行一个.js文件。

为了实现这一目标,我制定了任务每天跑步00:00 和每 1 分钟重复一次

然而,现在的任务始终是地位跑步无需实际做任何事情,上次运行结果0x41301(无法运行,因为它已经正在运行)。

我尝试为每分钟(连续几分钟)制作一个触发器,这有效。脚本每分钟运行一次(连续几分钟),但我无法为一天中的每一分钟制作一个触发器……


当我使用重复过程执行程序正在不断运行,这就是问题所在——当我每分钟都有一个触发器时,每次运行后该过程都会自行结束。

但是当我使用重复时,它永远不会结束该过程,因此无法再次运行该脚本。(因此出现错误:0x41301)

我以为我可以通过选择来解决这个问题如果任务已在运行,则适用以下规则: 选项停止现有实例- 但是,这并不适用于每次重复,它仅适用于每天任务开始时 - 我认为;毕竟这个选项不起作用。


当我使用重复时,.js 脚本根本不运行(甚至一次也不运行);如果确实如此,那么我会让它终止进程执行程序完成后。

那么我该如何解决这个问题?


编辑:

尝试制作 .vbs 脚本和批处理程序以查明是任务还是脚本有问题后,我发现什么都不起作用 - 因此我的结论是错误在于任务本身。

我甚至尝试从任务中直接启动 Internet Explorer,但那也没有用。

也就是说:一切都正常,但重复激活时则不行 <-任何形式的重复,我尝试了许多重复和其他设置的可能组合,但没有任何效果。

是否有一条不为公众所知的秘密规则,规定每当激活重复时,脚本必须用希腊文倒写?因为我试过了,但没有用!

答案1

解决方案相当简单,但并不明显。

我原来的VBS脚本基本上是这样的:

Set objExplorer = WScript.CreateObject _("InternetExplorer.Application", "IE_")
objExplorer.Navigate "https://domain.com/place/?token=key"

'Make window invisible
objExplorer.Visible = 0

'Wait for URL to load properly, then quit
WScript.Sleep 6000
objExplorer.quit

该脚本使用 Internet Explorer 加载网站 - 它可以工作,但是当我重复执行该任务时它却不起作用。

我仍然不清楚它为什么不起作用,但我想重复的使用会在同一个“任务”中一次又一次地打开 Internet Explorer,并使用相同的临时内存(或其他东西),然后每次重复都会发现没有必要加载网站,因为它已经在内存中了...

这可能不正确,但我通过用以下脚本替换脚本解决了该问题:

On Error Resume Next
dim ObjRequest
dim URL
URL = "https://domain.com/place/?token=key"

CreateObject("Microsoft.XMLHTTP")
objRequest.open "GET", URL, false
objRequest.Send

Set objRequest = Nothing

现在一切都运转正常。

相关内容