Windows-Tuning

Vista-Dienste aufräumen

Rechte-Probleme

Zum Starten eines Dienstes benötigt man keine besonderen Rechte, da ansonsten das Prozedere mit Diensten die auf den Starttyp „Manuell“ gesetzt sind, nicht funktionieren würde. Das Stoppen von Diensten ist dagegen nur mit erweiterten Rechten möglich. Nun könnte man also den gesamten Batch per „Als Administrator ausführen“ starten. Das ist aber unerwünscht, da dadurch auch das Programm mit erweiterten Rechten ausgeführt würde. Hier helfen die Script-Elevation-Power-Toys von Microsoft TechNet.

Diese bieten eine Art sudo für die Vista-Kommandozeile. Hier heißt der Befehl allerdings elevate. Also beispielsweise elevate net stop p2pimsvc. Dennoch kommt hier der bekannte Dialog, der zur Bestätigung der Aktion auffordert. Würden wir also jeden Dienst einzeln per elevate stoppen, hätte das einen Haufen solcher Dialoge zur Folge. Darum fassen wir die beiden Punkte „Benötigte Dienste starten/Ungewollte stoppen“ und „Ungewollte Dienste wieder stoppen/Benötigte wieder starten“ in jeweils eigenen Batch-Dateien zusammen:

elevate svcprep.cmd
REM Gewünschtes Programm starten
elevate svcclean.cmd

Dadurch kommt der Dialog nur zweimal auf. Das Verfahren hat noch einen weiteren Vorteil: svcprep.cmd und svcclean.cmd lassen sich mehrfach verwenden. Die Dateien bestehen lediglich aus einer Reihe von net start und net stop Anweisungen.