Windows Server Task Planer (Scheduler) und Skripte
Verfasst von JoergS am 22. Juni 2009
Hi,
durch einen Kundenauftrag musste ich heute einer Software das Automatische Update ermöglichen, obwohl kein Benutzer angemeldet ist. Das Ganze auf einem Windows Server 2008 mit Terminaldienste Rolle (TS RemoteApps, TS Gateway und TS Lizenzierung)
Dazu wurde von dem Admin ein CMD Skript erstellt mit dem folgendem Inhalt:
change user /install //Wechsel in den Terminalserver Installationsmodus
update //Aufruf der Update EXE Datei
change user /execute //Wechsel in den Terminalserver Ausführungsmodus
Die ausführbare Update Datei bezog ihre Einstellungen aus einer .ini Datei. In der war der UNC Pfad zur Freigabe (\\servername\freigabe) hinterlegt und ein “nostart”, damit die Anwendung nach dem Update nicht ausgeführt wird. Leider funktionierte der Aufrufs des Skript´s nur über den direkten Aufruf der CMD Datei, nicht über den Task Scheduler Aufruf. Der Benutzer (Domain\Administrator) hatte die entsprechenden Rechte und der Task wurde auch mit der Option “Unabhänig von Benutzeranmeldung ausführen” und “Mit höchsten Privilegien ausführen” gestartet. Der Task war soweit also absolut richtig konfiguriert.
Lösung: Anpassung des CMD Skript´s mit dem VOLLEM Pfad zur ausführbaren EXE Datei.
change user /install
c:\program files (x86)\software\update.exe
change user /execute
Grund dafür war, dass die CMD als Administrator gestartet wurde und diese natürlich unter dem Pfad “C:\windows\system32” startet und dort diese update.exe nicht vorhanden ist. Das Problem würde aber auch auftreten, wenn ein anderer Benutzer diesen Task starten würde nur dann würde der Pfad anders sein z.B. C:\users\username\documents. Allerdings muss dieser Benutzer dann auch lokaler Administrator und die Benutzerkontensterung richtig konfiguriert sein!
Na dann, Viel Spass beim selber Testen!
CU

izzy sagte
Hallo Jörg,
vielen Dank für diesen nützlichen Tip. MS erschreckt mich immer mehr, denn bei Windows Server 2003 waren relative Pfade in Batchdateien, die vom Scheduler ausgeführt wurden kein Problem.
Am Besten ich denke nicht darüber nach, was durch deren Köpfe spukt!
Desshalb nochmal, vielen Dank
Gruß, Izzy