Nerds.dk - Hifi, Stereo & Lyd Community

Skærmskift med VistaMCE/XPMCE

Frontends, operativsystem, hardware, alm. opsætning m.m.

Skærmskift med VistaMCE/XPMCE

Indlægaf Patriarken » tors aug 30, 2007 13:47

Hejsa

Jeg arbejder på en komplet skærmkonfigurationsguide.....Men hvornår den bliver færdig, er usikkert... Her dog lidt til at løse de værste problemer...

En hurtig skærmskifts opskrift til VistaMCE/XPMCE:

Denne metode er den nemmeste metode til at skifte opstartsskærm i forskellige skærmkonfigurationer med VistaMCE/XPMCE. Den bruger pr.usersetting registry entryen til at instille Skærm primærskærm eller sekunder skærm. Dualview/Extended desktop er desuden påkrævet.

Denne metode er Grafikkortuafhængig,  og virker KUN med VistaMCE og XPMCE.

Nuvel...Indstil dit Grafikkort til "DUALVIEW"(Nvidia) eller Extended Desktop (ATI)

Konfigurer derpÃ¥ begge skærmene, sÃ¥ de stÃ¥r optimalt med  MCE maksimeret i live tv med overscan Avivo og alt det gejl man nu kan tænke sig.....

Så er vi klare til at gå i gang:

Nu skal vi lave 2 scripts. Et der aktiverer MCE på skærm nr 1, og et der aktiverer MCE på Skærm nr 2.

Dvs. du skal cut'e og paste nedestående kode til notepad og gemme filen som fx screen1.vbs og screen2.vbs. Læs desuden beskrivelserne af nedenstående med FED Så skulle du være i stand til at udvælge de relevante scripts. Intil videre vil jeg ikke selv hoste scripts på min server, men er der eftersåørgsel, vil jeg overveje det...

Første script lukker MCE hvis det kører, og aktiverer MCE maksimeret på skærm nr 1 og antager, at der er tale om en FLADSKÆRM/COMPUTERMONITOR

