Zum Inhalt wechseln

Welcome to MCE-Community.de
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Foto

Instantby und Extender


  • Bitte melde dich an um zu Antworten
9 Antworten in diesem Thema

#1
Ostrich

Ostrich

    team-mediaportal.de

  • SpecialMember
  • PIPPIPPIPPIPPIPPIPPIP
  • 3.461 Beiträge
  • Geschlecht:Männlich
  • Heimatort:Göttingen
Hallo miteinander :-)

Instantby kam bei mir immer dann zum Einsatz, wenn Gerätetreiber oder Windows selbst den regulären S3/S4-Modus verweigerte, im aktuellen System meiner Signatur benötige ich es nicht. Auf meiner Testplattform und möglicherweise baldigen Produktivplattform kommt es jedoch (leider) wieder auf mich zu. Pinnacle Dual Sat Pro & UDR 1.0.0.8 mögen sich so gar nicht alleine schlafen legen. Vielleicht ist aber auch nur mein Testsystem, ein Pundit P1-AH2 schuld? Ich möchte hier nicht über die Ursachen mangelhaften Standby-Verhaltens verschiedener Hardware/Software-Kombinationen philosophieren!

@MicF: Danke für Deinen kostenlosen Einsaz und Support!

Natürlich könnte ich auch einfach die Hardware ersetzen und mir 2xDE holen, nur möchte ich momentan so viel geld nicht ausgeben. Auch 2xNova-SE2 für weniger Geld wären ja möglich, nur kommt dann möglicherweise der dual-core-bug ins Spiel, so dass ich diesen Gedanken erstmal verworfen habe.

Was für mich den Einsatz von Instantby erschwert, ist die nicht vorhandene Extenderunterstützung. Ich werde überwiegend, wegen der räumlichen Gegebenheiten, via xbox360 auf das System zugreifen. genau diese Zugriffe werden jedoch vom Tool gar nicht registriert, der Idle-Timeout läuft und irgendwann verabschiedet sich das ganze System, weil instantby es herunterfährt. Wie kann ich das nun beeinflussen?

Aus der Beschreibung geht hervor, dass in der konfigurationsdatei eine liste von Prozessen eingetragen werden kann, bei deren Vorhandensein/Aktivsein ein herunterfahren ausgeschlossen wird. Guter Ansatz! Nur wie weiter? Ich habe mal geschaut, dass im taskmanager auf dem VMC-System Prozesse auftauchen, die nicht dem angemeldetem Benutzer, sondern dem Extender zuzuordnen sind.

liste der Prozesse:
ehshell.exe
wmplayer.exe
mcrmgr.exe
ehmasas.exe
taskeng.exe
ehtray.exe
dwm.exe
rdpclip.exe

Sie tauchen jeweils unter dem benutzer "MCX1" auf.

@MicF: Gibt es eine Methode, mit der neben dem Prozessnamen auch der Benutzername ausgewertet ausgewertet werden werden?


Gruß
Harald

Bearbeitet von Ostrich, 07 August 2007 - 11:59 .

Server: Core i5-2400, 8GB DDR3, MSI H67MA-E35, 1x1TB WD10EADS + 2TB WD20EADS, 1xDD Cine S2 W7x64
Client1 WZ: AMD A6 3650, 4GB DDR3, MSI A75MA-G55, SSD 1x60GB OCZ Vertex II , W 7 x86
Client2 SZ: AMD Athlon II 240, 2GB DDR3, MB ASRock M3A785GMH/128M, Samsung HM160HI, W7 x86
Client3 GZ: AMD A4 3300, 4GB DDR3, GA-A55M-S2V, Seagate ST250LT021, W7 x64




#2
Ostrich

Ostrich

    team-mediaportal.de

  • SpecialMember
  • PIPPIPPIPPIPPIPPIPPIP
  • 3.461 Beiträge
  • Geschlecht:Männlich
  • Heimatort:Göttingen
*Cleaned*

Bearbeitet von Ostrich, 14 August 2007 - 15:35 .

