Nema potrebe da se pravi windows service, dovoljno je da se prate windows poruke koje stizu u glavnu formu.
Za logout, shutdown i restart:
Namesti svoj form da prima poruke tipa:
WM_QUERYENDSESSION
Na ovom linku ces videti kako da razlucis izmedju logoff i restart/shutdown.
Za lock/unlock workstation:
Ovo ne mozes da sprecis nikako, ali mozes da se nakacis i da dobijas notification kad se konzola zakljuca/otkljuca sa API metodom:
WTSRegisterSessionNotification
Iako je ovo "sink" za terminal services notifikacije, stizace ti
WM_WTSSESSION_CHANGE poruke tipa: WTS_SESSION_LOCK i WTS_SESSION_UNLOCK cak i unutar konzolne sesije.
Za standby:
Kao i za logout, primas poruke tipa:
WM_POWERBROADCAST. Da bi sprecio standby, treba ti pod-poruka tipa
PBT_APMQUERYSUSPEND, jednostavno vrati vrednost BROADCAST_QUERY_DENY i standby ce biti sprecen. WM_POWERBROADCAST mozes takodje da koristis da samo detektujes kad masina ide i vraca se iz standby-a.
▪ The quicker a phone is answered in sales, the slower it's answered in customer services - Brownridge's Law
▪ Democracy is a device that ensures we shall be governed no better than we deserve - George Bernard Shaw
▪ To err is human--and to blame it on a computer is even more so - Robert Orben