Kode: Vælg alt
'----------------------------------------------------------------'
'
'Dette script er lavet til at skifte opstartsskærm for MCE.
'Det er rimeligt simpelt og det eneste der kræves er, at du har
'sat dit grafikkort til at køre i dualview, og herunder indstillet
'begge skærme optimalt mht opløsninger refreshrates osv.
'Da dette er et vbsscript, kræver det at du har administrative
'rettigheder på systemet og/eller at scriptet kørers med "elevated
'priviliges". Linier i scripted der starter med en apostrof (') er
'ikke i funktion. Dvs de er kommenteret ud og derfor inaktive.
'De vigtige steder står der beskrivelser af funktion
'osv så det skulle være ligetil. Scripted Virker således:
'
' 1. MCE lukkes ned for MCE
' 2. Der Skrives til registry
' 3. MCE starter efter ændringer i registry
'
'
'----------------------------------------------------------------'
' Først lukker vi Windows Media Center så vi kan ændre skærmsettings.
'----------------------------------------------------------------'
'________________________________________________________________'
Dim objWMIServicek, objProcessk, colProcessk
Dim strComputerk, strProcessKillk
strComputerk = "."
strProcessKillk = "'ehshell.exe'"
Set objWMIServicek = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!&bkfls;&bkfls;" _
& strComputerk & "&bkfls;root&bkfls;cimv2")
Set colProcessk = objWMIServicek.ExecQuery _
("Select * from Win32_Process Where Name = " & strProcessKillk )
For Each objProcessk in colProcessk
objProcessk.Terminate()
Next
'________________________________________________________________'
' Næste linie (WSCript.Sleep 1500) definerer et delay på 2000ms
' så MCE kan lukke ned og vi kan skrive til registry før MCE
' starter igen. Her kan eksperimenteres, med kortere  eller
' længere delays.(1000ms= 1 sekund)
'________________________________________________________________'
WSCript.Sleep 1500
'________________________________________________________________'
'----------------------------------------------------------------'
' Her kan du importer MCE registry settings fra en custom registry fil
' i "Silent" mode
' med WMI, VBS.
'
' "F:&bkfls;Doc&bkfls;Scripts - Txt - Bat Files&bkfls;flat.reg" kan ændres til en
' anden sti. Denne sektion er ikke enablet. Den er brugbar hvis
' man ønsker at importere en given registry fil med f.eks alle
' pr.user settings i MCE. Så fremt at du vælger dette, skal du sørge for
' at udkommentere
'----------------------------------------------------------------'
'________________________________________________________________'
'Dim objWMIServiceREG, objProcessREG, objREG
'Dim strShellREG, objProgramREG, strComputerREG, strExeREG
'strComputerREG = "."
'strExeREG = ""'c:&bkfls;windows&bkfls;regedit.exe'" /s "'F:&bkfls;Doc&bkfls;Scripts - Txt - Bat Files&bkfls;flat.reg'""
'set objWMIServiceREG = getobject("winmgmts://"_
'& strComputerREG & "/root/cimv2")
'Set objProcessREG = objWMIServiceREG.Get("Win32_Process")
'Set objProgramREG = objProcessREG.Methods_( _
'"Create").InParameters.SpawnInstance_
'objProgramREG.CommandLine = strExeREG
'Set strShellREG = objWMIServiceREG.ExecMethod( _
'"Win32_Process", "Create", objProgramREG)
'________________________________________________________________'
'----------------------------------------------------------------'
' Her bestemmer du så hvilken skærm MCE skal starte på, dette er
' den klart nemmeste måde at benytte dette script.
'----------------------------------------------------------------'
'----------------------------------------------------------------'
' MCE opstart på Skærm nr 1 (Default)
'________________________________________________________________'
Set objShell = CreateObject("WScript.Shell")
objShell.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;monitor" , "&bkfls;&bkfls;.&bkfls;DISPLAY1"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er skærm nr 1 en Computerskærm/Fladskærm? Så skal de næste par linier med
'----------------------------------------------------------------'
'________________________________________________________________'
Set objShellMonitor = CreateObject("WScript.Shell")
objShellMonitor.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "ComputerMonitor"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er Skærm nr 1 et CRT fjernsyn? Så skal de næste par linier med,
' dvs fjern apostrof " ' "
' og kommenter ovenstående to linier, ud med apostrof" ' "
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellCRT = CreateObject("WScript.Shell")
'objShellCRT.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "Television"
'________________________________________________________________'
'----------------------------------------------------------------'
' Klargør til opstart pÃ¥ Skærm nr 2                               '
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShell = CreateObject("WScript.Shell")
'objShell.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;monitor" , "&bkfls;&bkfls;.&bkfls;DISPLAY2"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er skærm nr 2 en Computerskærm/Fladskærm? Så skal de næste par linier med
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellMonitor = CreateObject("WScript.Shell")
'objShellMonitor.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "ComputerMonitor"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er Skærm nr 2 et CRT fjernsyn? Så skal de næste par linier med,
' dvs fjern apostrof " ' "
' og kommenter ovenstående to linier, ud med apostrof" ' "
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellCRT = CreateObject("WScript.Shell")
'objShellCRT.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "Television"
'________________________________________________________________'
'----------------------------------------------------------------'
' Den næste sektion starter MCE på valgte skærm og indtiller til
' fuld skærmmed VBS
'----------------------------------------------------------------'
'________________________________________________________________'
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "c:&bkfls;windows&bkfls;ehome&bkfls;ehshell.exe", 3' (3 = fuld skærm og aktiveret. 1 = normal aktiveret)
'________________________________________________________________'
'----------------------------------------------------------------'
' Enable´/Disable Screensaver
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellScreenSaver = CreateObject("WScript.Shell")
'objShellScreenSaver.RegWrite "HKEY_USERS&bkfls;.DEFAULT&bkfls;Control 'Panel&bkfls;Desktop&bkfls;ScreenSaveActive" , "1"
WSCript.Quit


