使用VBS启动多重IE选项卡并使用用户名和组织填充

时间:2017-04-03 14:17:56

标签: internet-explorer vbscript

我已将其他位置的代码拼凑在一起,它可以打开选项卡并将登录信息放在第一个选项卡上。问题是它覆盖了第一个选项卡,其中包含后续选项卡开头的所有登录信息。只有第一个选项卡接收登录信息。如何将此登录信息发送到每个选项卡,就像我在VBS中一样?

const navOpenInNewTab = &h0800
Set IE = CreateObject("InternetExplorer.Application") 
set WshShell = WScript.CreateObject("WScript.Shell")  
IE.Navigate "https://testurl.com"
IE.Visible = True 
Wscript.Sleep 2000 
ie.Document.getElementById("organization").value = "MyOrg1"
ie.Document.getElementById("userName").value = "esmith1"

IE.Navigate "https://testural.com",CLng(navOpenInNewTab) 
ie.Document.getElementById("organization").value = "MyOrg2"
ie.Document.getElementById("userName").value = "esmith2"
IE.Visible = True

IE.Navigate "https://testural.com",CLng(navOpenInNewTab) 
ie.Document.getElementById("organization").value = "MyOrg3"
ie.Document.getElementById("userName").value = "esmith3"
IE.Visible = True

当代码今天完成时,第一个选项卡包含MyOrg3和esmith3。其他选项卡是空白的。

1 个答案:

答案 0 :(得分:0)

参考:https://msdn.microsoft.com/en-us/library/aa752133(v=vs.85).aspx

注意以异步方式打开新标签页;创建选项卡后,此方法会立即返回,该选项卡可以在新选项卡中的导航开始之前返回。目标选项卡的IWebBrowser2接口不可供调用者使用。 Tab键顺序无法保证,特别是如果连续多次快速调用此方法。

当指定了navOpenInNewWindow或navOpenInNewTab时,调用者没有收到指向新窗口的IWebBrowser2接口的指针,因此没有直接的方法来操作它。