Server: Core i5-2400, 8GB DDR3, MSI H67MA-E35, 1x1TB WD10EADS + 2TB WD20EADS, 1xDD Cine S2 W7x64
Client1 WZ: AMD A6 3650, 4GB DDR3, MSI A75MA-G55, SSD 1x60GB OCZ Vertex II , W 7 x86
Client2 SZ: AMD Athlon II 240, 2GB DDR3, MB ASRock M3A785GMH/128M, Samsung HM160HI, W7 x86
Client3 GZ: AMD A4 3300, 4GB DDR3, GA-A55M-S2V, Seagate ST250LT021, W7 x64

#3
Ostrich

Ostrich

    team-mediaportal.de

  • SpecialMember
  • PIPPIPPIPPIPPIPPIPPIP
  • 3.461 Beiträge
  • Geschlecht:Männlich
  • Heimatort:Göttingen
Moin,
na, keiner mit Extender und Instantby unter uns? Bei mir sind es (wahrscheinlich) die stargate-treiber der Pinnacle dual sat pro karte, die ein "reguläres" S3/S4-verhalten unter Vista verhindern. Habe eine für mich individuell "zusammengetrickste" Lösung erarbeitet, wobei über ein script (wsh) extenderaktivitäten abgefragt werden und bei vorhandenem extender ein kleines programm (notepad.exe) versteckt gestartet wird. bei nicht (mehr) aktivem extender wird es dann entsprechen gekillt. Ich habe dann noch "notepad" in das Config-File von Instantby eingetragen und alles funzt wie es soll.

Wenn jemand Interesse hat, einfach hier posten!
Server: Core i5-2400, 8GB DDR3, MSI H67MA-E35, 1x1TB WD10EADS + 2TB WD20EADS, 1xDD Cine S2 W7x64
Client1 WZ: AMD A6 3650, 4GB DDR3, MSI A75MA-G55, SSD 1x60GB OCZ Vertex II , W 7 x86
Client2 SZ: AMD Athlon II 240, 2GB DDR3, MB ASRock M3A785GMH/128M, Samsung HM160HI, W7 x86
Client3 GZ: AMD A4 3300, 4GB DDR3, GA-A55M-S2V, Seagate ST250LT021, W7 x64

#4
MicF

MicF

    Inventar

  • SpecialMember Pro
  • PIPPIPPIPPIPPIPPIPPIP
  • 2.252 Beiträge
  • Geschlecht:Männlich
  • Heimatort:Secret Capital of Pop
Sorry stolpere erst jetzt über den Thread.

Mit dem Extender ist das so eine Sache. Der Prozess ist immer eShell, somit ist das nicht nutzbar dafür.
Ich hatte mir auch mal angeschaut, wie man den User aus den Prozessen rauslesen kann. Das war aber nicht so ohne weiteres schnell umzusetzen.

Deine Lösung ist auf jedenfall Kreativ! ;)
MicF
------HTPC --------------------------------------------------------
Mainboard: Asus P55P7D Premium
Chipsatz:
intel P55
CPU:
i5 quadcore 2600 Ghz
RAM:
2048 MB DDR3 1333
TVKarte:
2 x FloppyDTV-C MCETVKarte: 3 x HDHomerun Twintuner Network
Grafik:
ATI HD4550 PCIe Lüfterlos
Sound:
onboard
Betriebssystem:
Windows 7 Home Premium

#5
Ostrich

Ostrich

    team-mediaportal.de

  • SpecialMember
  • PIPPIPPIPPIPPIPPIPPIP
  • 3.461 Beiträge
  • Geschlecht:Männlich
  • Heimatort:Göttingen
Danke :-) mir wärs lieber, man könnte das irgendwie einbauen! Hier mal mein Rahmenkonstrukt zur Erkennung mittels wsh:

strComputer = "."
ExtenderAktiv=0
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery("Select * from Win32_Process")

'do
For Each objProcess in colProcessList
colProperties = objProcess.GetOwner(strNameOfUser,strUserDomain)
if strNameOfUser="Mcx1" then
if objProcess.Name="ehshell.exe" then
'Extender aktiv
ExtenderAktiv=1
end if
end if
'Wscript.Echo "Process " & objProcess.Name & " is owned by " _
'& strUserDomain & "\" & strNameOfUser & "."
Next
if ExtenderAktiv>0 then
WScript.Echo "Extender aktiv!"
else WScript.Echo "Extender inaktiv!"
end if
WScript.sleep 30000
ExtenderAktiv=0
'loop

Ein Bekannter von mir, der eigentlich alles mögliche coded, meinte, die wmi-Abfragen lassen sich nicht so gut "umsetzen". Gibts vielleicht ne Chance, aus Instantby selbst heraus entweder das Script so zu starten und entsprechend ein Flag auszuwerten, oder, ist eine ping-abfrage realisierbar?

Kämpfe nämlich grad wieder mit nem System, was nicht schlafen will ...
Server: Core i5-2400, 8GB DDR3, MSI H67MA-E35, 1x1TB WD10EADS + 2TB WD20EADS, 1xDD Cine S2 W7x64
Client1 WZ: AMD A6 3650, 4GB DDR3, MSI A75MA-G55, SSD 1x60GB OCZ Vertex II , W 7 x86
Client2 SZ: AMD Athlon II 240, 2GB DDR3, MB ASRock M3A785GMH/128M, Samsung HM160HI, W7 x86
Client3 GZ: AMD A4 3300, 4GB DDR3, GA-A55M-S2V, Seagate ST250LT021, W7 x64

#6
MicF

MicF

    Inventar

  • SpecialMember Pro
  • PIPPIPPIPPIPPIPPIPPIP
  • 2.252 Beiträge
  • Geschlecht:Männlich
  • Heimatort:Secret Capital of Pop
Wie gesagt, hatte ich es mir auch schonmal angeschaut und weiß, dass man über getOwner drankommt.

Allerdings kommt noch eine zusätzliche Dimension der Prozesse hinzu, da du ja nicht nur ein Prozess, sondern derer mehrere definieren kannst.
Außerdem muss noch das Event, das die Beendigung des Prozesses Überwacht, das dann auch noch machen.

Alles in Allem erhöht es die Komplexität und die Fehleranfälligkeit, was dann wieder zu Unmutsäußerungen führt ala "das funktioniert alles nicht".

Da drauf habe ich, ehrlicherweise, keine Lust.

Mic
MicF
------HTPC --------------------------------------------------------
Mainboard: Asus P55P7D Premium
Chipsatz:
intel P55
CPU:
i5 quadcore 2600 Ghz
RAM:
2048 MB DDR3 1333
TVKarte:
2 x FloppyDTV-C MCETVKarte: 3 x HDHomerun Twintuner Network
Grafik:
ATI HD4550 PCIe Lüfterlos
Sound:
onboard
Betriebssystem:
Windows 7 Home Premium

#7
Ostrich

Ostrich

    team-mediaportal.de

  • SpecialMember
  • PIPPIPPIPPIPPIPPIPPIP
  • 3.461 Beiträge
  • Geschlecht:Männlich
  • Heimatort:Göttingen

Da drauf habe ich, ehrlicherweise, keine Lust.


Find ich schade, wenn auch verständlich! Hier im Folgenden daher mein vollständiger Quelltext

strPrefUser="Mcx1"
strPrefProc="ehshell.exe"
strWaProcess="Notepad.exe"
strLockFile="C:\Windows\ehome\Instantby\Extender.lock"
msTimer=3000
strComputer = "."
ExtenderAktiv=0
WaActive=0




function CreateLockFile()
Dim objFSO, objCreatedFile
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objCreatedFile = objFSO.CreateTextFile(strLockFile, True)
objCreatedFile.Close
end function


function DeleteLockFile()
Dim objFSO, objCreatedFile
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.DeleteFile strLockFile
end function


