Commandline programma uitvoeren

Met deze actie kunt u een commandline programma (EXE of COM) uitvoeren en daarbij optioneel een of meerdere parameters (commandline switches) meegeven. Een commandline programma is een programma zonder grafische userinterface (geen vensters e.d.). Dit type programma wordt meestal in een script of command prompt (cmd.exe) uitgevoerd, bijvoorbeeld:


Beschrijving parameters

Omschrijving (optioneel)

Uitleg voor deze parameter vind u hier.

Programma bestand (commandline EXE) (verplicht)

Dit is het bestandspad naar het commandline programma (extensie EXE of COM).

Standaard map (optioneel)

Voor de uitvoering van het programma zal de standaardmap in Windows naar deze opgegeven map worden gewijzigd. In Windows is altijd één map de standaardmap. Programma's kunnen mogelijk hiervan uitgaan, hoewel dit in de praktijk heel weinig zal gebeuren. Dit hangt van het programma af. Vaak kunt u deze parameter daarom leeg laten.

Parameters (optioneel)

Een commandline programma verwacht meestal altijd één of meerdere parameters als invoer. Raadpleeg voor de juiste parameters de documentatie van het commandline programma. De notatie van de parameters is ook afhankelijk van het commandline programma. Daar zijn geen vaste richtlijnen voor.


Meestal (maar dus niet altijd) is de notatie als volgt:


/parameter1=waarde1 /parameter2=waarde2  ...etc...


Dus elke parameter begint meestal met een forward slash, daarna de naam van de parameter, daarna een "=" teken en tenslotte de parameterwaarde. Het komt echter ook voor dat parameters worden verwacht te beginnen met een "-" of "--" i.p.v. een forward slash. Raadpleeg dus de documentatie van het commandline programma.


In de actie kunt u de parameters achter elkaar opgeven of, zoals in het voorbeeld, elke parameter op een aparte regel. Bijvoorbeeld:



Plaats numerieke resultaatcode in dit geheugenveld (optioneel)

Een commandline programma heeft altijd een resultaat in de vorm van een geheel getal. Dit wordt een Resultaatcode (Exit Code) genoemd. Het hangt van het commandline programma af welke getallen hier te verwachten zijn. Sommige commandline programma's geven bijvoorbeeld met dit getal aan of iets goed is gegaan (meestal dan het getal 0) of er iets fout is gegaan (het getal vertegenwoordigt dan de foutcode). Het kan ook zijn dat het commandline programma een aantal teruggeeft; b.v. het aantal geïmporteerde facturen.


Ook hier zijn geen standaard richtlijnen voor. Over het algemeen is het wel gebruikelijk dat een resultaat 0 aangeeft dat iets goed is gegaan. Raadpleeg de documentatie van het commandline programma om na te gaan welke getallen als resultaatwaarde verwacht kunnen worden.


Indien u de resultaatcode in de taak wilt gebruiken, dan kunt u deze in een geheugenveld laten zetten. U kunt hier een geheugenveld kiezen van het type Tekst of Numeriek.

Genereer foutmelding indien resultaatcode niet gelijk is aan 0

Alhoewel hiervoor geen vaste richtlijnen bestaan, is het voor een commandline programma vaak wel gebruikelijk om via de resultaatcode aan te geven of het programma wel of niet succesvol is uitgevoerd. Een 0 (nul) geeft dan meestal aan dat het goed is gegaan en een ander getal dat er iets niet goed is gegaan. De resultaatcode is dan vaak een bepaalde foutcode.


Indien u deze optie aanzet en het commandline programma geeft een resultaatcode als resultaat terug welke niet gelijk is aan 0, dan zal de actie op dat moment een fout genereren, met vermelding van deze resultaatcode. Afhankelijk van wat u bij de parameter Actie bij fout hebt ingesteld, kan het dan zijn dat ook de taak zal stoppen.

Bestand welke output van programma bevat (optioneel)

Een commandline programma kan standaard alleen een numeriek getal als resultaat terug geven in de vorm van een resultaatcode (zie eerdere beschrijving). Sommige commandline programma's maken echter ook nog een tekstbestand aan met daarin bepaalde log-gegevens (b.v. de foutmelding tekst indien iets niet goed is gegaan). Of een commandline programma dit doet en, zo ja, in welk tekstbestand dat dan is, dient u na te kijken in de documentatie van het commandline programma.


Bij deze parameter kunt u het bestandspad van dit tekstbestand opgeven. Na de uitvoering van het commandline programma zal de inhoud van dit opgegeven tekstbestand worden ingelezen en in het, bij de andere parameter Plaats inhoud van uitvoer bestand in dit geheugenveld, opgegeven geheugenveld worden geplaatst.

Plaats inhoud van uitvoer bestand in dit geheugenveld (optioneel)

Hier geeft u het geheugenveld op (type Tekst) waarin de inhoud van het output tekstbestand moet worden geplaatst, zoals hierboven beschreven bij de parameter Bestand welke output van programma bevat (na uitvoering).

Actie bij fout

Uitleg voor deze parameter vind u hier.