SystemShutdown vs. SetReboot

Vielleicht ist dem ein oder anderen schon der Neustart Dialog beim Installieren des EmpirumAgenten aufgefallen, der keine Möglichkeit hat den anstehenden Neustart zu verschieben?

Wenn nicht, so schaut der Dialog aus:

Damit sind wir auch schon mitten im Thema. Der SystemShutdown Befehl der Empirum Setup.inf gibt dem Benutzer einen Hinweis, dass ein Neustart ansteht, den der Benutzer je nach Parameter nicht umgehen kann. Darin unterscheidet sich der SystemShutdown gegenüber dem Reboot= bzw. SetReboot Befehl. Der SetReboot Befehl gibt die Neustart Anforderung an den Agenten weiter und ermöglicht somit dem Benutzer, dass dieser den Neustart, je nach Agenten Konfiguration, verschieben kann. Bei BIOS Updates oder Windows Feature Upgrades ist dies, nach der teilweise vorgenommenen Änderungen, nicht unbedingt gewünscht. An dieser Stelle kann der SystemShutdown eingesetzt werden, um dem Benutzer keine Wahl zu lassen, wann er den Computer neu starten möchte.

SystemShutdown <ShutdownText>, <Reboot>, <Force>, <Timeout in Seconds>, <Asynchron>
BefehlBemerkung
<ShutdownText>Text für den Neustart Dialog
<Reboot>0=Herunterfahren,
1=Herunterfahren+Neustarten
<Force>1=die Applikation(en) mit Zwang beenden,
0=nicht forciert die Applikation(en) schließen
<Timeout in Seconds>Wartezeit in Sekunden, bevor der Dialog geschlossen wird.
<Asynchron>0=synchon,
1=asynchron

Beispiel:

SystemShutdown In fünf Minuten erfolgt ein Neustart!/nBitte beenden Sie alle offenen Anwendungen, 1, 1, 300, 1
Befehl für das Auslösen eines „SystemShutdowns“ innerhalb der Setup.inf:
[Strings:07]
ShutdownTextDesc=Das BIOS Update erfordert einen Neustart des Computers.\nSpeichern Sie Ihre Daten und schließen Sie alle offenen Anwendungen.\n\nKlicken Sie 'OK' um den Computer neu zu starten.

[Strings:09]
ShutdownTextDesc=The BIOS update needs to restart your computer.\nSave your work and close all open applications.\n\nClick 'OK' to restart your computer.

[Set:FinishedBIOSUpdate]
If DoesProcessExist ("Explorer.exe") == "1" Then "UserIsLoggedOn" Else "NoUserIsLoggedOn" EndIf

[UserIsLoggedOn]
SystemShutdown %ShutdownTextDesc%, 1, 0, 600, 1

[NoUserIsLoggedOn]
SystemShutdown %ShutdownTextDesc%, 1, 0, 15, 1

Schreibe einen Kommentar


/* */