1

У меня есть несколько сайтов, которые я должен отслеживать как часть моей работы. Я создал .vbs (хотя при устранении неполадок в этой проблеме я также создал и имел ту же проблему с файлами .js и .bat). Этот файл просто открывает новое окно Internet Explorer, а затем помещает новую вкладку для каждого веб-сайта, который мне понадобится. Это код:

Const navOpenInBackgroundTab = &H1000

site1 = "http://www.google.com"
site2 = "http://www.yahoo.com"
site3 = "http://www.bing.com"
site4 = "http://www.duckduckgo.com"

Set oIE = CreateObject("InternetExplorer.Application")

oIE.Visible = True
oIE.Navigate2 site1
oIE.Navigate2 site2,navOpenInBackgroundTab
oIE.Navigate2 site3,navOpenInBackgroundTab
oIE.Navigate2 site4,navOpenInBackgroundTab

Set oIE = Nothing

Выполнение этого файла было для меня безупречным, и я смог настроить его на автоматический запуск через планировщик, чтобы до недавнего времени автоматизировать мониторинг моих задач. Теперь, когда я запускаю его, он открывает только первые 2 вкладки, независимо от того, сколько ссылок у меня есть как часть сценария.

Я искал интернет в поисках решения по этому вопросу и ничего не нашел. Есть некоторые другие компьютеры, на которых я могу заставить это работать должным образом, хотя больше не мой. Это просто какой-то параметр Windows, который запрещает скрипту правильно открывать все вкладки? Где я должен искать, чтобы изменить / исправить это?

Заранее благодарю за любую помощь.

1 ответ1

0

Попробуйте этот vbscript:

Option Explicit
Dim oIE,site1,URL,ArrayURLS
Set oIE = CreateObject("InternetExplorer.Application")
site1 = "http://www.duckduckgo.com"
oIE.Visible = True
oIE.Navigate2 site1

ArrayURLS = Array("http://www.google.com","http://www.yahoo.com","https://superuser.com",_
"https://stackoverflow.com","https://security.stackexchange.com/","https://pastebin.com")

For Each URL In ArrayURLS
    Call OpenTab(URL)
Next

Set oIE = Nothing
wscript.quit
'**********************************************
Sub OpenTab(URL)
Const navOpenInBackgroundTab = &H1000
    oIE.Visible = True
    oIE.Navigate2 URL,navOpenInBackgroundTab
    Do
        WScript.Sleep 100
    Loop While oIE.Busy
End sub
'********************************************

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .