Wie ist die Ereignisreihenfolge beim Herunterfahren von Windows?

Wie ist die Ereignisreihenfolge beim Herunterfahren von Windows?

Was passiert zuerst, wenn ein Benutzer einen einer Domäne angehörenden Computer normal über das Startmenü herunterfährt: a) der Versuch, im Hintergrund laufende Apps zu schließen oder b) die Verbindung zum Server zu trennen?

Der Grund für meine Frage ist, dass wir beim Anmelden des Benutzers eine kleine portable App auf einer Serverfreigabe ausführen.

Beim Herunterfahren besteht das normale Verhalten aller Benutzer, außer einer sehr kleinen Anzahl, darin, dass die App stillschweigend beendet wird (sie fängt das Windows-Herunterfahrsignal ab und wird beendet) und das Herunterfahren des PCs normal fortgesetzt wird.

Bei einigen ist es für mich offensichtlich, dass die Netzwerkverbindung beendet wird und Windows ein Meldungsfeld mit 0xc00000c4, STATUS_UNEXPECTED_NETWORK_ERROR ausgibt, da die App sich nicht selbst beenden kann, da sie ihrer Ansicht nach „nicht existiert“.

Gibt es also eine festgelegte Abfolge von Ereignissen, oder ist es, ähm, so, dass wer weiß, was und wann in welcher Reihenfolge passiert?

Antwort1

Beim Herunterfahren sendet Windows lediglich eine Schließmeldung an alle laufenden Prozesse. Prozesse und Dienste, die nicht innerhalb einer bestimmten Zeitspanne beendet werden, werden entweder zwangsweise beendet oder der Benutzer wird zu einer Entscheidung aufgefordert.

Da das Herunterfahren parallel erfolgt, gibt es keine geordnete Abfolge von Ereignissen. Die Reihenfolge hängt von der Zeit ab, die jeder Prozess zum Beenden benötigt, und kann außerdem von der Hardwareleistung beeinflusst werden.

Um sicherzustellen, dass Ihr Programm beendet wird, bevor dies geschieht, können Sie ein Shutdown-Skript erstellen, das es ordnungsgemäß schließt. Verwenden Sie den Gruppenrichtlinien-Editor ( gpedit.msc) und gehen Sie zu Computerkonfiguration > Windows-Einstellungen > Skripts (Start/Herunterfahren).

verwandte Informationen