Il mio objective è quello di mostrare diverse schermate di contenuti web su più monitor automaticamente dopo l'avvio da un singolo computer. Il browser che vorrei utilizzare è Chrome. Se Chrome non support questo e Firefox lo farà bene.
Il sistema operativo che preferirei è Windows, se si scopre che Linux è ansible che sarebbe andato bene.
Su Windows è ansible impostare la posizione della window del browser Chrome (–window-position =) e fare in modo che Chrome si avvia in modalità a schermo integer (- kiosk). L'utilizzo di queste opzioni consente di avviare lo schermo a schermo pieno di Chrome su uno qualsiasi dei desktop / schermate collegati al computer. Sono riuscito a fare questo lavoro.
Tuttavia, se provo a fare la stessa cosa una seconda volta per avere lo schermo a schermo pieno di Chrome in una seconda schermata, la seconda window di Chrome si aprirà nella prima window, indipendentemente dalle coordinate che utilizzi per il parametro di posizionamento a wifi.
Ho provato a utilizzare i profili di Chrome e copiando la directory di Chrome e avviando il secondo chrome.exe. Tutte queste cose comportno lo stesso comportmento.
Il modo in cui sono stato in grado di avviare tre browser a schermo integer su tre schermate è facendo quanto segue:
--window-position=
row di command --kiosk
per renderli a schermo integer Questa non è una soluzione molto bella perché puoi utilizzare questo solo per un massimo di tre istanze del browser, ma funziona.
Suggerimento aggiunto: aggiungendo le seguenti opzioni di row di command aggiuntive il browser non mostrerà banner e pagine indesiderate;
--chrome-frame --disable-first-run-ui --no-default-browser-check --disable-translate
Ho deciso di creare il mio script powershell basato su chiamate WinApi:
Script effettua quanto segue:
Il mio ultimo script (le definizioni delle funzioni sono nascoste in Dll e un altro script di helper) sembra il seguente:
$chromePath = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe' $chromeArguments = '--new-window --inceachto' # &taskkill /im chrome* /F Chrome-Kiosk 'http://google.com' -MonitorNum 1 Chrome-Kiosk 'http://http://www.bbc.com/' -MonitorNum 2
Sono riuscito a risolverlo con diversi profili utente.
La prima volta per impostarla, avvia Chrome, senza modalità di chiosco e con un diretto dati utente. (Questo non deve esistere, Chrome lo crea.)
chrome.exe --user-data-dir="%userprofile%/AppData/Local/Google/Chrome/User Data/monitor1" "http://example.com/monitor1.html"
Poi spostalo per correggere il monitor e chiudere nuovamente Chrome. (La posizione viene salvata nel profilo utente.)
Poi solo per sparare in autostart con modalità kisok:
chrome.exe --user-data-dir="%userprofile%/AppData/Local/Google/Chrome/User Data/monitor1" --kiosk "http://example.com/monitor1.html"
Fai lo stesso per il resto dei monitor. Ogni Chrome con diverse direzioni utente è totalmente indipendente. (Utilizzo anche questo per avere impostazioni separate del proxy su Chrome in esecuzione accanto all'altro.)
Questo ha funzionato per me utilizzando due monitor:
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
Penso che l'ordine dei parametri sia rilevante.