Wird heruntergefahren

Es gibt drei Möglichkeiten für eine Anwendung, lokale Computer oder Remote Computer herunterzufahren:

  • Herunterfahren des Systems
  • Herunterfahren des Systems und Neustarten des Systems
  • Herunterfahren der Anwendung, Herunterfahren und Neustarten des Systems und Neustarten aller Anwendungen, die für den Neustart registriert wurden

Um das System herunterzufahren, verwenden Sie die ExitWindowsEx -Funktion mit dem EWX- _ Flag zum Herunterfahren. Ein Beispiel finden Sie unter Vorgehens Weise beim Herunterfahren des Systems. Um das System herunterzufahren und neu zu starten, verwenden Sie das EWX- _ Startflag. Um alle Anwendungen neu zu starten, die mithilfe der RegisterApplicationRestart -Funktion für den Neustart registriert wurden, verwenden Sie das EXW _ restartapps-Flag.

Die Funktionen InitiateShutdown, InitiateSystemShutdownund initiatesystemshutdownetx starten einen Timer und zeigen ein Dialogfeld an, in dem der Benutzer aufgefordert wird, sich abzumelden. Während dieses Dialogfeld angezeigt wird, kann die Funktion " abortsystemshutdown " den Timer beenden und das Herunterfahren des Computers verhindern. Wenn der Timer abgelaufen ist, wird der Computer jedoch heruntergefahren. Diese Funktionen können den Computer auch nach dem Herunterfahren neu starten. Weitere Informationen finden Sie unter Anzeigen des DialogFelds "Herunterfahren".

Benachrichtigungen zum Herunterfahren

Anwendungen mit einer Fenster-und Nachrichten Warteschlange empfangen Benachrichtigungen über die WM- _ Abfrage "queryendsession " und " WM _ EndSession ". Diese Anwendungen sollten true zurückgeben, um anzugeben, dass Sie beendet werden können. Anwendungen sollten das Herunterfahren des Systems nur blockieren, wenn dies unbedingt erforderlich ist. Anwendungen sollten alle erforderlichen Bereinigungs Vorgänge ausführen, während WM- _ EndSession verarbeitet wird. Anwendungen mit nicht gespeicherten Daten könnten die Daten an einem temporären Speicherort speichern und beim nächsten Start der Anwendung wiederherstellen. Es wird empfohlen, dass Anwendungen Ihre Daten und ihren Status häufig speichern. Beispielsweise werden Daten Zwischenspeicher Vorgängen, die vom Benutzer initiiert wurden, automatisch gespeichert, um die beim Herunterfahren zu speichernde Datenmenge zu verringern.

Konsolen Anwendungen erhalten herunter Fahr Benachrichtigungen in ihren Handlerroutinen. Verwenden Sie zum Registrieren eines Konsolen Handlers die SetConsoleCtrlHandler -Funktion.

Dienst Anwendungen empfangen Benachrichtigungen zum Herunterfahren in ihren Handlerroutinen. Verwenden Sie die RegisterServiceCtrlHandlerEx -Funktion, um einen Dienst Steuerungs Handler zu registrieren.

Blockieren des herunter Fahrens

Wenn eine Anwendung ein mögliches Herunterfahren des Systems blockieren muss, kann Sie die shutdownblockreasoncreate -Funktion aufzurufen. Der Aufrufer stellt eine Grund Zeichenfolge bereit, die dem Benutzer angezeigt wird. Die Zeichenfolge sollte kurz und eindeutig sein und dem Benutzer die erforderlichen Informationen bereitstellen, um zu entscheiden, ob das System weiterhin heruntergefahren werden soll.

Herunterfahren des Systems