function CreateProcess()
Const HIDDEN_WINDOW = 0
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set objStartup = objWMIService.Get("Win32_ProcessStartup")
Set objConfig = objStartup.SpawnInstance_
objConfig.ShowWindow = HIDDEN_WINDOW
Set objProcess = GetObject("winmgmts:root\cimv2:Win32_Process")
errReturn = objProcess.Create(StrWaProcess, null, objConfig, intProcessID)
end Function


function KillProcess()
set wmi = getobject("winmgmts:")
sQuery = "select * from win32_process " &_
"where name='" & strWaProcess & "'"
set processes = wmi.execquery(sQuery)
for each process in processes
process.terminate
next
end Function



On Error Resume Next
do
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcessList = objWMIService.ExecQuery("Select * from Win32_Process")
For Each objProcess in colProcessList
colProperties = objProcess.GetOwner(strNameOfUser,strUserDomain)
if strNameOfUser=strPrefUser then
if objProcess.Name=strPrefProc then
'Extender aktiv
ExtenderAktiv=1
end if
end if
Next
if ExtenderAktiv>0 then
'WScript.Echo "Extender aktiv!"
if WaActive=0 then
'CreateProcess
CreateLockfile
WaActive=1
end if
else
'WScript.Echo "Extender inaktiv!"
if WaActive=1 then
'KillProcess
DeleteLockFile
WaActive=0
end if
end if
WScript.sleep msTimer
ExtenderAktiv=0
loop



EDIT: Wird nun über eine Extender.lock-Datei gesteuert!

Wer will, kann sich das gerne nach seinen Bedürfnissen modifizieren und Instantby damit zu Extenderfähigkeit verhelfen

Bearbeitet von Ostrich, 28 August 2007 - 14:46 .

Server: Core i5-2400, 8GB DDR3, MSI H67MA-E35, 1x1TB WD10EADS + 2TB WD20EADS, 1xDD Cine S2 W7x64
Client1 WZ: AMD A6 3650, 4GB DDR3, MSI A75MA-G55, SSD 1x60GB OCZ Vertex II , W 7 x86
Client2 SZ: AMD Athlon II 240, 2GB DDR3, MB ASRock M3A785GMH/128M, Samsung HM160HI, W7 x86
Client3 GZ: AMD A4 3300, 4GB DDR3, GA-A55M-S2V, Seagate ST250LT021, W7 x64

#8
stephanvoegele

stephanvoegele

    Ass

  • Mitglied
  • PIPPIPPIP
  • 164 Beiträge
wie kann ich den quelltext in instandby einfügen?

#9
Ostrich

Ostrich

    team-mediaportal.de

  • SpecialMember
  • PIPPIPPIPPIPPIPPIPPIP
  • 3.461 Beiträge
  • Geschlecht:Männlich
  • Heimatort:Göttingen

wie kann ich den quelltext in instandby einfügen?


GAR NICHT!

Nimm den Text, mache notepad auf und speicher ihn als zbsp. extenderwaechter.vbs auf dem desktop ab. Wenn es so bei Dir funktioniert, kannst Du es (das script) ja per autostart anstarten!
Server: Core i5-2400, 8GB DDR3, MSI H67MA-E35, 1x1TB WD10EADS + 2TB WD20EADS, 1xDD Cine S2 W7x64
Client1 WZ: AMD A6 3650, 4GB DDR3, MSI A75MA-G55, SSD 1x60GB OCZ Vertex II , W 7 x86
Client2 SZ: AMD Athlon II 240, 2GB DDR3, MB ASRock M3A785GMH/128M, Samsung HM160HI, W7 x86
Client3 GZ: AMD A4 3300, 4GB DDR3, GA-A55M-S2V, Seagate ST250LT021, W7 x64

#10
stephanvoegele

stephanvoegele

    Ass

  • Mitglied
  • PIPPIPPIP
  • 164 Beiträge
super.. danke werd ich gleich ausprobieren!






Besucher die dieses Thema lesen: 0

Mitglieder: 0, Gäste: 0, unsichtbare Mitglieder: 0