Open tab in existing IE instance

前端 未结 3 1251
醉梦人生
醉梦人生 2020-12-16 18:37
$ie = New-Object -com internetexplorer.application

Everytime i open a new website with this object(ie every time when script runs) it is opened in

相关标签:
3条回答
  • 2020-12-16 18:51

    First you have to attach to the already running Internet Explorer instance:

    $ie = (New-Object -ComObject "Shell.Application").Windows() |
          Where-Object { $_.Name -eq "Windows Internet Explorer" }
    

    Then you Navigate to the new URL. Where that URL is opened is controlled via the Flags parameter:

    $ie.Navigate("http://www.google.com/", 2048)
    

    Edit: In case 2 or more IE instances are running (additional tabs count as additional instances as well) the enumeration will return an array, so you have to select a particular instance from the array:

    $ie[0].Navigate("http://www.google.com/", 2048)
    
    0 讨论(0)
  • 2020-12-16 18:55

    You can use Start-Process to open the URL. If a browser window is already open, it will open as a tab.

    Start-Process 'http://www.microsoft.com'
    
    0 讨论(0)
  • 2020-12-16 19:04

    You can use this if Internet Explorer is not your default browser:

    Function Open-IETabs {
        param (
            [string[]]$Url
        )
        begin {
            $Ie = New-Object -ComObject InternetExplorer.Application
        }
        process {
            foreach ($Link in $Url) {
                $Ie.Navigate2($Link, 0x1000)
            }
        }
        end {
            $Ie.Visible = $true
        } 
    }
    

    I found this on PowerShell.com

    0 讨论(0)
提交回复
热议问题