從批次檔開啟多個 Microsoft Edge 視窗

從批次檔開啟多個 Microsoft Edge 視窗

我需要從批次檔開啟 2 個 Edge 視窗(不是兩個選項卡,2 個視窗)。我知道我可以使用以下命令啟動 Edge:

start microsoft-edge:

但如果我嘗試兩次,第二個命令將不會執行任何操作。如果我嘗試使用 URL,我會在同一視窗中看到 2 個標籤。例如

start microsoft-edge:http://google.com
start microsoft-edge:http://bing.com

有什麼想法如何獲得 2 個獨立的窗口嗎?

答案1

可能是一種更簡單的方法,但我只是在發送下一個啟動命令之前發送了一個新視窗的 CTRL+N 按鍵。這對我有用。 (另存為 .ps1 用於 powershell)

start microsoft-edge:http://google.com 
$wshell = New-Object -ComObject wscript.shell;
$wshell.AppActivate('Google - Microsoft Edge')
Sleep 2
$wshell.SendKeys('(^(n))')
Sleep 2
start microsoft-edge:http://yahoo.com 

app.activate 行中顯示「Google - Microsoft Edge」的行需要替換為您的第一個網站標題視窗文字。將滑鼠懸停在螢幕底部的邊緣圖示上(僅打開該網站)會告訴您它是什麼。

**編輯截至 2019 年 8 月 8 日的工作版本

start microsoft-edge:http://google.com 
start microsoft-edge:http://yahoo.com 
$wshell = New-Object -ComObject wscript.shell;
$wshell.AppActivate('Google - Microsoft Edge')
Sleep 2
$wshell.SendKeys('(^(+(n)))')

答案2

這是從批次檔啟動多個 Edge 實例的替代技術。您可以使用批次檔中呼叫的免費第 3 方應用程式EdgeLaunch.exe(任意次數!)

EdgeLaunch.exe http://www.FirstInstance.com
EdgeLanuch.exe http://www.SecondInstance.com
etc...

http://www.emmet-gray.com/Articles/EdgeLaunch.html

PS:我是作者

答案3

啟動進程-FilePath msedge -ArgumentList '--new-tabhttp://www.FirstInstance.com

啟動進程-FilePath msedge -ArgumentList '--new-windowhttp://www.FirstInstance.com

你嘗試過這些嗎?仍然有效!

答案4

這比 Joske 的回答更詳細一些。無需 SendKeys 或第 3 方工具!就放- 新窗戶在 $urls 數組中每個字串的開頭。 (也可以/代替使用- 新標籤

# Open web apps in new tabs or windows
# Must wrap arguments in quotes because double-hyphens in PowerShell are the unary operator
# Without the quotes, you get this error: Missing expression after unary operator '--'

[String[]]$urls =
  @(
    '--new-window https://www.google.com'
    '--new-window https://docs.microsoft.com'
    '--new-window https://youtube.com'
  )

foreach ($url in $urls) {
  Start-Process "${env:ProgramFiles(x86)}\Microsoft\Edge\Application\msedge.exe" $url
}

相關內容