Næste script lukker MCE hvis det kører, og aktiverer MCE maksimeret på skærm nr 2 og antager, at der er tale om en FLADSKÆRM/COMPUTERMONITOR


Kode: Vælg alt
'----------------------------------------------------------------'
'
'Dette script er lavet til at skifte opstartsskærm for MCE.
'Det er rimeligt simpelt og det eneste der kræves er, at du har
'sat dit grafikkort til at køre i dualview, og herunder indstillet
'begge skærme optimalt mht opløsninger refreshrates osv.
'Da dette er et vbsscript, kræver det at du har administrative
'rettigheder på systemet og/eller at scriptet kørers med "elevated
'priviliges". Linier i scripted der starter med en apostrof (') er
'ikke i funktion. Dvs de er kommenteret ud og derfor inaktive.
'De vigtige steder står der beskrivelser af funktion
'osv så det skulle være ligetil. Scripted Virker således:
'
' 1. MCE lukkes ned for MCE
' 2. Der Skrives til registry
' 3. MCE starter efter ændringer i registry
'
'
'----------------------------------------------------------------'
' Først lukker vi Windows Media Center så vi kan ændre skærmsettings.
'----------------------------------------------------------------'
'________________________________________________________________'
Dim objWMIServicek, objProcessk, colProcessk
Dim strComputerk, strProcessKillk
strComputerk = "."
strProcessKillk = "'ehshell.exe'"
Set objWMIServicek = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!&bkfls;&bkfls;" _
& strComputerk & "&bkfls;root&bkfls;cimv2")
Set colProcessk = objWMIServicek.ExecQuery _
("Select * from Win32_Process Where Name = " & strProcessKillk )
For Each objProcessk in colProcessk
objProcessk.Terminate()
Next
'________________________________________________________________'
' Næste linie (WSCript.Sleep 1500) definerer et delay på 2000ms
' så MCE kan lukke ned og vi kan skrive til registry før MCE
' starter igen. Her kan eksperimenteres, med kortere  eller
' længere delays.(1000ms= 1 sekund)
'________________________________________________________________'
WSCript.Sleep 1500
'________________________________________________________________'
'----------------------------------------------------------------'
' Her kan du importer MCE registry settings fra en custom registry fil
' i "Silent" mode
' med WMI, VBS.
'
' "F:&bkfls;Doc&bkfls;Scripts - Txt - Bat Files&bkfls;flat.reg" kan ændres til en
' anden sti. Denne sektion er ikke enablet. Den er brugbar hvis
' man ønsker at importere en given registry fil med f.eks alle
' pr.user settings i MCE. Så fremt at du vælger dette, skal du sørge for
' at udkommentere
'----------------------------------------------------------------'
'________________________________________________________________'
'Dim objWMIServiceREG, objProcessREG, objREG
'Dim strShellREG, objProgramREG, strComputerREG, strExeREG
'strComputerREG = "."
'strExeREG = ""'c:&bkfls;windows&bkfls;regedit.exe'" /s "'F:&bkfls;Doc&bkfls;Scripts - Txt - Bat Files&bkfls;flat.reg'""
'set objWMIServiceREG = getobject("winmgmts://"_
'& strComputerREG & "/root/cimv2")
'Set objProcessREG = objWMIServiceREG.Get("Win32_Process")
'Set objProgramREG = objProcessREG.Methods_( _
'"Create").InParameters.SpawnInstance_
'objProgramREG.CommandLine = strExeREG
'Set strShellREG = objWMIServiceREG.ExecMethod( _
'"Win32_Process", "Create", objProgramREG)
'________________________________________________________________'
'----------------------------------------------------------------'
' Her bestemmer du så hvilken skærm MCE skal starte på, dette er
' den klart nemmeste måde at benytte dette script.
'----------------------------------------------------------------'
'----------------------------------------------------------------'
' MCE opstart på Skærm nr 1 (Default)
'________________________________________________________________'
'Set objShell = CreateObject("WScript.Shell")
'objShell.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;monitor" , "&bkfls;&bkfls;.&bkfls;DISPLAY1"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er skærm nr 1 en Computerskærm/Fladskærm? Så skal de næste par linier med
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellMonitor = CreateObject("WScript.Shell")
'objShellMonitor.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "ComputerMonitor"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er Skærm nr 1 et CRT fjernsyn? Så skal de næste par linier med,
' dvs fjern apostrof " ' "
' og kommenter ovenstående to linier, ud med apostrof" ' "
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellCRT = CreateObject("WScript.Shell")
'objShellCRT.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "Television"
'________________________________________________________________'
'----------------------------------------------------------------'
' Klargør til opstart pÃ¥ Skærm nr 2 denne setting er IKKE AKTIV  '
'----------------------------------------------------------------'
'________________________________________________________________'
Set objShell = CreateObject("WScript.Shell")
objShell.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;monitor" , "&bkfls;&bkfls;.&bkfls;DISPLAY2"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er skærm nr 2 en Computerskærm/Fladskærm? Så skal de næste par linier med
'----------------------------------------------------------------'
'________________________________________________________________'
Set objShellMonitor = CreateObject("WScript.Shell")
objShellMonitor.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "ComputerMonitor"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er Skærm nr 2 et CRT fjernsyn? Så skal de næste par linier med,
' dvs fjern apostrof " ' "
' og kommenter ovenstående to linier, ud med apostrof" ' "
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellCRT = CreateObject("WScript.Shell")
'objShellCRT.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "Television"
'________________________________________________________________'
'----------------------------------------------------------------'
' Den næste sektion starter MCE på valgte skærm og indtiller til
' fuld skærmmed VBS
'----------------------------------------------------------------'
'________________________________________________________________'
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "c:&bkfls;windows&bkfls;ehome&bkfls;ehshell.exe", 3' (3 = fuld skærm og aktiveret. 1 = normal aktiveret)
'________________________________________________________________'
'----------------------------------------------------------------'
' Enable´/Disable Screensaver ikke aktiveret
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellScreenSaver = CreateObject("WScript.Shell")
'objShellScreenSaver.RegWrite "HKEY_USERS&bkfls;.DEFAULT&bkfls;Control 'Panel&bkfls;Desktop&bkfls;ScreenSaveActive" , "1"
WSCript.Quit


