(バッチ)スクリプトから複数のモニターで複数のChromeフルスクリーンインスタンスを起動する


0

私の目標は、単一のコンピューターから起動した後、複数のモニターに異なるWebコンテンツを全画面で自動的に表示することです。使用したいブラウザはChromeです。Chromeがこれをサポートしておらず、Firefoxがサポートしている場合は問題ありません。

私が好むOSはWindowsですが、Linuxが可能であることが判明した場合、それは問題ありません。

Windowsでは、Chromeブラウザウィンドウの位置を設定し(--window-position =)、Chromeを全画面モードで起動する(--kiosk)ことができます。これらのオプションを組み合わせて使用​​すると、コンピューターに接続した任意のデスクトップ/画面でChrome全画面を起動できます。私はこれをうまく機能させることができました。

ただし、2番目の画面でChromeを全画面表示するためにもう一度同じことをしようとすると、--window-positionパラメーターに使用する座標に関係なく、2番目のChromeウィンドウが最初のウィンドウの上に開きます。

Chromeプロファイルを使用し、Chromeディレクトリをコピーして、2番目のchrome.exeを起動しようとしました。これらすべてが同じ振る舞いをもたらします。

回答:


1

WinApi呼び出しに基づいて独自のPowerShellスクリプトを作成することにしました。

まもなく

スクリプトは次のことを行います。

  1. スクリプトを介してChromeインスタンスを起動します
  2. WinApiを使用して、開始されたウィンドウを見つけ、目的の画面に移動します
  3. 移動したウィンドウにF11キーを送信してフルスクリーンにします(既にフルスクリーンモードでchromeを起動できますが、そのモードでウィンドウを移動するのはそれほど簡単ではありません)
  4. 必要なURLを指定して、他のインスタンスでも同じことを行います。

私の最終的なスクリプト(関数定義はDLLおよび別のヘルパースクリプトに隠されています)は次のようになります。

$chromePath = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
$chromeArguments = '--new-window --incognito'

# &taskkill /im chrome* /F 
Chrome-Kiosk 'http://google.com' -MonitorNum 1 
Chrome-Kiosk 'http://http://www.bbc.com/' -MonitorNum 2 

0

3つの画面で3つのフルスクリーンブラウザを起動できるようにしたのは、次のことを実行することです。

  • Google Chrome、Chromium、Google Chrome Canaryビルドをインストールします。これらは、Chrome / Chromiumブラウザーの3つのバージョンで、Windowsに互いにインストールできます。
  • --window-position=コマンドラインオプションを使用して、異なる画面で各ブラウザを起動します
  • --kioskコマンドラインオプションを使用して、全画面表示にする

これは、最大3つのブラウザインスタンスにしか使用できないため、あまり良い解決策ではありませんが、機能します。

追加のヒント:次の追加のコマンドラインオプションを追加することにより、ブラウザーにバナーと不要なページが表示されなくなります。

--chrome-frame --disable-first-run-ui --no-default-browser-check --disable-translate

0

私はさまざまなユーザープロファイルでそれを解決することができました。

初めて設定するときは、キオスクモードを使用せず、ランダムなユーザーデータディレクトリを使用してChromeを起動します。(これは存在する必要はありません、Chromeはそれを作成します。)

chrome.exe --user-data-dir="%userprofile%/AppData/Local/Google/Chrome/User Data/monitor1" "http://example.com/monitor1.html"

次に、正しいモニターに移動して、Chromeを再度閉じます。(位置はユーザープロファイルに保存されます。)

次に、kisokモードで自動起動して起動します。

chrome.exe --user-data-dir="%userprofile%/AppData/Local/Google/Chrome/User Data/monitor1" --kiosk "http://example.com/monitor1.html"

残りのモニターについても同じことを行います。ユーザーディレクトリが異なるすべてのChromeは完全に独立しています。(また、これを使用して、Chromeでプロキシ設定を個別に実行します。)


0

これは2つのモニターを使用して私のために働いた:

start C:\Users\terminal\AppData\Local\Google\Chrome\Application\chrome.exe --app="http://www.domain1.com" --window-position=0,0 --kiosk --user-data-dir=c:/monitor1

start C:\Users\terminal\AppData\Local\Google\Chrome\Application\chrome.exe --app="http://www.domain2.com" --window-position=1680,0 --kiosk --user-data-dir=c:/monitor2

パラメータの順序は関係があると思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.