Windows Taakplanner gebruiken, taken plannen en aanpassen

Daniel Dupré
0

Inhoudsopgave

Met een cynische inslag zou je kunnen stellen dat je computer met Taakplanner klusjes uitvoert die er zonder hem helemaal niet zouden zijn. Dat klopt maar ten dele: als je Windows Taakplanner goed doorhebt, kan hij je leven makkelijker maken. Lees daarom deze tips voor het werken met Windows Taakplanner.

Windows voert continu allerlei onderhouds­klusjes op de achtergrond uit. Het systeem werkt zichzelf bijvoorbeeld voortdurend bij en verhindert dat de verzameling aan verwijderde gegevens op de schijf en in het geheugen uit de klauwen loopt. Wanneer en hoe vaak dat nodig is, hangt af van de desbetreffende taak: het defragmenteren van een harde schijf kan rustig wachten tot je pc even een tijdje niets te doen heeft, maar veiligheids­updates kunnen het beste zo snel mogelijk gedownload en geïnstalleerd worden. De universele tool die in Windows al die taken beheert en de klusjes op de gewenste momenten uitvoert, is Windows Taakplanner.

Taakplanner doet niet alleen allerlei klusjes voor het besturings­systeem. Talloze geïnstalleerde toepassingen laten ook hun onderhoud door Taakplanner uitvoeren, in het algemeen voor het plannen van updates of het synchroniseren van bestanden. Als gebruiker kun je Taakplanner ook opdrachten automatisch voor je laten uitvoeren.

De opdrachten configureer je in een apart venster dat je het eenvoudigste geval opent door de Windows-toets in te drukken en de eerste paar letters van Taakplanner in het Windows zoekscherm in te typen. Of je kunt Taakplanner bijvoorbeeld starten door Windows+R in te drukken en dan taskschd.msc in te typen. De lay-out van het venster lijkt een beetje op Windows Verkenner. Links zie je een boomstructuur met mappen, waarin nog submappen of taken kunnen zitten. Er zijn verder echter geen overeenkomsten met het bestandssysteem. In een nieuwe Windows-installatie staan de meeste taken in submappen van ‘Task Scheduler-­bibliotheek\Microsoft\Windows’. Geïnstalleerde toepassingen van derden slaan hun taken meestal direct in ‘Task Scheduler-bibliotheek’ op. Als er in een map opdrachten staan, verschijnen ze in de bovenste helft in het midden van het venster. Dat is alleen een preview – de details van een taak kom je hier niet te weten en je kunt ze hier ook niet wijzigen.

Windows Taakplanner overzicht taak aanpassen

Bij een nieuwe Windows-installatie staan er in Taakplanner al talloze taken door het systeem ingepland.

Basishandelingen

De details zie je en kun je wijzigen in het Eigenschappen-venster. Dat open je door op een taak dubbel te klikken. We raden je niet aan in het wilde weg bestaande taken aan te passen. Om de functies van Taakplanner uit te proberen, kun je het beste in de Task Scheduler-­bibliotheek een eigen map aan te maken, die selecteren, er met de rechtermuisknop op te klikken en de opdracht ‘Nieuwe map’ te selecteren.

Een nieuwe taak maak je via twee mogelijke opdrachten die in het contextmenu van een map staan: met ‘Basis­taak maken’ start je een wizard die je begeleidt door de belangrijkste stappen om een taak te definiëren. Veel details kun je daarmee echter niet instellen. Alle opties krijg je alleen te zien met de opdracht ‘Taak maken’. Daarmee open je hetzelfde venster dat opent als je op een bestaande taak dubbelklikt, maar zonder enige ingevulde informatie. Als alternatief kun je ook eerst een nieuwe taak met de wizard maken en die dan via het eigenschappenvenster configureren.

Voordat je iets zinvols kunt uitvoeren, moet je eerst twee centrale begrippen kennen: een taak bevat altijd ten minste één ‘actie’ . Die bepaalt wat de taak moet doen. Een of meerdere ‘triggers’ definiëren wanneer dat moet gebeuren. Daar later meer over.

Het configureren van de details van een taak doe je via de tabbladen van het eigenschappenvenster. Op het eerste met de naam Algemeen moet je de nieuwe taak een naam geven. Bij een bestaande taak kun je de naam achteraf niet meer aanpassen. Als de taak met een ander gebruikersaccount dan je eigen moet worden uitgevoerd, kun je dat instellen bij de Beveiligingsopties. Daar kun je bijvoorbeeld als account ‘SYSTEM’ kiezen. Dat is handig om back-ups mee in te stellen, omdat dit account gebruikersoverkoepelend toegang krijgt tot alle bestanden.

De optie ‘Uitvoeren ongeacht of gebruiker wel of niet is aangemeld’ zorgt er voor dat de taak ook wordt uitgevoerd wanneer de gekozen gebruiker niet aangemeld is. De taak wordt echter ook uitgevoerd wanneer de gebruiker juist wel is aangemeld. Hij wordt dan niet interactief op het bureaublad uitgevoerd, maar onzichtbaar op de achtergrond. Dat betekent wel dat mogelijke foutmeldingen van het uitgevoerde programma niet worden getoond. Ook als het programma de vraag ‘Weet u het zeker?’ stelt, krijg je die niet te zien. De gebruiker krijgt niet de gelegenheid om de vraag te bevestigen en de actie voert zijn taak mogelijk niet naar wens uit. Zonder actieve aanmelding is bovendien het gebruikersaccountbeheer (UAC) niet actief. Accounts die werken met administratorrechten hebben binnen die context altijd volledige rechten.

Doorlezen is gratis, maar eerst even dit:

Dit artikel is met grote zorg samengesteld door de redactie van c’t magazine – het meest toonaangevende computertijdschrift van Nederland en België. Met zeer uitgebreide tests en praktische workshops biedt c’t de diepgang die je nergens online vindt.

Bekijk de abonnementen   Lees eerst verder

Triggers voor taken

Je hoeft voor een taak niet per se een trigger te definiëren. Als je door de taken neust die het systeem heeft ingesteld, kom je er genoeg tegen zonder trigger. Dat kan handig zijn om bijvoorbeeld meerdere acties met alle veiligheids- en uitvoeropties als taak op te slaan, maar die dan niet in te plannen maar via een script uit te voeren. Je start de taak handmatig met de opdracht Uitvoeren. Die staat zowel in het contextmenu als in het Acties-menu dat in het Taakplannervenster rechts in beeld staat.

Als je triggers definieert, zul je waarschijnlijk een trigger voor het uitvoeren volgens een tijdsplanning het meeste gebruiken. Daarmee kun je taken regelmatig laten uitvoeren, bijvoorbeeld ’s nachts om 3 uur. Maar je kunt taken ook volgens complexere planningen laten uitvoeren, zoals elke tweede en vierde donderdag van de maand. Ook als je een taak maar eenmalig wilt laten uitvoeren, zit je met de optie Gepland goed. Een taak die regelmatig is ingepland kun je met de optie ‘Verloopt op’ en het invullen van de bijbe­horende velden na een bepaalde tijd ook weer automatisch laten beëindigen.

Praktische en uitgebreide Windows-informatie handig bij elkaar: Windows 10 Totaalgids

De meeste andere typen triggers spreken voor zich. De optie ‘Tijdens maken of wijzigen van taak’ betekent niets anders dan nu meteen. Met de optie ‘Bij een gebeurtenis’ wordt bedoeld dat de trigger wordt gestart op het moment dat er een bepaalde invoer in het systeemlogboek wordt geschreven, oftewel het logboek dat je met de logboeken-app kunt bekijken. Systeembeheerders kunnen daarmee berichten ontvangen, bijvoorbeeld wanneer Windows Defender een bedreiging op een pc heeft gevonden (logboek: ­Microsoft-Windows-Windows Defender/Operational, Gebeurtenis-ID’s 1006, 1015, 1116).

