WM_QUERYENDSESSION? (Fragen)
In Delphi reagiert die TopLevelForm/MainForm auf WM_QUERYENDSESSION und die
VCL ruft dann OnCloseQuery auf.
WM_ENDSESSION = entgültig Beenden, ohne Fragen
Terminate / PostQuitMessage / ... = Beenden, ohne Fragen
Erstmal kommt es drauf an, was für eine USV das ist.
Wenn die genug Energie hat, um den Stromausfall "länger" komplett zu überbrücken, dann braucht sie garnichts zu machen, außer den Strom zu liefern.
Ansonsten haben ordentliche USVs eine Schnittstelle zum PC (Seriell, USB, LAN, PCI, ...) und steuern dort das Runterfahren an.
Entweder über Treiber oder einen ständig mitlaufenden Service.
Entweder es wird sofort runtergefahren und die USV kann nur wenige Minuten überbrücken (bei voller PC-Leistung) oder es wird noch etwas gewartet (Zeit oder bis Akkurestenergie).
Theoretisch könnte man sich auch in den Powerschalter (Taster) reinhängen, aber erstens ist das nicht "sicher" und ich hab es auch noch nie gesehn.
Und billige USVs haben keine Verbindung und irgendwann ist dann auch der Notstrom einfach so alle *blubb*