Minecraft beenden und PC herunterfahren

Die Aufgabe heute: Eine Instanz eines Minecraft Servers ordentlich beenden, und anschliessend den PC herunterfahren.

Man kann natürlich den Server einfach herunterfahren, wodurch dann auch die laufende Instanz des Minecraft Servers geschlossen wird. Nachteil dabei: die Minecraft Welt kann u. U. beschädigt werden, evtl. nicht mehr oder nur noch mit Fehlern starten.

Um das zu vermeiden, wurde folgende mehrstufige Lösung verwendet:

Mit AutoIT wurde eine .exe Datei erstellt, die folgende Aufgaben durchführt:
- den hinterlegten Titel des Fensters der laufenden Minecraft Instanz verwenden, um dieses Fenster auf aktive zu setzen, falls nicht bereits aktiv
- den Befehl [stop] an dieses Fenster senden
- dadurch wird die Minecraft Instanz ordentlich beendet

In AutoIT sieht der Code wie folgt aus:

$wintitle = ("run-paper120")
WinActivate($wintitle)
Send("{s}")
Send("{t}")
Send("{o}")
Send("{p}")
Send("{ENTER}")

Der Autoit-Code wird als stop-minecraft.exe compiliert, und auf dem Zielrechner hinterlegt.

Jetzt wird im selben Ordner eine Batch-Datei mit folgendem Inhalt erstellt:

START /WAIT stop-minecraft.exe
timeout /T 10 /nobreak >nul
shutdown.exe -s -t 270 -f

Abschliessend muss man nur noch im Taskplaner eine Aufgabe erstellen, die diese Batchdatei täglich ausführt.