Bij de geavanceerde instellingen kun je het uitvoeren van een taak na het afgaan van een trigger nog voor een bepaalde duur vertragen. Dat kan bijvoorbeeld zinvol zijn als je taken die bij het aanmelden worden gestart, één voor één wilt laten starten en niet allemaal tegelijk.

Taken die je meerdere malen per dag wilt laten lopen, stel je op de volgende manier in: stel allereerst een dagelijks tijdsschema op. Vink daarna het selectievakje voor ‘Taak herhalen elke’ aan en kies het gewenste interval. Bij ‘gedurende’ laat je ‘1 dag’ staan. Omdat je de taak op ‘Dagelijks’ hebt ingesteld, blijft Taakplanner de taak tenslotte elke dag opnieuw uitvoeren. Het is niet meteen evident, maar de velden voor het vertragen en voor het herhalen zijn niet beperkt tot de opgegeven waarden. Taakplanner snapt het ook als je daar iets invult als ’90 minuten’ of ‘4:30’ (vierenhalf uur).

De optie ‘Taak stoppen indien actief langer dan’ leek bij onze tests geen effect te hebben. Een andere manier die wel werkte, vonden we op het tabblad Instellingen van de Eigenschappen.

Acties in Taakplanner

Bij elke taak hoort minstens één actie. Bij Windows 10 staat in Taakplanner ‘Programma starten’ als enige beschikbare optie. Je moet dan het pad naar de applicatie invoeren, waarbij je optioneel nog opdrachtprompt-commando’s kunt meegeven, zodat Taakplanner pas op het moment dat de taak uitgevoerd moet worden gaat kijken wat de juiste map is.

De opties om een e-mail te verzenden of een bericht weer te geven vermeldt Taakplanner als ‘afgeschaft’. Je kunt ze nog selecteren, maar dat levert een foutmelding op. Dat is niet zo erg, want er zijn programma’s als Blat en send­Email om e-mails automatisch te verzenden. Daarmee kunnen beheerders zich bijvoorbeeld regelmatig een rapport laten toesturen over de status van de appa­raten die ze beheren. Een aparte tool kan een rapport dan samenstellen dat via e-mail wordt verzonden.

Windows Taakplanner actie bewerken programma plannen

Bij Windows 10 kun je alleen nog een programma of script via een actie starten. Als je een actie selecteert waar ‘afgeschaft’ achter staat, zal dat een foutmelding opleveren.

Om een melding op het scherm te tonen, voldoet al een minimaal VBScript dat je in MsgBox gebruikt (hier een voorbeeld). Je kunt het script bijvoorbeeld gebruiken om je elke donderdag om 17:30 uur een bericht te laten sturen dat je je werk moet afsluiten omdat het tijd wordt dat je naar je training gaat.

Als je bij een opdracht meerdere acties instelt, voert de taakplanner een actie pas uit wanneer een vorige actie voltooid is. Dat is handig, bijvoorbeeld als je een bericht wilt laten sturen wanneer een opruimactie is voltooid.

Opties bij Taakplanner

Via het tabblad Voorwaarden in het eigenschappenvenster kun je nog instellen dat een opdracht alleen wordt uitgevoerd wanneer het systeem aan bepaalde voorwaarden voldoet. De optie dat een taak alleen wordt uitgevoerd zolang het systeem op netstroom werkt, staat standaard ingeschakeld. Voor minder belangrijke onderhoudstaken is het bovendien aan te raden dat je de taak alleen laat starten zolang de computer idle draait.

Taakplanner vindt dat een systeem idle is als er vier minuten lang geen toets- of muisactiviteit heeft plaatsgevonden (dat is 15 minuten bij Windows 7) en als gedurende die tijd de cpu’s en gegevensdragers ten minste 80 procent van de tijd niets te doen hadden (oftewel 90 procent bij Windows 7). Naar wens kan Taakplanner ook op een tijd lang idle wachten, maar een taak ook afkappen wanneer hij tijdens het afwerken ervan merkt dat er weer gebruikersactiviteit plaatsvindt.