Næste script lukker MCE hvis det kører, og aktiverer MCE maksimeret på skærm nr 1 og antager, at der er tale om et CRT PAL FJERNSYN

Kode: Vælg alt
'----------------------------------------------------------------'
'
'Dette script er lavet til at skifte opstartsskærm for MCE.
'Det er rimeligt simpelt og det eneste der kræves er, at du har
'sat dit grafikkort til at køre i dualview, og herunder indstillet
'begge skærme optimalt mht opløsninger refreshrates osv.
'Da dette er et vbsscript, kræver det at du har administrative
'rettigheder på systemet og/eller at scriptet kørers med "elevated
'priviliges". Linier i scripted der starter med en apostrof (') er
'ikke i funktion. Dvs de er kommenteret ud og derfor inaktive.
'De vigtige steder står der beskrivelser af funktion
'osv så det skulle være ligetil. Scripted Virker således:
'
' 1. MCE lukkes ned for MCE
' 2. Der Skrives til registry
' 3. MCE starter efter ændringer i registry
'
'
'----------------------------------------------------------------'
' Først lukker vi Windows Media Center så vi kan ændre skærmsettings.
'----------------------------------------------------------------'
'________________________________________________________________'
Dim objWMIServicek, objProcessk, colProcessk
Dim strComputerk, strProcessKillk
strComputerk = "."
strProcessKillk = "'ehshell.exe'"
Set objWMIServicek = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!&bkfls;&bkfls;" _
& strComputerk & "&bkfls;root&bkfls;cimv2")
Set colProcessk = objWMIServicek.ExecQuery _
("Select * from Win32_Process Where Name = " & strProcessKillk )
For Each objProcessk in colProcessk
objProcessk.Terminate()
Next
'________________________________________________________________'
' Næste linie (WSCript.Sleep 1500) definerer et delay på 1500ms
' så MCE kan lukke ned og vi kan skrive til registry før MCE
' starter igen. Her kan eksperimenteres, med kortere  eller
' længere delays.(1000ms= 1 sekund)
'________________________________________________________________'
WSCript.Sleep 1500
'________________________________________________________________'
'----------------------------------------------------------------'
' Her kan du importer MCE registry settings fra en custom registry fil
' i "Silent" mode
' med WMI, VBS.
'
' "F:&bkfls;Doc&bkfls;Scripts - Txt - Bat Files&bkfls;flat.reg" kan ændres til en
' anden sti. Denne sektion er ikke enablet. Den er brugbar hvis
' man ønsker at importere en given registry fil med f.eks alle
' pr.user settings i MCE. Så fremt at du vælger dette, skal du sørge for
' at udkommentere
'----------------------------------------------------------------'
'________________________________________________________________'
'Dim objWMIServiceREG, objProcessREG, objREG
'Dim strShellREG, objProgramREG, strComputerREG, strExeREG
'strComputerREG = "."
'strExeREG = ""'c:&bkfls;windows&bkfls;regedit.exe'" /s "'F:&bkfls;Doc&bkfls;Scripts - Txt - Bat Files&bkfls;flat.reg'""
'set objWMIServiceREG = getobject("winmgmts://"_
'& strComputerREG & "/root/cimv2")
'Set objProcessREG = objWMIServiceREG.Get("Win32_Process")
'Set objProgramREG = objProcessREG.Methods_( _
'"Create").InParameters.SpawnInstance_
'objProgramREG.CommandLine = strExeREG
'Set strShellREG = objWMIServiceREG.ExecMethod( _
'"Win32_Process", "Create", objProgramREG)
'________________________________________________________________'
'----------------------------------------------------------------'
' Her bestemmer du så hvilken skærm MCE skal starte på, dette er
' den klart nemmeste måde at benytte dette script.
'----------------------------------------------------------------'
'----------------------------------------------------------------'
' MCE opstart på Skærm nr 1 (Default)
'________________________________________________________________'
Set objShell = CreateObject("WScript.Shell")
objShell.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;monitor" , "&bkfls;&bkfls;.&bkfls;DISPLAY1"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er skærm nr 1 en Computerskærm/Fladskærm? Så skal de næste par linier med
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellMonitor = CreateObject("WScript.Shell")
'objShellMonitor.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "ComputerMonitor"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er Skærm nr 1 et CRT fjernsyn? Så skal de næste par linier med,
' dvs fjern apostrof " ' "
' og kommenter ovenstående to linier, ud med apostrof" ' "
'----------------------------------------------------------------'
'________________________________________________________________'
Set objShellCRT = CreateObject("WScript.Shell")
objShellCRT.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "Television"
'________________________________________________________________'
'----------------------------------------------------------------'
' Klargør til opstart pÃ¥ Skærm nr 2 denne setting er IKKE AKTIV  '
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShell = CreateObject("WScript.Shell")
'objShell.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;monitor" , "&bkfls;&bkfls;.&bkfls;DISPLAY2"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er skærm nr 2 en Computerskærm/Fladskærm? Så skal de næste par linier med
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellMonitor = CreateObject("WScript.Shell")
'objShellMonitor.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "ComputerMonitor"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er Skærm nr 2 et CRT fjernsyn? Så skal de næste par linier med,
' dvs fjern apostrof " ' "
' og kommenter ovenstående to linier, ud med apostrof" ' "
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellCRT = CreateObject("WScript.Shell")
'objShellCRT.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "Television"
'________________________________________________________________'
'----------------------------------------------------------------'
' Den næste sektion starter MCE på valgte skærm og indtiller til
' fuld skærmmed VBS
'----------------------------------------------------------------'
'________________________________________________________________'
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "c:&bkfls;windows&bkfls;ehome&bkfls;ehshell.exe", 3' (3 = fuld skærm og aktiveret. 1 = normal aktiveret)
'________________________________________________________________'
'----------------------------------------------------------------'
' Enable´/Disable Screensaver
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellScreenSaver = CreateObject("WScript.Shell")
'objShellScreenSaver.RegWrite "HKEY_USERS&bkfls;.DEFAULT&bkfls;Control Panel&bkfls;Desktop&bkfls;ScreenSaveActive" , "0"
WSCript.Quit


