locked
Win 7 Client - Event auslösen bei Hibernate (on/off) RRS feed

  • Frage

  • Hallo zusammen!

    Das war unter WinXP eigentlich nur eine Kleinigkeit: Da wir die Arbeitszeiten in unserer Firma selbst eintragen, habe ich mir ein kleines Script geschrieben, das mitloggt, wenn ich meinen Computer ein/ausschalte. Da ich Programmierer/Admin bin, gehe ich mal davon aus, dass mein Computer rennt wenn ich arbeite.

    Ein/Ausschalten geht ja (Start/Stopscript bei Logon/Logoff), aber meist klapp ich nur meinen Laptop zu (Hibernate). Unter WinXP hatte ich den Hibernate-Trigger, der mir dann i ein Logfile Datum und Zeit eingetragen hat.

    Hibernatetrigger geht nicht unter win7, unter Win7 kann ich mich an das Ereignis Windows-Kernel-Power Id 42 anhängen. Blöd ist nur, dass im Eventlog zwar zur richtigen Zeit "Windows-Kernel-Power Id 42" steht, mein Script aber erst nach dem erneuten Aufwecken gestartet wird. (Also win7 geht sofort in Hibernate, wenn dieses Event ansteht).

    Bin für jeden Lösungsvorschlag dankbar!

    mfg,

    Harald Heigl

    • Verschoben Andrei Talmaciu Donnerstag, 25. November 2010 13:20 Windows 7 Thema (aus:Windows Client)
    Mittwoch, 10. November 2010 09:09

Alle Antworten

  • Hi Harald,

    das vorgelagerte Event scheint PowerTroubleShoter mit ID 1 zu sein.

    Mag sein dass du den Text noch parsen musst, kann ich dir leider nicht mit Bestimmtheit sagen.


    mfg Michael | www.mbormann.de
    Mittwoch, 10. November 2010 20:47
  • Hallo,

    Normalerweise schreib ich gleich zurück, war ne stressige Woche ... . Danke für die Antwort ...

    Also so wie ich das in meinem Eventlog sehe ist PowerTroubleShooter mit ID 1 erst danach zu sehen (nach dem Wakeup), also mit Kernel Power 42 geht das system in den Ruhezustand und mit PowerTroubleShooter mit ID 1 geht das System wieder aus diesem Zustand.

    Ich wollte eigentlich nur mit Kernel Power 42 ein simples Batch-Skript ausführen, dass mir die aktuelle Zeit in eine Datei schreibt, leider bekomme ich dieses Event erst mit dem wake up mit und somit wird mir die Zeit erst nach dem Wakeup geschrieben. Irgendwie dürfte man den Hibernate nicht mehr aufschieben können für die 1-2 s, die ich benötigen würde um den Eintrag vor dem Hibernate zu schreiben ...

    Also ich kann das Eventlog aber irgendwie parsen mit etwas ähnlichem wie dem:

    Get-EventLog -logname system -Source 'Microsoft-Windows-Power-Troubleshooter' | ft TimeGenerated, Message -AutoSize -wrap
    
    
    Naja wollte das eigentlich etwas simpler, andererseits wollte ich mich sowieso schon immer mit Powershell beschäftigen :-)
    Mittwoch, 17. November 2010 20:41