De opties op het tabblad Instellingen van het ­Eigenschappenvenster zijn helaas maar gedeeltelijk bruikbaar. Wat je met de optie ‘Als de taak mislukt, opnieuw opstarten elke’ kunt doen, konden we niet ontdekken – ook niet met het nodige speurwerk op internet en door zelf wat te experimenteren. Een 0 als resultaatwaarde van een script of een programma wordt in ieder geval niet als fout herkend. Ook het wel of niet aanvinken van de optie ‘De actieve taak geforceerd stoppen…’ leek geen enkel effect te hebben bij onze pogingen.

Fouten zoeken

Als je op speurtocht gaat naar fouten in een taak die door jezelf of het systeem gedefinieerd is, dan kun je in het Acties-menu rechts in het venster de optie ‘De geschiedenis van alle taken uitschakelen’ gebruiken om een logboek bij te houden. De lijst van items op het tabblad Geschiedenis zal dan na verloop van tijd steeds langer gaan worden. De items beschrijven uitvoerig wanneer een taak wordt gestart en beëindigd. Maar let op: het logboek groeit wel behoorlijk snel. Het loggen kun je daarom het beste alleen specifiek voor het opsporen van fouten inschakelen en dan niet vergeten om het op den duur ook weer uit te schakelen.

Windows Taakplanner taak eigenschappen gebeurtenis geschiedenis

Voor het zoeken naar fouten kun je een logboek inschakelen dat je uitgebreid kunt raadplegen voor wanneer en met welke gebeurtenis een taak uitgevoerd is.

De logbestanden worden opgeslagen in een logboek dat je met de Logboeken-app kunt openen, er in kunt zoeken en filters kunt instellen. Daarvoor ga je in Logboeken-app naar ‘Logboeken Toepassingen en Services/Microsoft/Windows/TaskScheduler/­Operational’.

Als het logboek ingeschakeld is, wordt bij Taakplanner in ‘Taakstatus’ ook de lijst steeds langer. Die zit in het middelste deel van het venster als je links in het venster helemaal terug omhoog gaat naar de root van de mappenhiërarchie. Helaas is er geen eenvoudige manier om van een item op die lijst naar de definitie van de desbetreffende taak te gaan – de systeemeigen taken staan tenslotte over talloze verschillende mappen verdeeld. In plaats van alle mappen handmatig open te klappen en naar de taak op zoek te gaan, kun je bij het logboekitem in de Logboeken-app naar de naam van de taak zoeken. Dan kom je er relatief snel achter bij welke taak een logboek­item hoort.

Beperkingen

Helaas helpt je dat niet altijd verder als je bijvoorbeeld bij een controle naar malware wilt weten welk programma een bepaalde taak start. Tussen de taken die Windows van huis uit uitvoert, zijn er talloze waarbij Taakplanner alleen ‘Aangepaste handler’ als actie noemt. Windows kent bij geplande taken ook acties die je niet in Taakplanner kunt bewerken. Dat zijn taken zoals de zogenaamde COM-handlers (Component Object Model). Die starten een programma of dll, die via het register in het systeem geïntegreerd is. Hoe je zoiets van een apart programma uit realiseert, staat vermeld in de ontwikkelaarsdocumentatie van Task Scheduler.

Taakplanner vermeldt bij sommige voorgedefinieerde taken ook zogenaamde ‘Custom Triggers’. Blijkbaar kent Windows dus ook triggers waar Taakplanner niet mee kan omgaan.

Bij Windows 10 zit overigens een irritante bug in Taakplanner, die het achteraf bewerken van eerder gemaakte taken lastig maakt. Een poging om een taak te bewerken loopt dan spaak met de summiere melding ‘Er is een fout voor taak xyz opgetreden. Eén of meer van de opgegeven argumenten zijn ongeldig’. Die foutmelding verschijnt ook al als je in Taakplanner net een nieuwe taak hebt aangemaakt, die opent om te bewerken en zonder enige wijziging bevestigt met OK. De oplossing van het raadsel: als je bij de veiligheidsinstellingen uitsluitend je eigen gebruikersaccount invoert, corrumpeert Taakplanner de gebruikersnaam omdat het de computernaam overslaat. Je moet dus telkens voordat je iets bevestigt, de gebruikersnaam (‘Alice’) inclusief pc-naam invoeren (‘Kantoor­PC\Alice’).

