如何从vbscript启动新的浏览器进程

时间:2011-06-20 17:06:33

标签: browser process vbscript

我可以使用

启动默认浏览器(chrome)
call WShell.Run("http://www.google.com", 1, false)

但如果我尝试

call WShell.Run("http://www.google.com", 1, true)

我收到错误:

  

“无法等待过程”

如何在新进程中启动浏览器(可能是IE或Chrome)并等待该进程退出。

请参阅this question了解“为什么?”

3 个答案:

答案 0 :(得分:2)

2019。使用HP UFT(QTP)的VBS

在HP UFT中,我发现了几种通过VBS运行浏览器的方法。
我最喜欢的是 SystemUtil.Run

1.SystemUtil.Run

    strURL = "www.google.com" 
    str_NavigateTo = "https://chesstempo.com/chess-tactics.html#5"
    int_mode_Maximized = 3         
    SystemUtil.Run "iexplore.exe",strURL, , ,3
    SystemUtil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE",  str_NavigateTo,"C:\Program Files\Internet Explorer",  ,int_mode_Maximized 


其中的模式和说明

  • '0隐藏该窗口并激活另一个窗口。
  • '1激活并显示窗口。如果窗口最小化或最大化,则系统会将其还原为原始大小 和位置。在显示窗口时指定此标志 第一次。
  • '2激活窗口并将其显示为最小化窗口。
  • ' 3 -激活窗口并将其显示为最大化窗口。
  • '4以最近的大小和位置显示窗口。活动窗口保持活动状态。
  • '5激活窗口并以其当前大小和位置显示它。
  • '6最小化指定的窗口并激活 Z顺序的下一个顶级窗口。
  • '7将窗口显示为最小化窗口。活动窗口保持活动状态。
  • '8以当前状态显示窗口。活动窗口保持活动状态。
  • '9激活并显示窗口。如果窗口最小化或最大化,则系统会将其还原为原始大小 和位置。恢复最小化窗口时,请指定此标志。

  • '10根据启动应用程序的程序的状态来设置显示状态。


*有关SystemUtil参数的详细说明,请参见: SystemUtil.Run

2。 InvokeApplication

    InvokeApplication "C://Program Files/Internet Explorer/IEXPLORE.EXE http://www.wp.pl"


3.通过WScript.shell的VBScript
如果可执行文件的路径包含空格,请使用Chr(34)确保该路径包含在双引号中。

    Dim oShellSet oShell = CreateObject ("Wscript.shell")'

“示例1-运行批处理文件:

    oShell.run "F://jdk1.3.1/demo/jfc/SwingSet2.bat"

'示例2-运行Java jar文件:

    oShell.run "java -jar F://jdk1.3.1/demo/jfc/SwingSet2/SwingSet2.jar"

“示例3-启动Internet Explorer:

    oShell.Run Chr(34) & "C://Program Files/Internet Explorer/IEXPLORE.EXE" & Chr(34) 

    Set oShell = Nothing


4. IE自动化对象模型

    Set oIE = CreateObject("InternetExplorer.Application")
    oIE.Navigate "http://www.google.com/"
    oIE.Visible = True
        ......
    Set oIE = Nothing


5.使用Windows \“开始” \“运行”对话框。

  • 使用“对象库”对话框中的“添加对象”按钮将Windows“开始”按钮添加到对象库。
  • 打开“运行”对话框(“开始”->“运行”),然后在“对象存储库”中学习“打开”编辑字段和“确定”按钮。
  • 切换到专家视图,然后手动添加行以打开“运行”对话框。
    示例:

    Window("Window").WinButton("Button").ClickWindow("Window").Type("R")
    

    手动输入行以输入信息以启动应用程序,然后单击“运行”对话框中的“确定”按钮。
    示例:

    Dialog("Run").WinEdit("Open:").Type "C://Windows/System32/notepad.exe"
    Dialog("Run").WinButton("OK").Click
    


    1. WebUtil对象

在UFT 14.01更新中,HPE引入了两种用于WebUtil Object的新方法。
LaunchBrowser和LaunchMobileBrowserWithID

    WebUtil.LaunchBrowser Browser, [device_model, device_manufacturer, device_ostype, device_osversion]
    WebUtil.LaunchBrowser "MOBILE_CHROME", "Apple_5s", "Apple", "IOS", "10.1.3"

    WebUtil.LaunchMobileBrowserWithID Browser, device_ostype, device_id
    WebUtil.LaunchMobileBrowserWithID "MOBILE_CHROME", "IOS", "02"


带有更多信息的来源:6 ways to launch your application

答案 1 :(得分:0)

我使用--user-data-dir=/some/directory找到了one way

call Shell.Run("""%userprofile%\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe"" --user-data-dir=/some/directory "http://www.google.com", 1, true)

答案 2 :(得分:0)

我使用此命令打开Goog​​le主页:

call Systemutil.Run("http:www.google.com, 1, true)

它打开了Google主页,没有任何错误。