AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TService: OnShutdown feuert nicht

Ein Thema von bcvs · begonnen am 28. Okt 2020 · letzter Beitrag vom 30. Okt 2020
Antwort Antwort
bcvs

Registriert seit: 16. Jun 2011
677 Beiträge
 
Delphi 12 Athens
 
#1

TService: OnShutdown feuert nicht

  Alt 28. Okt 2020, 07:50
Hallo zusammen,

ich will in einem Dienst auf das Herunterfahren von Windows reagieren. Dazu verwende ich den Event OnShutdown. Der feuert auch bei "Neu starten" von Windows, allerdings nicht beim "Herunterfahren" und anschließendem manuellen Neustart.

Im zweiten Fall wird auch beim Neustart das OnStart nicht durchlaufen.

Was ist da los?
Oder gibt es eine andere Methode, auf das Herunterfahren des Computers zu reagieren und vorher noch eine kurze Aktion auszuführen?
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#2

AW: TService: OnShutdown feuert nicht

  Alt 28. Okt 2020, 09:28
Feuert das Event denn, wenn du beim Herunterfahren des Systems die Shift-Taste gedrückt hältst?

Wenn ja, wundert mich das nicht, dass da kein Shutdown-Signal gefeuert wird, da Windows seit Win8 standardmäßig nicht mehr heruntergefahren wird sondern nur die Nutzersitzung beendet und anschließend das System in den Ruhezustand versetzt wird. Dieses "Feature" wird von Microsoft als Schnellstart (Fast Boot) bezeichnet, und wenn man das nicht braucht/möchte, kann man es deaktivieren.

Grüße
Dalai
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.102 Beiträge
 
Delphi 12 Athens
 
#3

AW: TService: OnShutdown feuert nicht

  Alt 28. Okt 2020, 09:40
Das ist auch der Grund, warum man die Developer-Instanz des Interbase Servers in so einem Fall nach 24 Stunden trotzdem einmal neu starten muss, obwohl das System ja gerade "hochgefahren" wurde.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
677 Beiträge
 
Delphi 12 Athens
 
#4

AW: TService: OnShutdown feuert nicht

  Alt 28. Okt 2020, 10:20
Feuert das Event denn, wenn du beim Herunterfahren des Systems die Shift-Taste gedrückt hältst?
Ja, dann feuert es.

Das heißt aber, dass das OnShutdown für meine Zwecke ungeeignet ist.
Gibts es da noch andere Möglichkeiten, das Herunterfahren oder Beenden der Nutzersitzung zu erkennen?
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.102 Beiträge
 
Delphi 12 Athens
 
#5

AW: TService: OnShutdown feuert nicht

  Alt 28. Okt 2020, 10:32
Hast du mal OnPause und OnContinue versucht?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
677 Beiträge
 
Delphi 12 Athens
 
#6

AW: TService: OnShutdown feuert nicht

  Alt 28. Okt 2020, 13:26
Ja, das reagiert aber nur auf anhalten / fortsetzen in der Dienstverwaltung.
  Mit Zitat antworten Zitat
bcvs

Registriert seit: 16. Jun 2011
677 Beiträge
 
Delphi 12 Athens
 
#7

AW: TService: OnShutdown feuert nicht

  Alt 29. Okt 2020, 12:03
Ich habe es jetzt anders gelöst: Mein Tool läuft nicht mehr als Dienst, sondern als Programm mit Icon im Infobereich der Taskleiste.
Da reagiere ich auf WM_ENDSESSION.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz