如何在Powershell中获得每个Firefox窗口的句柄?
我试图获得firefox进程打开的每个窗口的句柄。我的用例如下:在一台处于kiosk模式的计算机上,我在启动时使用powershell脚本在特定URL打开firefox。该URL指向一个应用程序,该应用程序打开一个新窗口,方便地禁用URL栏的使用,从而阻止用户浏览web。我的问题是旧窗口仍然打开,我想通过相同的powershell脚本以编程方式关闭它。虽然,这两个窗口的名称完全相同,所以我不能用这个来区分它们 我试着列出firefox进程的windows句柄,但由于只有一个句柄,所以它不起作用。我也尝试过关闭该进程的主窗口,但由于弹出窗口出现在前面,因此它被视为主窗口,因此这是关闭的窗口 必须有一种方法来选择正确的窗口并关闭它,因为它可以通过任务管理器完成如何在Powershell中获得每个Firefox窗口的句柄?,powershell,firefox,Powershell,Firefox,我试图获得firefox进程打开的每个窗口的句柄。我的用例如下:在一台处于kiosk模式的计算机上,我在启动时使用powershell脚本在特定URL打开firefox。该URL指向一个应用程序,该应用程序打开一个新窗口,方便地禁用URL栏的使用,从而阻止用户浏览web。我的问题是旧窗口仍然打开,我想通过相同的powershell脚本以编程方式关闭它。虽然,这两个窗口的名称完全相同,所以我不能用这个来区分它们 我试着列出firefox进程的windows句柄,但由于只有一个句柄,所以它不起作用。
编辑:作为补充,我想说的是,我尝试了中提到的内容,但也不起作用。我设法通过将firefox作为隐藏窗口启动来避免我的问题。然后弹出窗口正确出现,我对结果感到满意
$firefox = Start-Process -FilePath "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -ArgumentList "https://myurl" -WindowStyle hidden
Start-Sleep -Seconds 2
Show-Process -Process $firefox
在这种情况下,
Get Process firefox
的结果只返回一行?是的,返回一行:(我试过这样做:顺便说一句,它也不起作用