Alternatieven voor Taakplanner

Taakplanner is niet de enige manier om geplande taken in Windows te beheren. Je kunt bijvoorbeeld via Opdrachtprompt het programma schtasks openen. Dat heeft het oudere Microsoftprogramma at vervangen. Een overzicht met de beschikbare argumenten en commando’s krijg je door schtasks /? in te voeren.

Als je in plaats van Opdrachtprompt liever Power­Shell gebruikt, dan kun je daar de commando’s uit de module ScheduledTasks gebruiken. Een overzicht van de beschikbare commando’s krijg je door gcm ­-Module ScheduledTasks in te voeren. De bijbehorende documentatie van de verschillende commando’s krijg je zoals gebruikelijk met help <commando> -Detailed.

Om toegang te krijgen tot alle geplande taken, moet je je zowel bij Opdrachtprompt als bij Power­Shell aanmelden met administratorrechten. Als je als normale gebruiker de tools start, zullen talloze standaardtaken van Windows verborgen blijven.

Zowel schtasks als PowerShell-commando’s kun je bijvoorbeeld gebruiken om een taak te starten die in een batchbestand of PowerShell-script gepland staat. Bij een batchbestand ziet dat er als volgt uit:

schtasks /run /tn “MijnTasks\Backup”

In PowerShell gaat dat met de opdracht

Start-ScheduledTask -TaskPath \MijnTasks\ -TaskName Backup

Het commando /Query van schtasks is de betere keuze als je een lijst met alle gedefinieerde taken naar een tekstbestand wilt kopiëren. Dat kan handig zijn om met een editor te doorzoeken of de opdrachten van twee verschillende computers met elkaar te vergelijken.

Een andere populaire tool waarmee je een overzicht van ingestelde geplande taken kunt krijgen, is de tool Autoruns van Sysinternals. Op het tabblad ‘Scheduled tasks’ toont het een lijst van alle in het systeem aanwezige geplande taken. Door de selectievakjes voor de taken wel of niet aan te vinken, activeer of deactiveer je een taak. Veel meer dan dat kun je met de geplande taken daar niet doen. Desondanks is Auto­runs een handige tool om taken te bekijken door de menuopdracht ‘Options / Hide Windows Entries’. Daarmee worden alle opdrachten verborgen die bij de systeeminstallatie zelf horen. Dat maakt het makkelijker om te zien welke taken van derden afkomstig zijn.

Om volledig te zijn, moeten we nog wel vermelden dat het ook mogelijk is om taken met WMI (­Windows Mana­gement Instrumentation) te benaderen. De relevante klassen staan in de namespace Root\­Microsoft\Windows\TaskScheduler. We hebben echter geen ma­nier gevonden om daar taken mee uit te voeren of te stoppen.

Meer praktische tips en uitgebreide achtergrondinfo lees je in c't 05/2024

Meer over

Software

Deel dit artikel

Daniel Dupré
Daniel DupréDaniel koestert een liefde voor het in elkaar zetten van zinnen en van computers, en heeft in c't een prachtige mogelijkheid gevonden om beide te combineren.

Lees ook

Raspberry Pi als NAS-systeem gebruiken? Dit moet je weten!

Wist je dat je een Raspberry Pi als Network Attached Storage (NAS) kunt gebruiken? Zo voldoet de Raspberry Pi 4 aan de belangrijkste eisen om dit te k...

Readly aanbieding: twee maanden gratis tijdschriften en kranten lezen

Sta jij voor het tijdschriftenschap eindeloos te twijfelen tussen wel tien verschillende magazines? Dan is Readly iets voor jou, want dan hoef je niet...

0 Praat mee
avatar
  Abonneer  
Laat het mij weten wanneer er