$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
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)
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'
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