Næste script lukker MCE hvis det kører, og aktiverer MCE maksimeret på skærm nr 2 og antager, at der er tale om en et CRT PAL FJERNSYN

Kode: Vælg alt
'----------------------------------------------------------------'
'
'Dette script er lavet til at skifte opstartsskærm for MCE.
'Det er rimeligt simpelt og det eneste der kræves er, at du har
'sat dit grafikkort til at køre i dualview, og herunder indstillet
'begge skærme optimalt mht opløsninger refreshrates osv.
'Da dette er et vbsscript, kræver det at du har administrative
'rettigheder på systemet og/eller at scriptet kørers med "elevated
'priviliges". Linier i scripted der starter med en apostrof (') er
'ikke i funktion. Dvs de er kommenteret ud og derfor inaktive.
'De vigtige steder står der beskrivelser af funktion
'osv så det skulle være ligetil. Scripted Virker således:
'
' 1. MCE lukkes ned for MCE
' 2. Der Skrives til registry
' 3. MCE starter efter ændringer i registry
'
'
'----------------------------------------------------------------'
' Først lukker vi Windows Media Center så vi kan ændre skærmsettings.
'----------------------------------------------------------------'
'________________________________________________________________'
Dim objWMIServicek, objProcessk, colProcessk
Dim strComputerk, strProcessKillk
strComputerk = "."
strProcessKillk = "'ehshell.exe'"
Set objWMIServicek = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!&bkfls;&bkfls;" _
& strComputerk & "&bkfls;root&bkfls;cimv2")
Set colProcessk = objWMIServicek.ExecQuery _
("Select * from Win32_Process Where Name = " & strProcessKillk )
For Each objProcessk in colProcessk
objProcessk.Terminate()
Next
'________________________________________________________________'
' Næste linie (WSCript.Sleep 1500) definerer et delay på 2000ms
' så MCE kan lukke ned og vi kan skrive til registry før MCE
' starter igen. Her kan eksperimenteres, med kortere  eller
' længere delays.(1000ms= 1 sekund)
'________________________________________________________________'
WSCript.Sleep 1500
'________________________________________________________________'
'----------------------------------------------------------------'
' Her kan du importer MCE registry settings fra en custom registry fil
' i "Silent" mode
' med WMI, VBS.
'
' "F:&bkfls;Doc&bkfls;Scripts - Txt - Bat Files&bkfls;flat.reg" kan ændres til en
' anden sti. Denne sektion er ikke enablet. Den er brugbar hvis
' man ønsker at importere en given registry fil med f.eks alle
' pr.user settings i MCE. Så fremt at du vælger dette, skal du sørge for
' at udkommentere
'----------------------------------------------------------------'
'________________________________________________________________'
'Dim objWMIServiceREG, objProcessREG, objREG
'Dim strShellREG, objProgramREG, strComputerREG, strExeREG
'strComputerREG = "."
'strExeREG = ""'c:&bkfls;windows&bkfls;regedit.exe'" /s "'F:&bkfls;Doc&bkfls;Scripts - Txt - Bat Files&bkfls;flat.reg'""
'set objWMIServiceREG = getobject("winmgmts://"_
'& strComputerREG & "/root/cimv2")
'Set objProcessREG = objWMIServiceREG.Get("Win32_Process")
'Set objProgramREG = objProcessREG.Methods_( _
'"Create").InParameters.SpawnInstance_
'objProgramREG.CommandLine = strExeREG
'Set strShellREG = objWMIServiceREG.ExecMethod( _
'"Win32_Process", "Create", objProgramREG)
'________________________________________________________________'
'----------------------------------------------------------------'
' Her bestemmer du så hvilken skærm MCE skal starte på, dette er
' den klart nemmeste måde at benytte dette script.
'----------------------------------------------------------------'
'----------------------------------------------------------------'
' MCE opstart på Skærm nr 1 (Default)
'________________________________________________________________'
'Set objShell = CreateObject("WScript.Shell")
'objShell.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;monitor" , "&bkfls;&bkfls;.&bkfls;DISPLAY1"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er skærm nr 1 en Computerskærm/Fladskærm? Så skal de næste par linier med
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellMonitor = CreateObject("WScript.Shell")
'objShellMonitor.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "ComputerMonitor"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er Skærm nr 1 et CRT fjernsyn? Så skal de næste par linier med,
' dvs fjern apostrof " ' "
' og kommenter ovenstående to linier, ud med apostrof" ' "
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellCRT = CreateObject("WScript.Shell")
'objShellCRT.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "Television"
'________________________________________________________________'
'----------------------------------------------------------------'
' Klargør til opstart pÃ¥ Skærm nr 2 denne setting er IKKE AKTIV  '
'----------------------------------------------------------------'
'________________________________________________________________'
Set objShell = CreateObject("WScript.Shell")
objShell.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;monitor" , "&bkfls;&bkfls;.&bkfls;DISPLAY2"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er skærm nr 2 en Computerskærm/Fladskærm? Så skal de næste par linier med
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellMonitor = CreateObject("WScript.Shell")
'objShellMonitor.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "ComputerMonitor"
'________________________________________________________________'
'----------------------------------------------------------------'
' Er Skærm nr 2 et CRT fjernsyn? Så skal de næste par linier med,
' dvs fjern apostrof " ' "
' og kommenter ovenstående to linier, ud med apostrof" ' "
'----------------------------------------------------------------'
'________________________________________________________________'
Set objShellCRT = CreateObject("WScript.Shell")
objShellCRT.RegWrite "HKEY_CURRENT_USER&bkfls;Software&bkfls;Microsoft&bkfls;Windows&bkfls;CurrentVersion&bkfls;Media Center&bkfls;Settings&bkfls;MCE.PerUserSettings&bkfls;optimizefor" , "Television"
'________________________________________________________________'
'----------------------------------------------------------------'
' Den næste sektion starter MCE på valgte skærm og indtiller til
' fuld skærmmed VBS
'----------------------------------------------------------------'
'________________________________________________________________'
Dim WshShell
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run "c:&bkfls;windows&bkfls;ehome&bkfls;ehshell.exe", 3' (3 = fuld skærm og aktiveret. 1 = normal aktiveret)
'________________________________________________________________'
'----------------------------------------------------------------'
' Enable´/Disable Screensaver
'----------------------------------------------------------------'
'________________________________________________________________'
'Set objShellScreenSaver = CreateObject("WScript.Shell")
'objShellScreenSaver.RegWrite "HKEY_USERS&bkfls;.DEFAULT&bkfls;Control Panel&bkfls;Desktop&bkfls;ScreenSaveActive" , "0"
WSCript.Quit


