Seite 2 von 2

Verfasst: 15.10.2008 18:38
von Fluid Byte
Mit diesem Code kannst du festellen wann der StandyBy Modus anfängt und wieder beendet wird.

Code: Alles auswählen

#PBT_APMRESUMESUSPEND = $0007	; Operation resuming after suspension. 
#PBT_APMSUSPEND = $0004			; System is suspending operation.

OpenWindow(0,0,0,320,240,"void",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)

Procedure WindowCallback(hWnd,uMsg,wParam,lParam)
	Select uMsg
		Case #WM_POWERBROADCAST
		Select wParam
			Case #PBT_APMSUSPEND
			Debug "ENTERING STANDBY MODE!"

			Case #PBT_APMRESUMESUSPEND
			Debug "SYSTEM RESUMED FROM STANDBY!"			
		EndSelect
	EndSelect
	
	ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure

SetWindowCallback(@WindowCallback())

While WaitWindowEvent() ! #PB_Event_CloseWindow : Wend

Verfasst: 15.10.2008 20:15
von Kaeru Gaman
ah... da ist die korrekte API-Lösung. :mrgreen:

... dachte ich mir doch, dass es da was geben muss, hatte aber keinen Bock, im Trüben zu fischen ...

Verfasst: 15.10.2008 20:23
von ts-soft
Naja, man kann nicht feststellen ob StandBy, nur ob der PC in einen niedrigeren
Batterielevel geschaltet wurde :mrgreen:
Dies könnte auch Ruhezustand bzw. Energiesparen (Vista) sein.

Verfasst: 15.10.2008 20:23
von AND51
Kaeru Gaman hat geschrieben:also, mit Ems funzt das auch, habs extra mal getestet
Hätte gedacht, dass dem nicht so ist, denn während der PC ja im StandBy-Modus ist, läuft er ja nicht.
ElapsedMilliseconds() liefert aber die Anzahl Millisekunden, die der PC schon läuft, dürfte doch (logisch betrachtet) nicht nach der Differenzmethode arbeiten, oder?

Differenzmethode = AktuellerZeitpöunkt — ZeitpunktDesStarts

Verfasst: 15.10.2008 20:38
von Kaeru Gaman
Ems liefert zwar die ms seit einschalten, wird aber trotzdem von der internen Uhr gesteuert.

... ich hab grad mal auf der MSDN gesucht, aber da steht man ja auf verlorenem Posten ...
37 Artikel über irgendwas, wo GetTickCount drin vorkommt,
aber nach der wirklichen Funktionsbeschreibung sucht man sich nen Wolf.

Verfasst: 18.10.2008 11:35
von Ractur
Bild@ALL [Ich habe es nun mit dem "Date-Trick" umgesetzt, funktioniert perfekt! ->THX AND]