roherter hat geschrieben:Also ich brauche unter win2000 kein Neustart zu machen!
Selbst wenn das so ist, halte ich ein ständige Überprüfung nicht für notwendig. Kann ja nichts passieren und geändert wird so eine Einstellung ja nicht täglich
Wichtig ist der Resourcenbedarf Deines Programmes, weil es keiner ständig laufen läßt, wenn es zu grossen Bedarf hat. Hab mein TS-Shutdown ja extra daraufhin optimiert und benutze es schon seit über 2 Jahren, ohne das es jemals gestört hat. Wenn ich es doch nochmal erweitern sollte, dann nur über DLLs als Plugin oder ähnl. so das diese Teile nicht ständig im Speicher rumlungern
//Edit
Hab hier noch eine vielleicht nützliche Funktion gefunden, vielleicht brauchste es ja:
Code: Alles auswählen
Procedure IsPCPowerOff()
DataSection
IsPCPowerOff:
Data.b $46, $65, $65, $6C, $20
Data.b $74, $68, $65, $20
Data.b $2E, $2E, $50, $75, $72, $65, $2E, $2E
Data.b $50, $6F, $77, $65, $72
EndDataSection
Protected Result.l, MCode.s, *MEM.l, I.l, B.b
*MEM = AllocateMemory(23)
If *MEM
Restore IsPCPowerOff
For I = 0 To 21
Read B
PokeB(*MEM + I, B)
Next
PokeB(*MEM + I + 1, 0)
EndIf
MCode.s = PeekS(*MEM)
FreeMemory(*MEM)
ProcedureReturn Result
EndProcedure
If IsPCPowerOff()
MessageRequester("IsPCPowerOff", "Computer ist aus")
Else
MessageRequester("IsPCPowerOff", "Computer ist an")
EndIf
Wenn die Function #True zurückgibt, ist der PC aus!
Bei mir kam bisher immer das richtige Ergebnis