21 April 2010 Deployment, HowTo Robert Muehsig

imageIn dem letzten HowTo ging es um Windows Services und sc.exe, diesmal wende ich mich den Scheduled Tasks zu.  "schtasks" ist ein nettes Tool mit dem man lokal und remote Scheduled Tasks anlegen, löschen, abfragen und bearbeiten kann.

schtasks

Hier mal der Syntax aus der MSDN für das Erstellen eines Tasks:

schtasks /Create 
[/S system [/U username [/P [password]]]]
[/RU username [/RP [password]] /SC schedule [/MO modifier] [/D day]
[/M months] [/I idletime] /TN taskname /TR taskrun [/ST starttime]
[/RI interval] [ {/ET endtime | /DU duration} [/K] 
[/XML xmlfile] [/V1]] [/SD startdate] [/ED enddate] [/IT] [/Z] [/F]

Anwendungsfall

Wir benutzen eine Batch-Datei für das "installieren" einer neuen Version. Mit einem Klick werden IIS 6 Websites, Windows Services und nun auch Scheduled Tasks entsprechend angepasst. Für uns am interessantesten war der "TR" Parameter mit dem man den genauen Pfad des Programm angibt und der "change" Befehl.

Wenn wir eine neue Version gebaut haben und auf den Server kopiert haben haben wir z.B. folgende Ordnerstruktur:

C:\Projektname\1.0.0.0\WindowsService1\windowsservice1.exe
C:\Projektname\1.0.0.0\Website1\...aspx...
C:\Projektname\1.0.0.0\ScheduledTasks1\scheduledtask1.exe

Wenn jetzt Version 1.0.0.1 dazukommt legen wir diesen in den "Projektname" Ordner. Im Version 1.0.0.1 Ordner liegt dazu noch das Batchfile zum "scharf" schalten der Version - keine große Magie, aber praktisch und falls doch was schief geht ist die alte Version auch noch vorhanden :)


Written by Robert Muehsig

Software Developer - from Saxony, Germany - working on primedocs.io. Microsoft MVP & Web Geek.
Other Projects: KnowYourStack.com | ExpensiveMeeting | EinKofferVollerReisen.de