Задача должна запускать файл .js каждую минуту.
Чтобы это произошло, я поставил задачу бегать каждый день в 00:00 и повторять каждые 1 минуту.
Однако теперь задача всегда стоит Положение дел из Бег фактически ничего не делая и Результат последнего запуска является 0x41301 (не может работать, потому что он уже работает).
Я попытался сделать триггер на каждую минуту (на несколько последовательных минут), и это сработало. Скрипт запускался каждую минуту (в те минуты), но я не могу сделать триггер на каждую минуту дня ...
Когда я использую репетиция процесс wscript.exe постоянно работает, и в этом проблема - когда у меня есть триггер на каждую минуту, процесс завершается сам после каждого запуска.
Но когда я использую повторение, он никогда не завершает процесс и, следовательно, не может снова запустить сценарий. (Отсюда ошибка: 0x41301)
Я думал, что смогу решить эту проблему, выбрав для Если задача уже запущена, применяется следующее правило: опция Остановить существующий экземпляр - однако это не относится к каждому повторению, это применимо только к тому, когда задача начинается каждый день - я думаю; ведь этот вариант не работает.
Сценарий .js не запускается вообще (ни разу), когда я использую повторение; если бы это было так, то я бы убил процесс wscript.exe после того, как это было сделано.
Так как мне это исправить?
РЕДАКТИРОВАТЬ:
Попробовав создать сценарий .vbs и пакетную программу, чтобы выяснить, неправильная ли задача или сценарий, я обнаружил, что ничего не работает - поэтому я пришел к выводу, что ошибка связана с самой задачей.
Я даже попробовал запустить Internet Explorer прямо из задачи, и даже это не сработало.
То есть: все работает, но не во время повторения <- любое повторение, Я пробовал кучу возможных комбинаций повторения и других настроек, но ничего не работает.
Есть ли секретное правило, скрытое от общественности, которое гласит, что всякий раз, когда активируется повторение, сценарий должен быть написан в обратном порядке на греческом? Потому что я пробовал это, и это не сработало!
Решение было довольно простым, но не очевидным.
Мой исходный сценарий 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
Теперь все работает идеально.