我需要从批处理文件打开 2 个 Edge 窗口(不是两个选项卡,而是 2 个窗口)。我知道我可以使用以下命令启动 Edge:
start microsoft-edge:
但如果我尝试两次,第二个命令没有任何作用。如果我尝试使用 URL,我会在同一个窗口中获得 2 个选项卡。例如
start microsoft-edge:http://google.com
start microsoft-edge:http://bing.com
关于如何获得两个独立窗口,有什么想法吗?
答案1
这可能是一种更简单的方法,但我在发送下一个启动命令之前,只是发送了 CTRL+N 键以打开新窗口。这对我来说很有效。(保存为 powershell 的 .ps1)
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”需要替换为您的第一个网站标题窗口文本。将鼠标悬停在屏幕底部的 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 的多个实例的替代方法。您可以使用批处理文件中调用的免费第三方应用程序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 或第三方工具!只需输入- 新窗户在 $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
}