Я хочу запускать iexplore один раз в час, указывая на конкретный URL-адрес, чтобы начать некоторую обработку. Это сервер Windows 2003 с Internet Explorer 7, работающий в усиленной конфигурации безопасности.
Запланированная задача настроена таким образом, чтобы не требовать от пользователя входа в систему, чтобы ее запустить.
Когда я вхожу в систему, я вижу всплывающее окно iexplore и снова исчезаю, и я знаю, что он получил доступ к моему URL-адресу (я установил его, поэтому я получаю электронное письмо).
Когда я не вошел в систему, у меня ничего не запускается с моего URL-адреса, но когда я смотрю на журнал расписания, он говорит, что задача выполнила программу ОК с кодом выхода 0. Поэтому я могу только предположить, что появляется iexplore, но не переходит на требуемый URL.
Связано ли это с «усиленной конфигурацией безопасности» IE?
Что мне нужно сделать, чтобы открыть IE и перейти на мой URL-адрес?
Уточнение: URL-адрес указывает на страницу .aspx, поэтому я бы хотел что-то, что может запустить веб-страницу и не упасть, когда страница .aspx пытается получить доступ к информации о сеансе.
Мне интересно, зачем вам запускать такого гиганта только для того, чтобы получить доступ к URL?
Неважно...
Вот несколько вещей, которые могут помочь:
Все это утилиты командной строки, которые могут облегчить вам жизнь.
Вам действительно нужен полноценный браузер для перехода по этому URL? Или вам просто нужно что-то, что говорит по основному http? Если последнее, попробуйте использовать что-нибудь вроде cURL. Со своего сайта:
curl - это инструмент командной строки для передачи данных с синтаксисом URL, поддерживающий FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS и FILE. curl поддерживает SSL-сертификаты, HTTP POST, HTTP PUT, загрузку по FTP, загрузку на основе HTTP-форм, прокси, файлы cookie, аутентификацию пользователя + пароль (базовая, дайджест, NTLM, согласование, керберос ...), возобновление передачи файлов, туннелирование прокси и куча других полезных трюков.
По сути, он должен обходить любые странные проблемы при попытке запустить IE как запланированную задачу. Он также намного меньше и эффективнее для этой задачи, потому что на самом деле он не отображает ответ от сервера (хотя вы можете сохранить / обработать необработанный html, если хотите).
Я предполагаю, что это связано с этой проблемой: Запланированные задачи с графическим интерфейсом
Некоторые элементы графического интерфейса недоступны, когда пользователь не вошел в систему. Если вам просто нужно получить доступ к URL-адресу, чтобы активировать скрипты на стороне сервера, вы можете использовать cURL для Windows: http://curl.haxx.se/download.html
Не могу сказать, что пытался делать то, что вы делаете, на Windows Server.
Если вы просто хотите сделать HTTP-запрос и выбросить результаты, возможно, вы захотите использовать порт Win32 для GNU wget, а не Internet Explorer.
Чтобы ответить на вопрос, просто передайте URL-адрес в строке cmd:
iexplore http://yoursite.com/yourprocess.asp
Установите для каталога "начало в" значение c:\program files\internet explorer
.
Однако закрыть браузер в неинтерактивном режиме нельзя. Старые трюки с javascript не работают с более новыми версиями IE. Я думаю, что cURL - лучший способ решить ту же задачу.
Я ищу еще лучший способ сделать это, чем использую сейчас. В настоящее время для этого я использую простой сценарий .vbs.
url="http://www.mysite.com/updates.asp"
Set objHTTP = CreateObject("MSXML2.XMLHTTP")
Call objHTTP.Open("GET", url, FALSE)
objHTTP.Send
В запланированной задаче вызовите программу «wscript.exe» и укажите в качестве аргумента полный абсолютный путь к файлу .vbs.