尝试使用Windows任务计划程序安排任务时,我在Windows 2008 Server上遇到了一个奇怪的问题。
基本上我已经设置了一个每天运行的任务,使用Url调用Internet Explorer程序。
如果我从任务计划程序手动运行此任务(以管理员身份登录),则可以通过启动任务并正确结束来正常工作。
但是现在我尝试将用户设置为在用户未登录时运行(以管理员身份)。
似乎所有内容都设置正确,我在提示时设置了管理员密码。但是当我尝试从任务计划程序运行任务以确保它作为此用户运行时,任务启动,但永远不会结束,并始终处于“运行状态”。
以下是任务事件日志中的数据。
Task Scheduler launched action ""C:\Program Files\Internet Explorer\iexplore.exe"" in instance "{}" of task "\Daily Update".
Task Scheduler launched "{}" instance of task "\Daily Update" for user "administrator" .
Task Engine ":SERVERNAME\administrator:Password:" received a message from Task Scheduler service requesting to launch task "\Daily Update" .
Task Scheduler started "{}" instance of the "\Daily Update" task for user "SERVERNAME\administrator".
Task Scheduler launch task "\Daily Update" , instance "C:\Program Files\Internet Explorer\iexplore.exe" with process ID 5020.
为什么会发生这种情况以及如何解决这个问题?
答案 0 :(得分:0)
您正在使用Internet Explorer调用URL。 IE将被打开,不会自行关闭。
要在预定时间调用网址,我建议你使用free scheduling service,这是为了完成这项工作而生的。
如果您坚持使用此方法,只需将IE替换为.vb文件即可调用您的网址:
'begin VBS script code:
Call LogEntry()
Sub LogEntry()
'Force the script to finish on an error.
On Error Resume Next
'Declare variables
Dim objRequest
Dim URL
'The URL link.
URL = "http://www.example.com/?123"
Set objRequest = CreateObject("Microsoft.XMLHTTP")
'Open the HTTP request and pass the URL to the objRequest object
objRequest.open "GET", URL , false
'Send the HTML Request
objRequest.Send
'Set the object to nothing
Set objRequest = Nothing
End Sub
'end VBS script code
[免责声明:我是ATrigger团队之一。这是一种免费软件,不是商业用途。]