offtopic:
Weet niet honderd procent zeker dat dit topic toch niet in CSA moet, maar in Waar hoort mijn topic? staat over CSA: "Het subforum waar je vragen kan stellen over kant en klare clientprogramma's en -scripts" en aangezien dit geen kant en klaar script is denk ik dat die hier goed zit.
Weet niet honderd procent zeker dat dit topic toch niet in CSA moet, maar in Waar hoort mijn topic? staat over CSA: "Het subforum waar je vragen kan stellen over kant en klare clientprogramma's en -scripts" en aangezien dit geen kant en klaar script is denk ik dat die hier goed zit.
Beste tweakers,
Ik heb sinds kort mijn TV aan de andere kant van de kamer via HDMI aangesloten op m'n pc. Ook staan hier 2 monitoren aan gekoppeld.
Nu wil ik graag met één druk op de knop kunnen wisselen tussen de volgende 2 situaties:
- De TV staat aan, audio gaat via HDMI naar TV en de twee monitoren op het bureau staan uit.
- De TV staat uit, audio gaat naar pc speakers, en de twee monitoren op het bureaus staan aan.
- (Alle monitoren staan aan, audio naar speakers, nu voor te testen wel handig, staks niet nodig)
Na flink wat googelen ben ik uitgekomen op NirCmd en MultiMonitorTool, bijden van Nirsoft
Ik heb de volgende scripts geschreven:
Voor de gebruikte commando's, zie:
http://www.nirsoft.net/utils/multi_monitor_tool.html
http://nircmd.nirsoft.net/setdisplay.html
http://nircmd.nirsoft.net/setdefaultsounddevice.html
De schermen in kwestie zijn:
- 'Main' monitor, is normaliter primary: MONITOR\DELA07A\{4d36e96e-e325-11ce-bfc1-08002be10318}\0009 (aangesloten via DVI)
- 'Side' monitor, is nooit primary MONITOR\IVM5398\{4d36e96e-e325-11ce-bfc1-08002be10318}\0008 (Aangesloten via VGA->DVI)
- TV, is primary als output alleen naar TV gaat, MONITOR\GSM0000\{4d36e96e-e325-11ce-bfc1-08002be10318}\0010 (Aangesloten via HDMI)
Batchfile: TV.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| @ECHO OFF MultiMonitorTool.exe /enable MONITOR\GSM0000\{4d36e96e-e325-11ce-bfc1-08002be10318}\0010 MultiMonitorTool.exe /SetPrimary MONITOR\GSM0000\{4d36e96e-e325-11ce-bfc1-08002be10318}\0010 MultiMonitorTool.exe /disable MONITOR\DELA07A\{4d36e96e-e325-11ce-bfc1-08002be10318}\0009 MultiMonitorTool.exe /disable MONITOR\IVM5398\{4d36e96e-e325-11ce-bfc1-08002be10318}\0008 nircmdc.exe setdisplay monitor:MONITOR\GSM0000\{4d36e96e-e325-11ce-bfc1-08002be10318}\0010 1360 768 32 nircmdc.exe setdefaultsounddevice "LG TV-4" 0 nircmdc.exe setdefaultsounddevice "LG TV-4" 1 nircmdc.exe setdefaultsounddevice "LG TV-4" 2 pause |
Batchfile: PC.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| @ECHO OFF MultiMonitorTool.exe /enable MONITOR\DELA07A\{4d36e96e-e325-11ce-bfc1-08002be10318}\0009 MultiMonitorTool.exe /SetPrimary MONITOR\DELA07A\{4d36e96e-e325-11ce-bfc1-08002be10318}\0009 MultiMonitorTool.exe /enable MONITOR\IVM5398\{4d36e96e-e325-11ce-bfc1-08002be10318}\0008 MultiMonitorTool.exe /disable MONITOR\GSM0000\{4d36e96e-e325-11ce-bfc1-08002be10318}\0010 nircmdc.exe setdisplay MONITOR\DELA07A\{4d36e96e-e325-11ce-bfc1-08002be10318}\0009 1920 1200 32 nircmdc.exe setdisplay MONITOR\IVM5398\{4d36e96e-e325-11ce-bfc1-08002be10318}\0008 1680 1050 32 nircmdc.exe setdefaultsounddevice "Speakers" 0 nircmdc.exe setdefaultsounddevice "Speakers" 1 nircmdc.exe setdefaultsounddevice "Speakers" 2 pause |
Batchfile: Alles.bat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| @ECHO OFF MultiMonitorTool.exe /enable MONITOR\GSM0000\{4d36e96e-e325-11ce-bfc1-08002be10318}\0010 MultiMonitorTool.exe /enable MONITOR\DELA07A\{4d36e96e-e325-11ce-bfc1-08002be10318}\0009 MultiMonitorTool.exe /SetPrimary MONITOR\DELA07A\{4d36e96e-e325-11ce-bfc1-08002be10318}\0009 MultiMonitorTool.exe /enable MONITOR\IVM5398\{4d36e96e-e325-11ce-bfc1-08002be10318}\0008 nircmdc.exe setdisplay monitor:MONITOR\GSM0000\{4d36e96e-e325-11ce-bfc1-08002be10318}\0010 1360 768 32 nircmdc.exe setdisplay MONITOR\DELA07A\{4d36e96e-e325-11ce-bfc1-08002be10318}\0009 1920 1200 32 nircmdc.exe setdisplay MONITOR\IVM5398\{4d36e96e-e325-11ce-bfc1-08002be10318}\0008 1680 1050 32 nircmdc.exe setdefaultsounddevice "Speakers" 0 nircmdc.exe setdefaultsounddevice "Speakers" 1 nircmdc.exe setdefaultsounddevice "Speakers" 2 pause |
TV.bat werkt foutloos.
Maar als ik dan vanuit die situatie PC.bat of Alles.bat draai, gaan de monitoren op mn desktop niet aan. (En m'n TV ook niet uit, maar dat lijkt me wel logisch, dat je niet het enige aanstaande scherm kan afsluiten)
Nu had ik eerst de volgordes van de commandos wat vreemd (primary monitor uitschakelen, monitor primary maken die nog niet aan staat, etc.) maar voor zo ver ik zie is dat er nu uit.
Ik heb eerlijk gezegd geen idee meer waar het aan kan liggen.
Nu heb ik wel een bachelor informatica op zak, maar ik heb nauwlijks ervaring met batchfiles dus het zou ook nog kunnen dat ik ergen een domme beginnersfout maak.
[ Voor 3% gewijzigd door Polbeer91 op 12-01-2016 00:26 ]