2013-02-12 2 views
1

Я хотел бы, чтобы мой VB-скрипт переходил на URL-адрес в фоновом режиме. Он может открыть браузер в фоновом режиме и закрыть его потом. Чем больше «тихий», тем лучше. У меня было 2 реализаций, которые работают на моей машине, но не работает на другом:VBS, идущий к URL-адресу в фоновом режиме

Set WshShell = WScript.CreateObject("WScript.Shell") 
Return = WshShell.Run("iexplore.exe " & myURL, 1) 

Вот еще:

Set objExplorer = WScript.CreateObject _ 
("InternetExplorer.Application", "IE_") 
objExplorer.Navigate myURL 
'Determines if the window is visible or not 
objExplorer.Visible = 0 
'Suspend the script for 1 minute 
WScript.Sleep 6000 
'Close the IE (instantiated) window 
objExplorer.quit 

... где myURL переменная строка, содержащая URL.

Я не могу понять, почему одно из вышеперечисленных работ работает на моем ноутбуке, но не на сервере. Любая помощь будет оценена по достоинству.

ответ

5

Если вы ищете тихий подход, который я предложил бы уронить объект Internet Explorer COM полностью и пойти на XMLHttpRequest объекта:

myURL = "http://www.google.com/" 

Set req = CreateObject("MSXML2.XMLHTTP.6.0") 
req.Open "GET", myURL, False 
req.Send 

WScript.Echo req.ResponseText 
+0

ли исполняющее пользователь должно иметь определенное разрешения сделать так? – PLui

+0

Ему нужно разрешение на чтение и выполнение скрипта. –

-1
Set WshShell = WScript.CreateObject("WScript.Shell") 
Return = WshShell.Run("iexplore.exe " & myURL, 1) 
WScript.Sleep 10000 
WshShell.SendKeys "{F6}" 
WScript.Sleep 500 
WshShell.SendKeys "y" 
WScript.Sleep 500 
WshShell.SendKeys "o" 
WScript.Sleep 500 
WshShell.SendKeys "u" 
WScript.Sleep 500 
WshShell.SendKeys "t" 
WScript.Sleep 500 
WshShell.SendKeys "u" 
WScript.Sleep 500 
WshShell.SendKeys "b" 
WScript.Sleep 500 
WshShell.SendKeys "e" 
WScript.Sleep 500 
WshShell.SendKeys "{ENTER}" 
WScript.Sleep 500 
Смежные вопросы