Hey Dudes,
Spoiler anzeigen
#include <_ntservices.au3>
#include <File.au3>
Global $ini = "X:\...\needs\server.ini"
Global $logfile = "X:\...\loggs\logfile.cfg"
$Dienst = IniRead($ini, "Server 0", "Dienstname TS3", "")
_servicestop($dienst)
$dienst_status = _ServiceStatus($Dienst)
While $dienst_status <> "Stopped"
Sleep(100)
WEnd
_FileWriteLog($logfile,"der TS3 Server wurde beendet...")
$i= 1
For $i = 1 To 5
$Server = "Server " & $i ; legt die entsprechende Sektion fest (gewollt von 1 bis einschliesslich 5
$Name = IniRead($ini, $Server, "Name des Buttons", "") ; dient der Übersicht im logfile
$Dienst = IniRead($ini, $Server, "Dienstname MAM", "") ; der Dienstname in der gewollten INI-Sektion
_servicestop($dienst)
$dienst_status = _ServiceStatus($Dienst)
While $dienst_status <> "Stopped"
Sleep(100)
WEnd
_FileWriteLog($logfile,"ManuAdminMod beendet vom Server: " & $Name)
Sleep(1000); reingebaut, damit es nicht zu schnell ist
$i=$i+1
Next
_FileWriteLog($logfile,"Alle Dienste wurden gestoppt" & @LF)
Eigentlich funktioniert dieser Code, allerdings werden die Sektionen der INI ausgelassen, wo $i eine gerade Zahl wird (sprich 2 und 4).
Die Dienste der Sektionen "Server 1", "Server 3" und "Server 5" werden jeweils erfolgreich gestoppt.
Warum "Server 2" und "Server 4" nicht?
Bin wie immer ratlos und baue auf Eure Hilfe.
mfG Lottich