Einzelnen Beitrag anzeigen

Real_Nikotin

Registriert seit: 18. Jan 2006
9 Beiträge
 
#1

Windows 8 Schnelles Herunterfahren verhindert WMEndSession Messages?

  Alt 15. Mai 2013, 09:19
Hallo Werte Delphianer!
Ich habe mich nun doch durchgerungen mir Win 8 nun genauer anzuschauen. Mein derzeitiges Projekt beinhaltet eine Datenbank die beim Start und Ende meines Programmes jeweils auf einen FTP Server synchronisiert wird. Das funktioniert auch soweit wunderbar solange ich händig das Programm beende.
Komme ich allerdings auf die Idee Windows 8 herunterzufahren oder mich abzumelden terminiert mir Windows radikal meine Anwendung - die Synchronierung schlägt fehl und Datenverlust ist zu erwarten.
Bei früheren Anwendungen habe ich das Problem gelöst in dem ich per WMEndSessionQuery Windows signalisiert habe das meine Anwendung noch nicht bereit ist und dann die Synchronisierung abgeschlossen.
Ich kenne die API und die darin reglementierten Timeouts. Bisher reicht die Zeit aber aus.
Nun das eigentliche Problem liegt wohl bei Windows 8 - es reagiert nicht auf die Messages die ich etwa bei WMEndSessionQuery sende und terminiert mir mein Programm radikal. Auch ein warten auf Herunterfahren UI-Bildschirm erscheint nicht.
Kennt jemand eine Lösung?

Meine Vermutung liegt darin das bei Win 8 Standardmäßig wohl das "Schnelle Herunterfahren / Schnelle Starten" aktiviert ist.

Systeminfos:
Windows 8 Professional
Delphi XE3 mit NexusDB
Programm ist komplett in Firemonkey geschrieben (nur der UI wegen - WinAPI wird also verwendet)

Geändert von Real_Nikotin (15. Mai 2013 um 09:22 Uhr)
  Mit Zitat antworten Zitat