Edit....Der er fejl i indrykningen af kode og (\) optræder som garbage.....Fixer det i eftermiddag...

mvh Anders
Don't be to proud of this technological terror you've constructed, the abillity to destroy a planet is insignificant next to the power of the force.
Brugeravatar
Patriarken
Seniormedlem
 
Indlæg: 594
Tilmeldt: tors mar 22, 2007 21:14
Geografisk sted: Aalborg

Indlægaf Binne » fre sep 21, 2007 12:31

Kører med Vista nu og ville prøve denne guide. Har de nyeste driver installeret. Har et 7600GT kort i, nview installeret. Sat begge skærme op med den opløsning som jeg vil kører.
Mit plasma vil jeg dog kører med 720P men vil gerne ændre for overscan og kan ikke finde det under her, virkede fint i 2K5, nogen der ved hvor det er?
Når du loader profiler, så er det stadig med ektended skrivebord korrekt og ikke single screen alene? I 2K5 kører jeg med en skærm afgangen og loaded profil til at skifte skærm, men synes heller ikke dette duer her i vista, kan kun få den til at loaded at jeg har 2 skærme til og så vælger jeg hvilken der skal være primary, eller gør jeg noget forkert?

\René
Glem ikke at huske Længe efter glæden over en lav pris er glemt huskes ærgelsen over en dårlig kvalitet.

