funktioniert .. allerdings nicht ganz ohne strom
google mal wakeonlan
Timer + autom. Aufwecken des PCs, wenn im Ruhezustand ?
Re: Timer + autom. Aufwecken des PCs, wenn im Ruhezustand ?
pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
- NicTheQuick
- Ein Admin
- Beiträge: 8809
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Re: Timer + autom. Aufwecken des PCs, wenn im Ruhezustand ?
Wake On LAN ist ja etwas anderes. Das kenne ich. Aber in diesem Fall hier wird doch ein Software-Timer gesetzt, oder ist dieser spezielle Timer sozusagen in Hardware gegossen und kann im Grunde nur das System wieder aufwecken? Denn Programm-Code direkt über einen Callback ausführen geht ja während des Ruhezustands nicht, weil der Arbeitsspeicher leer ist und kein Programm enthält, das ausgeführt werden kann.
Verstehe ich das dann richtig, dass dieser spezielle Timer zu einer bestimmten Uhrzeit das System wieder startet und ab einem bestimmten Punkt den Callback dann ausführt?
Verstehe ich das dann richtig, dass dieser spezielle Timer zu einer bestimmten Uhrzeit das System wieder startet und ab einem bestimmten Punkt den Callback dann ausführt?
Re: Timer + autom. Aufwecken des PCs, wenn im Ruhezustand ?
Soweit ich mich richtig erinnere muss diese Art von Timer vom Mainboard unterstützt werden, was aber wohl schon seit längerem gang und gäbe ist.
Ich bin gerade dabei zu testen, ob man mittels WaitForSingleObject_() anstatt SleepEx_() den Timer auch abbrechen kann. Könnte das eventuell jemand hiermit nochmal testen:
Ich bin gerade dabei zu testen, ob man mittels WaitForSingleObject_() anstatt SleepEx_() den Timer auch abbrechen kann. Könnte das eventuell jemand hiermit nochmal testen:
Code: Alles auswählen
Procedure TimerStart(Void)
Protected hTimer
Protected ft.FILETIME
TimerAbort = #False
hTimer = CreateWaitableTimer_(#Null, #False, @Title)
If hTimer
OpenWaitableTimer_(#TIMER_MODIFY_STATE, #False, @Title)
LogListAdd("Timer: Created")
DateToFiletime(AddDate(Date(), #PB_Date_Minute, 1), @ft) ; Timer should wait 1 minute
If SetWaitableTimer_(hTimer, @ft, 0, #Null, #Null, #True)
LogListAdd("Timer: Started")
If GetLastError_() = #ERROR_NOT_SUPPORTED
LogListAddError("Info: Waking up not supported")
EndIf
Repeat
Select WaitForSingleObject_(hTimer, 1000) ;;
Case #WAIT_OBJECT_0 ; Alarm
LogListAdd("Timer: Finished successfully")
Break
Case #WAIT_TIMEOUT ; Timeout
If TimerAbort = #True
CancelWaitableTimer_(hTimer)
LogListAdd("Timer: Aborted")
Break
EndIf
Case #WAIT_FAILED ; Error
Break
EndSelect
ForEver
Else
LogListAddError("Timer: Not started!")
EndIf
CloseHandle_(hTimer)
Else
LogListAddError("Timer: Not created!")
EndIf
EndProcedure
"Menschenskinder, das Niveau dieses Forums singt schon wieder!" — GronkhLP ||| "ich hogffe ihr könnt den fehle endecken" — Marvin133 ||| "Ideoten gibts ..." — computerfreak ||| "Jup, danke. Gruss" — funkheld
Re: Timer + autom. Aufwecken des PCs, wenn im Ruhezustand ?
Nein! Habe die Zeit auf sechs Minuten eingestellt da der Rechner vier Minuten braucht, um den Inhalt des Arbeitsspeichers auf die Festplatte zu schreiben. Dann habe ich noch etwa zwei Minuten gewartet und den Rechner wieder von Hand gestartet.c4s hat geschrieben:Hast du den Rechner aus dem Ruhezustand selber wieder gestartet? Nach 1,26 Min.?
Werde jetzt mal den neuen Code testen.
Re: Timer + autom. Aufwecken des PCs, wenn im Ruhezustand ?
So, habe nochmal die neue Procedur getestet. Sie funktioniert genauso wie die erste Variante. Also kein Aufwecken aus dem Hibernate-Modus.
Habe dann noch diverse Bios-Einstellungen getestet - erfolglos.
Es besteht aber noch die Möglichkeit, den Rechner zu einer bestimmten Tageszeit aus dem Aus-Zustand einzuschalten. Dazu wird die entsprechende Funktion im Bios aktiviert und die gewünschte Urzeit eingestellt. Sehr praktisch wäre es, wenn sich dieses über Windows erledigen ließe?!
Nun habe ich den obigen Code aber auch noch auf meinem mindestens zehn Jahre alten Desktop-PC getestet. Hier funktioniert der Code nach Version 1 und 2 unter WinXP sowie WinME tadellos.
Hier die erstellten Logfiles:
Habe dann noch diverse Bios-Einstellungen getestet - erfolglos.
Es besteht aber noch die Möglichkeit, den Rechner zu einer bestimmten Tageszeit aus dem Aus-Zustand einzuschalten. Dazu wird die entsprechende Funktion im Bios aktiviert und die gewünschte Urzeit eingestellt. Sehr praktisch wäre es, wenn sich dieses über Windows erledigen ließe?!
Nun habe ich den obigen Code aber auch noch auf meinem mindestens zehn Jahre alten Desktop-PC getestet. Hier funktioniert der Code nach Version 1 und 2 unter WinXP sowie WinME tadellos.
Hier die erstellten Logfiles:
v1 Hibernate hat geschrieben:17:37:11 Program: Started
17:37:13 Standby: Activate hibernating via button
17:37:13 Timer: Created
17:37:13 Timer: Started
17:37:13 Standby: Starting
17:37:13 Timer: Created
17:37:13 Timer: Started
17:39:47 Timer: Finished successfully
17:39:59 Standby: Finished
17:39:59 Info: Finished by user input
17:40:09 Program: Closed
v1 Sleep hat geschrieben:17:40:30 Program: Started
17:40:31 Standby: Activate sleeping via button
17:40:31 Standby: Starting
17:40:31 Timer: Created
17:40:31 Timer: Started
17:40:31 Timer: Created
17:40:31 Timer: Started
17:42:32 Timer: Finished successfully
17:42:45 Info: Finished by user input
17:42:45 Standby: Finished
17:42:56 Program: Closed
v2 Hibernate hat geschrieben:17:46:22 Program: Started
17:46:41 Standby: Activate hibernating via button
17:46:41 Standby: Starting
17:46:41 Timer: Created
17:46:41 Timer: Started
17:46:41 Timer: Created
17:46:41 Timer: Started
17:49:14 Timer: Finished successfully
17:49:26 Info: Finished by user input
17:49:26 Standby: Finished
17:49:37 Program: Closed
v2 Sleep hat geschrieben:17:43:30 Program: Started
17:43:33 Standby: Activate sleeping via button
17:43:33 Standby: Starting
17:43:33 Timer: Created
17:43:33 Timer: Started
17:43:33 Timer: Created
17:43:33 Timer: Started
17:45:34 Timer: Finished successfully
17:45:47 Info: Finished by user input
17:45:47 Standby: Finished
17:45:53 Program: Closed
Re: Timer + autom. Aufwecken des PCs, wenn im Ruhezustand ?
Hallo Rudi,
Das sieht alles sehr gut aus. Vielen Dank für dein ausführliches Testen!
Ich vermute einfach mal, dass du in der "Energieverwaltung" oder Ähnlichem das deaktiviert hast. Vielleicht unterstützt aber auch dein Mainboard dieses Feature nicht (wobei dann eigentlich eine entsprechende Meldung im Log stehe sollte).
Auf jeden Fall ist es schön von dir nochmal die Bestätigung zu hören, dass man SleepEx_() sorgenlos durch WaitForSingleObject_() ersetzen kann. Das bedeutet nämlich, dass man den Timer ganz einfach auch deaktivieren kann.
Das sieht alles sehr gut aus. Vielen Dank für dein ausführliches Testen!
Ich vermute einfach mal, dass du in der "Energieverwaltung" oder Ähnlichem das deaktiviert hast. Vielleicht unterstützt aber auch dein Mainboard dieses Feature nicht (wobei dann eigentlich eine entsprechende Meldung im Log stehe sollte).
Auf jeden Fall ist es schön von dir nochmal die Bestätigung zu hören, dass man SleepEx_() sorgenlos durch WaitForSingleObject_() ersetzen kann. Das bedeutet nämlich, dass man den Timer ganz einfach auch deaktivieren kann.

"Menschenskinder, das Niveau dieses Forums singt schon wieder!" — GronkhLP ||| "ich hogffe ihr könnt den fehle endecken" — Marvin133 ||| "Ideoten gibts ..." — computerfreak ||| "Jup, danke. Gruss" — funkheld
-
- Beiträge: 390
- Registriert: 30.08.2004 09:05
- Computerausstattung: Desktop
Windows 10 Pro x64
CPU: AMD Ryzen 5 2600 3.40 GHz
Ram: 16GB RAM
Grafik: NVIDA Geforce 1060
PB: 5.72 X86/X64 - Wohnort: Heidelberg
Re: Timer + autom. Aufwecken des PCs, wenn im Ruhezustand ?
Nur das es der Standby Modus ist und nicht der Ruhezustand.10:35:16 Program: Started
10:35:19 Standby: Activate sleeping via button
10:35:19 Timer: Created
10:35:19 Timer: Started
10:35:19 Standby: Starting
10:35:19 Timer: Created
10:35:19 Timer: Started
10:36:22 Timer: Finished successfully
10:36:25 Standby: Finished
10:36:45 Info: Finished by user input
10:36:57 Standby: Activate sleeping via button
10:36:57 Timer: Created
10:36:57 Timer: Started
10:36:57 Standby: Starting
10:36:57 Timer: Created
10:36:57 Timer: Started
10:37:59 Timer: Finished successfully
10:38:06 Standby: Finished
10:39:37 Info: Finished by user input
10:39:47 Program: Closed
Windows 10 x64 Pro - PB 5.61 X64 / x32 - PB 4.6 x32