| |
|
|
Thomas Freier | Ich suche ein Möglichkeit, um nach Standbyende ohne Windowabfrage: Abschalten oder Registro, den Rechner zu aktivieren. Für den Standby-Modus fand ich von Andreas den folgenden Skript: KompilierenMarkierenSeparieren#######################################################
Das Programm überwacht ob der Rechner schlafen
gehen will bzw. aufwacht !
#######################################################
ab XPROFAN
#######################################################
set(FastMode,1)
$H windows.ph
$H messages.ph
DEF SetSuspendState(3) ! Powrprof,SetSuspendState
Parameter :
1 = Hibernate(0) oder Suspend(1) { überwintern(0) oder aussetzen(1) } - BOOL
2 = ForceCritical (sofortiger Schlafemodus(1) oder erst Nachfragen(0) ) - BOOL
3 = DisableWakeEvent ( alle Wakeup-Meldungen abschalten(1) oder nicht(0) ) - BOOL
DEF &PBT_APMQUERYSUSPEND $0000
DEF &PBT_APMRESUMESUSPEND $0007
DEF &BROADCAST_QUERY_DENY $424D5144
Declare OldProc&,Ende&,Button&
Proc WindowProc
parameters Wnd&, Msg&, wParam&, lParam&
If Msg& = ~WM_POWERBROADCAST
If wParam& = &PBT_APMQUERYSUSPEND
an dieser Stelle will der Rechner schlafen gehen
MessageBox(Darf der Rechner schlafen gehen ?,Rechner meldet,36)
If %Button = 7
der Rechner darf nicht schlafen gehen
Return &BROADCAST_QUERY_DENY
else
an dieser Stelle sollte die CD ausgeworfen werden
Return 1
endif
Endif
If wParam& = &PBT_APMRESUMESUSPEND
an dieser Stelle wacht der Rechner wieder auf
MessageBox(ich bin wieder wach,Rechner meldet,0)
Return 1
Endif
Endif
alle Messages die nicht behandelt wurden an die Original-Prozedur weiterleiten
return ~CallWindowProc(OldProc&,Wnd&, Msg&, WParam&, LParam&)
EndProc
Set(TrueColor,1)
cls ~GetSysColor(~COLOR_BTNFACE)
Window-Prozedur ersetzen, in OldProc wird die Adresse der Original-Prozedur gesichert
OldProc& = ~SetWindowLong(%hwnd,~GWL_WNDPROC, ProcAddr(windowProc,4))
Button& = Create(Button,%hwnd,Schlafen,10,10,80,24)
whilenot Ende&
Waitinput
If GetFocus(Button&)
SetSuspendState(0,1,1)Schlafmodus
endif
endw a>
end
Ist da unter Window irgendwo etwas einzustellen? |
|
|
| |
|
|