QX6700 i MCE og QX 9650 ialm core I7 comming up
Pioneer 427XD
Brugeravatar
Binne
Entusiastmedlem
 
Indlæg: 129
Tilmeldt: tors maj 10, 2007 16:01
Geografisk sted: KBH

Indlægaf Patriarken » fre sep 21, 2007 13:27

Hejsa Rene

Med denne metode behøver du ikke at "loade" profiler....


Du kan starte mce på den ene eller den anden skærm, med hver sit script....


skærm 1: Starter du med ét script:

skærm 2:Starter du med et andet script.

ovenstående scripts er fucked pga php hvor \ er lig escape character angiveligt....og derfor optræder som "&bkfls;".....

men laver du en search/replace på"&bkfls;" med \ i notepad.....vil det virke...

Der er implementeret en mulighed for at bruge en eksporteret reg fil hvor der indgår overscansettings... Du skal bare udkommentere iflg scriptet og skrive den fulde sti til din ekspoterede HKCU \....Pr.usersettings reg fil.....

Jeg kan godt forklare nærmere, men jeg er ved at kode en service der kan starte MCE pÃ¥ forskellige skærme og selvf disable/enable  MediaFoundation...

Der kommer til at gå en uges tid førend jeg er færdig med en installer og en applikation der kan køre fejlfrit på Vista though....

Jeg har meget travlt for tiden med arbejde og skole, så det går ikke så hurtigt....

mvh Anders
Senest rettet af Patriarken fre sep 21, 2007 14:32, rettet i alt 1 gang.
Don't be to proud of this technological terror you've constructed, the abillity to destroy a planet is insignificant next to the power of the force.
Brugeravatar
Patriarken
Seniormedlem
 
Indlæg: 594
Tilmeldt: tors mar 22, 2007 21:14
Geografisk sted: Aalborg

Indlægaf Binne » fre sep 21, 2007 14:08

Jamen ingen pres herfra, ikke sÃ¥ meget ihvetfald  :wink:

Jeg venter vist bare til du er færdig, dog er jeg stadig lidt i tvivl. Skal Nview så sættes til single skærm? og ikke extended ?
Hvor ligger overscan i de nye Nview driver, for kan ikke finde det? før var der en knap og 4 pile man rettede skærmen ind efter og så ændrede den opløsning lidt, men skrev stadig 720P

\René
Glem ikke at huske Længe efter glæden over en lav pris er glemt huskes ærgelsen over en dårlig kvalitet.

QX6700 i MCE og QX 9650 ialm core I7 comming up
Pioneer 427XD
Brugeravatar
Binne
Entusiastmedlem
 
Indlæg: 129
Tilmeldt: tors maj 10, 2007 16:01
Geografisk sted: KBH


Tilbage til HTPC


Hvem er online

Brugere der læser dette forum: Ingen tilmeldte og 2 gæster

Brugermenu

Brugernavn:

Adgangskode:

Markedspladsen

Der er ingen annoncer på brugtmarkedet pt.